Curso
Desde el lanzamiento de ChatGPT a finales de 2022 (el hito que inauguró la actual revolución de la IA), los modelos de IA generativa no han dejado de ganar potencia y diversidad. Cada día llegan al mercado nuevos modelos con distintos tamaños, funciones, modalidades y usos, lo que dificulta intuir hasta dónde pueden llegar.
En conjunto, se observa una clara tendencia a crear modelos cada vez más grandes y complejos. Se considera que aumentar el número de parámetros y la cantidad de datos de entrenamiento es la mejor estrategia para mejorar el rendimiento de los modelos de lenguaje grandes (LLM), la tecnología que hay detrás de los modelos generativos. Consulta nuestro artículo para conocer en detalle qué son los LLM.
Sin embargo, ante la creciente preocupación por los recursos necesarios para entrenar y ejecutar estos grandes modelos (así como su huella ambiental), la eficiencia en el desarrollo y la puesta en producción de IA está ganando mucha fuerza.
En este artículo te presentamos Stable Code 3B, el último modelo lanzado por Stability AI, diseñado específicamente para programar con precisión y rapidez. Este LLM, extremadamente preciso en tareas de programación, ofrece un rendimiento a la altura del estado del arte con un tamaño muy inferior.
¿Qué es Stable Code 3B?
Publicado en enero de 2024 por Stability AI, Stable Code 3B es un LLM de 3.000 millones de parámetros orientado a la programación. Es una versión avanzada de su predecesor, Stable Code Alpha 3B.
Stable Code 3B destaca en tareas de autocompletado de código y puede ser una gran herramienta educativa para quien empieza a programar. El modelo se publica de forma gratuita para fines de investigación o uso personal. Para aplicaciones comerciales, es necesario suscribirse a una de las membresías de Stability AI.
Stable Code 3B es de lo mejor dentro de los LLM de su mismo tamaño (verás más detalles de sus métricas en la siguiente sección), logrando grandes resultados con un tamaño significativamente menor. Gracias a su diseño compacto y eficiente, Stable Code 3B puede funcionar sin conexión en portátiles corrientes, incluso sin GPU dedicada, como un MacBook Air.
¿Cómo funciona Stable Code 3B?
Stable Code 3B es un modelo compacto con 2.700 millones de parámetros. Es un transformer solo decodificador, similar a LLaMA, el modelo open source de Meta. Consulta nuestro artículo para conocer todos los detalles de LLaMA.
El proceso de entrenamiento de Stable Code 3B se inspira claramente en CodeLLaMA de Meta. El modelo parte del LLM preentrenado de Stability AI, StableLM-3b-4e1t, que actúa como su modelo fundacional.
Este modelo siguió un proceso de ajuste fino en dos fases. Primero, se entrenó con múltiples conjuntos de datos de código y relacionados con código, incluyendo CommitPack, GitHub Issues, StarCoder y otros conjuntos de datos de matemáticas. Los datos de entrenamiento incluyen código de 18 lenguajes de programación muy usados, como Python, R, Java y C.
Después, se afinó con secuencias más largas de 16.384 tokens usando la técnica fill-in-the-middle, tal y como sugiere el artículo de investigación de CodeLLaMA. Esta segunda fase permite que el modelo admita ventanas de contexto largas de hasta 100.000 tokens. Es especialmente útil para tareas de programación: con entradas más extensas, los desarrolladores pueden aportar más contexto y fragmentos de código más largos de su base de código para generar salidas más relevantes y precisas.
Métricas de rendimiento de Stable Code 3B
El equipo de Stability AI ha creado un modelo que alcanza un rendimiento de vanguardia frente a modelos de tamaño similar en las métricas MultiPL-E, probadas en múltiples lenguajes de programación. La comparación se ilustra en la siguiente imagen:

Comparativa Multi-PL de modelos por debajo de 3B. Fuente: Stability AI
Stable Code 3B también destaca frente a modelos mucho más grandes. Por ejemplo, alcanza el mismo nivel de rendimiento que CodeLLaMA 7B, su principal inspiración, con una reducción del tamaño del modelo del 60%.

Comparación de Stable Code Completion 3B con CodeLLama 7B. Fuente: Stability AI
Aplicaciones de Stable Code 3B
Los asistentes de programación con IA como Stable Code 3B abren muchas posibilidades en desarrollo de software y análisis de datos. Aquí tienes algunas de las formas en que ya se está utilizando la IA:
Automatización de tareas
Stable Code 3B puede automatizar sin esfuerzo tareas repetitivas y tediosas, como ejecutar consultas SQL básicas, realizar análisis exploratorios de datos y agilizar proyectos de data science. Esto ayuda a evitar tareas que consumen mucho tiempo y a centrarte en trabajo más complejo y retador. Para ver cómo funciona en la práctica, echa un vistazo a nuestra guía para usar ChatGPT en data science.
Corrección de errores
Depurar código suele llevar bastante tiempo y puede ser complejo, sobre todo en proyectos con cientos de líneas. Stable Code 3B es el asistente perfecto para acelerar este proceso: escanea tu código en segundos y te sugiere cambios de código y de estructura para arreglarlo. Gracias a su amplia ventana de contexto, puedes proporcionarle scripts largos y Stable Code 3B detectará posibles errores y puntos débiles.
Optimización de código
En proyectos complejos que requieren muchos recursos computacionales, la eficiencia es clave. La forma en que escribes el código afecta de forma directa a esa eficiencia. Stable Code 3B puede reescribir tu código para hacerlo más eficiente y ahorrarte tiempo, recursos y dinero.
Interpretabilidad del código
A veces entender el código de otras personas puede ser difícil, especialmente si estás dando tus primeros pasos. Stable Code 3B no solo sugiere mejoras, también ofrece explicaciones detalladas sobre fragmentos concretos de código para ayudarte a aprender más rápido.
Si quieres aprender cómo aprovechar la IA generativa con fines formativos, te recomendamos probar DataCamp Workspace. Empleamos los modelos GPT 3.5 y GPT-4 para potenciar nuestro IDE de data science y ayudarte a entender sintaxis complejas. Consulta nuestra guía para empezar con DataCamp Workspace.
Cómo descargar el modelo Stable Code 3B
La mejor forma de empezar con Stable Code 3B es a través de la API de HuggingFace. Puedes importar el modelo fácilmente a tu entorno de Python y empezar a generar texto con el siguiente código:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("stabilityai/stable-code-3b", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
"stabilityai/stable-code-3b",
trust_remote_code=True,
torch_dtype="auto",
)
model.cuda()
inputs = tokenizer("import torch\nimport torch.nn as nn", return_tensors="pt").to(model.device)
tokens = model.generate(
**inputs,
max_new_tokens=48,
temperature=0.2,
do_sample=True,
)
print(tokenizer.decode(tokens[0], skip_special_tokens=True))
Cómo usar Stable Code 3B en aplicaciones comerciales
Como ya hemos comentado, Stable Code 3B se publica de forma gratuita para investigación o uso personal. Para aplicaciones comerciales, es necesario suscribirse a una de las membresías de Stability AI.
Actualmente, Stability AI ofrece dos tipos de membresía además de la no comercial, como se muestra en la imagen:

La membresía Professional cuesta 20 $ al mes y da acceso y derecho de uso comercial a los modelos Core de Stability AI, que incluyen modelos de generación de imagen, vídeo, 3D, texto y código. La membresía Enterprise está pensada para grandes empresas, con precios a medida y un conjunto de funciones avanzadas.
Sigue aprendiendo
Vivimos un momento apasionante para quienes trabajamos con datos. El sector está a las puertas de una gran disrupción tras la adopción masiva de herramientas de IA generativa como Stable Code 3B.
La mejor forma de navegar esta revolución de la IA es mantenerte al día. En DataCamp te lo ponemos fácil. Descubre nuestros artículos sobre otras potentes herramientas de IA generativa:
Soy analista de datos autónomo y colaboro con empresas y organizaciones de todo el mundo en proyectos de ciencia de datos. También soy instructor de ciencia de datos con más de 2 años de experiencia. Escribo regularmente artículos relacionados con la ciencia de datos en inglés y español, algunos de los cuales se han publicado en sitios web consolidados como DataCamp, Towards Data Science y Analytics Vidhya Como científico de datos con formación en ciencias políticas y derecho, mi objetivo es trabajar en la interacción de las políticas públicas, el derecho y la tecnología, aprovechando el poder de las ideas para promover soluciones y narrativas innovadoras que puedan ayudarnos a abordar retos urgentes, como la crisis climática. Me considero autodidacta, aprendiz constante y firme partidaria de la multidisciplinariedad. Nunca es demasiado tarde para aprender cosas nuevas.



