banner
Дом / Блог / Представляем Code Llama, инструмент искусственного интеллекта для кодирования
Блог

Представляем Code Llama, инструмент искусственного интеллекта для кодирования

Sep 01, 2023Sep 01, 2023

Сегодня мы выпускаем Code Llama, большую языковую модель (LLM), которая может использовать текстовые подсказки для создания и обсуждения кода. Code Llama — это новейшая общедоступная программа LLM по задачам кодирования. Он потенциально может сделать рабочие процессы быстрее и эффективнее для разработчиков и снизить входной барьер для людей, которые учатся программировать. Code Llama может использоваться в качестве инструмента повышения производительности и обучения, помогая программистам писать более надежное и хорошо документированное программное обеспечение.

Мы считаем, что открытый подход к ИИ лучше всего подходит для разработки новых инновационных, безопасных и ответственных инструментов ИИ, поэтому мы выпускаем Code Llama как для исследовательского, так и для коммерческого использования под той же лицензией сообщества, что и Llama 2.

Code Llama — это специализированная версия Llama 2, созданная путем дальнейшего обучения Llama 2 на наборах данных, специфичных для кода, с возможностью более продолжительной выборки большего количества данных из того же набора данных. По сути, Code Llama обладает расширенными возможностями кодирования. Он может генерировать код и естественный язык о коде как из кода, так и из подсказок на естественном языке (например, «Напишите мне функцию, которая выводит последовательность Фибоначчи»). Его также можно использовать для завершения кода и отладки. Он поддерживает многие из наиболее популярных языков программирования, используемых сегодня, включая Python, C++, Java, PHP, Typescript (Javascript), C#, Bash и другие.

Мы выпускаем Code Llama трех размеров с параметрами 7B, 13B и 34B соответственно. Каждая из этих моделей обучается с использованием 500 миллиардов токенов кода и данных, связанных с кодом. Базовые модели и модели инструкций 7B и 13B также были обучены с возможностью заполнения посередине (FIM), что позволяет им вставлять код в существующий код, а это означает, что они могут поддерживать такие задачи, как завершение кода, прямо из коробки.

Эти три модели удовлетворяют различным требованиям к обслуживанию и задержке. Например, модель 7B может обслуживаться на одном графическом процессоре. Модель 34B дает наилучшие результаты и обеспечивает лучшую помощь в кодировании, но меньшие модели 7B и 13B быстрее и больше подходят для задач, требующих низкой задержки, таких как завершение кода в реальном времени.

Мы также доработали два дополнительных варианта Code Llama: Code Llama – Python и Code Llama – Instruct.

Code Llama — Python — это специализированная языковая вариация Code Llama, доработанная на 100 млрд токенов кода Python. Поскольку Python является наиболее проверенным языком для генерации кода, а также поскольку Python и PyTorch играют важную роль в сообществе искусственного интеллекта, мы считаем, что специализированная модель обеспечивает дополнительную полезность.

Code Llama – Instruct — это доработанный и согласованный вариант инструкций Code Llama. Настройка инструкций продолжает процесс обучения, но с другой целью. В модель подаются входные инструкции на естественном языке и ожидаемый результат. Это помогает лучше понять, чего люди ожидают от своих подсказок. Мы рекомендуем использовать варианты Code Llama – Instruct всякий раз, когда вы используете Code Llama для генерации кода, поскольку Code Llama – Instruct точно настроен для генерации полезных и безопасных ответов на естественном языке.

Программисты уже используют LLM для решения различных задач. Цель состоит в том, чтобы сделать рабочие процессы разработчиков более эффективными, чтобы они могли сосредоточиться на наиболее человекоориентированных аспектах своей работы, а не на повторяющихся задачах. Мы считаем, что модели искусственного интеллекта и, в частности, программы LLM по программированию, больше всего выигрывают от открытого подхода, как с точки зрения инноваций, так и с точки зрения безопасности. Публично доступные модели с учетом конкретных норм могут способствовать разработке новых технологий, улучшающих жизнь людей. Выпуская такие модели кода, как Code Llama, все сообщество может оценить их возможности, выявить проблемы и устранить уязвимости.

Code Llama предназначен для поддержки разработчиков программного обеспечения во всех секторах, включая исследования, промышленность, проекты с открытым исходным кодом, неправительственные организации и бизнес. Но есть еще много вариантов использования, которые необходимо поддержать. Мы надеемся, что Code Llama вдохновит других использовать Llama 2 для создания новых инновационных инструментов для исследований и коммерческих продуктов.