Grand modèle de langage (LLM) capable d'utiliser des invites textuelles pour générer des lignes de code, Code Llama est une version de Llama 2 spécifique de Meta pour les développeurs. Pour rappel la version de base de Llama 2 a été lancée en juillet dernier. Quelle est la particularité de Code Llama ? Avoir été conçu via un entraînement plus poussé des ensembles de données spécifiques au code, en échantillonnant davantage de données à partir d'un même ensemble de data pendant une période plus longue. Code Llama peut ainsi générer du code et du langage naturel à partir d'invites en code et en langage naturel, telles que « Écrivez-moi une fonction qui produit la séquence de Fibonacci ». L'outil peut également être utilisé pour la complétion de code et le débogage. Les langages pris en charge sont Python, C++, Java, PHP, TypeScript, JavaScript, C# et Bash.
Les développeurs peuvent demander l'accès à Code Llama sur la page web de Meta AI. Gratuit pour la recherche et un usage commercial, Code Llama est disponible en trois modèles de 7, 13, et 34 milliards de paramètres (7B, 13B et 34B). Chaque modèle est entraîné avec 500 milliards de tokens de code et de données liées au code. Les modèles de base ont été entraînés avec la capacité de fill-in-the-middle (FIM) qui donne la possibilité d'insérer du code dans du code existant, avec à la clé la prise en charge de tâches telles que la complétion de code prête à l'emploi.
Deux variantes orientées Python et langage naturel
Les trois modèles de Code LLama répondant à des exigences différentes en matière de service et de latence. Par exemple le 7B est servi sur un seul GPU tandis que le modèle 34B donne de meilleurs résultats et assistance au codage. Meta a peaufiné deux autres variantes de l'outil : Code Llama - Python, affiné sur 100 milliards de tokens de code Python, et Code Llama - Instruct pour mieux comprendre les instructions en langage naturel.