Code Llama — это доработанный компанией Meta вариант Llama 2 для генерации и отладки кода.
По сравнению с Llama 2, Code Llama обладает расширенными возможностями программирования и может, например, генерировать соответствующий код в ответ на запрос на естественном языке, такой как "Напишите мне функцию, которая выводит последовательность Фибоначчи". Подобно Github Copilot, он также может завершать и отлаживать код.
Code Llama поддерживает такие популярные языки программирования, как Python, C++, Java, PHP, Typescript, C#, Bash и другие.
Meta выпускает Code Llama в трех размерах с 7, 13 и 34 миллиардами параметров. Модель настроена на прием крупного контекстного окна в 100 000 токенов, что делает ее особенно интересной для одновременной обработки больших объемов кода.
Считается, что вариант с 34 миллиардами параметров обеспечивает наивысшее качество кода, что делает его пригодным для использования в качестве помощника по коду. Модели меньшего размера оптимизированы для завершения кода в реальном времени. Они имеют меньшую задержку и по умолчанию обучены заполнению середины кода (FIM).
Кроме того, Meta выпускает вариант Code Llama, оптимизированный под Python и обученный на дополнительных 100 млрд. токенов кода Python, а также вариант Instruct, оптимизированный под задачи кода и примеры их решения.
В бенчмарках HumanEval и Mostly Basic Python Programming (MBPP) Code Llama 34B достигает результатов на уровне GPT-3.5, но значительно уступает GPT-4 в Human Eval. При этом модель превосходит Llama 2, которая не оптимизирована под код, и другие протестированные модели с открытым исходным кодом.
Code Llama выпускается под той же лицензией Llama, что и Llama 2 на Github. Приложение и генерируемый им контент могут использоваться в научных и коммерческих целях.
