Meta

Presentamos Code Llama, una herramienta de inteligencia artificial para programación

Hoy lanzamos Code Llama, un gran modelo de lenguaje (LLM por sus siglas en inglés) que puede utilizar mensajes de texto para generar y analizar código. Code Llama está a la vanguardia de los LLM disponibles públicamente sobre tareas de codificación. Tiene el potencial de agilizar y hacer más eficientes los flujos de trabajo para los desarrolladores y de reducir la barrera de entrada para las personas que están aprendiendo a programar. Code Llama puede utilizarse como herramienta educativa y de productividad para ayudar a los programadores a escribir software más sólido y bien documentado. 

Creemos que un enfoque abierto es lo mejor para desarrollar nuevas herramientas de IA que sean innovadoras, seguras y responsables, por lo que estamos lanzando Code Llama tanto para investigación como para uso comercial bajo la misma licencia comunitaria que Llama 2

Code Llama es una versión especializada en código de Llama 2 que fue creada entrenando más a Llama 2 en sus conjuntos de datos específicos de código, muestreando más datos de ese mismo conjunto de datos durante más tiempo. Básicamente, Code Llama cuenta con capacidades de codificación mejoradas. Puede generar código y lenguaje natural sobre el código, tanto a partir del código como de peticiones en lenguaje natural (por ejemplo, “Escríbeme una función que genere la secuencia de Fibonacci”). También puede utilizarse para completar y depurar código. Es compatible con muchos de los lenguajes de programación más utilizados en la actualidad, como Phyton, C++, Java, PHP, Typescript (Javascript), C# y Bash, entre otros. 

Estamos lanzando tres tamaños de Code Llama con 7B, 13B Y 34B parámetros respectivamente. Cada uno de estos modelos se ha entrenado con 500B de tokens de código y datos relacionados con el código. Los modelos base de instrucción de 7B y de 13B también han sido entrenados con la capacidad de relleno en el medio (FIM), lo que les permite insertar código en el código existente, lo que significa que pueden soportar tareas como la finalización de código desde el primer momento. 

Los tres modelos responden a distintos requisitos de servicio y latencia. El modelo 7B, por ejemplo, puede operar en una sola GPU. El modelo 34B ofrece los mejores resultados y permite una mejor asistencia a la codificación, pero los modelos más pequeños de 7B y 13B son más rápidos y adecuados para tareas que requieren baja latencia, como la finalización de código en tiempo real. 

También hemos perfeccionado otras dos variantes de Code Llama: Code Llama – Phyton y Code Llama – Instruct. 

Code Llama – Phyton es una variante de Code Llama especializada en lenguajes y perfeccionada con 100,000 tokens de código Python. Dado que Python es el lenguaje más utilizado para la generación de código y que Python y Pytorch desempeñan un papel importante en la comunidad de IA, creemos que un modelo especializado proporciona una utilidad adicional. 

Code Llama – Instruct es una variación de Code Llama ajustada y alineada con las instrucciones. El ajuste de instrucciones continúa el proceso de entrenamiento, pero con un objetivo diferente. El modelo recibe una instrucción en lenguaje natural y el resultado esperado. Esto le permite comprender mejor lo que la gente espera de sus instrucciones. Recomendamos el uso de las variantes Code Llama – Instruct siempre que se utilice Code Llama para la generación de código, ya que Code Llama – Instruct ha sido ajustado para generar respuestas útiles y seguras en lenguaje natural. 

Los programadores ya utilizan los LLM para ayudarles en diversas tareas. El objetivo es hacer más eficientes los flujos de trabajo de los programadores para que puedan centrarse en los aspectos más humanos de su trabajo, en lugar de en tareas repetitivas. Creemos que los modelos de IA, y los LLM para codificación en particular, son los que más se benefician de un enfoque abierto, tanto en términos de innovación como de seguridad. Los modelos específicos de código disponibles públicamente pueden facilitar el desarrollo de nuevas tecnologías que mejoren la vida de las personas. Al liberar modelos de código como Code Llama, toda la comunidad puede evaluar sus capacidades, identificar problemas y corregir vulnerabilidades. 

Code Llama está diseñado para ayudar a los ingenieros de software de todos los sectores: investigación, industrial, proyectos de código abierto, ONGs y empresas. Pero aún hay muchos más casos de uso a los que dar soporte. 

Esperamos que Code Llama inspire a otros a aprovechar Llama 2 para crear nuevas herramientas innovadoras para la investigación y productos comerciales. 

Conoce más sobre Code Llama en nuestro blog sobre IA o descarga el modelo Code Llama.