CodeGemma: los modelos abiertos de Google para programar con IA

Google lanzó el 9 de abril de 2024 CodeGemma, una familia de modelos abiertos derivados de Gemma y entrenados específicamente para tareas de código: completar, generar, explicar y transformar programas. La familia incluye dos tamaños, 2B y 7B parámetros, y los pesos se publicaron en abierto en Hugging Face y Kaggle bajo la licencia Gemma, que permite uso comercial con algunas restricciones.

Cómo funciona

El modelo de 7B parte del Gemma base y se entrenó con más de 500.000 millones de tokens adicionales de código, sobre todo en Python, JavaScript, Java, Kotlin, C++, C# y Go. El de 2B, en cambio, está optimizado para code infilling: en vez de solo continuar el código que ya has escrito, rellena huecos usando el contexto que hay antes y después del cursor, algo útil en entornos donde la latencia importa, como el autocompletado dentro de un editor.

Qué cambia frente a un modelo generalista

Un modelo de propósito general como el Gemma base sirve para casi cualquier tarea de texto, pero rinde peor en programación que uno entrenado a propósito con cientos de miles de millones de tokens de código real. Google ha seguido esa misma lógica de especialización con el resto de la familia: Gemma 4 llegó después con licencia Apache 2.0, un paso más permisivo que la licencia original de Gemma bajo la que se publicó CodeGemma.

Para quién tiene sentido

Interesa sobre todo a equipos que quieren meter autocompletado de código en su propio editor sin depender de una API externa, o a empresas con políticas de privacidad que impiden enviar su código fuente a un servicio en la nube de terceros. Al ser modelos pequeños, también corren en una GPU de gama media, algo que no pasa con los modelos de código más grandes.

Limitaciones

CodeGemma no compite con los modelos de código cerrados de mayor tamaño en tareas complejas de varios archivos o refactorizaciones grandes. La brecha entre modelos abiertos y cerrados en programación sigue siendo un tema vivo: Kimi K3 lideró después el código frontend sin ser tampoco un modelo abierto, lo que muestra que la etiqueta «abierto» y la etiqueta «mejor en su categoría» no siempre coinciden en el mismo modelo.

Disponibilidad

Los pesos se descargan gratis desde Hugging Face y Kaggle, y también están disponibles a través de Vertex AI y de NVIDIA NIM para quien prefiera desplegarlos sin gestionar la infraestructura. Google ha adelantado que planea publicar variantes de mayor tamaño en el futuro.

Preguntas frecuentes

¿Qué tamaños de CodeGemma existen?

Dos: un modelo de 2.000 millones de parámetros optimizado para completar código con baja latencia, y otro de 7.000 millones entrenado con más de 500.000 millones de tokens de código.

¿Qué lenguajes de programación soporta?

Python, JavaScript, Java, Kotlin, C++, C#, Rust y Go, entre otros.

¿Es gratis usar CodeGemma?

Sí, los pesos se descargan sin coste desde Hugging Face y Kaggle bajo la licencia Gemma, que permite uso comercial con algunas restricciones.

¿Qué hardware necesito para ejecutarlo?

Al ser modelos de 2B y 7B parámetros, corren en una GPU de gama media, sin necesitar la infraestructura que exigen los modelos de código cerrados más grandes.

¿En qué se diferencia del Gemma base?

El Gemma base es un modelo generalista de texto. CodeGemma parte de esa base pero añade un entrenamiento adicional masivo centrado solo en código, lo que mejora su rendimiento en tareas de programación específicas.

Scroll al inicio