Аннотация
DeepSeek Coder представляет собой серию моделей для работы с кодом, обученных с нуля на 87% кода и 13% естественного языка (английский и китайский). Каждая модель предварительно обучена на 2 триллионах токенов. Мы предлагаем модели различных размеров — от 1 млрд до 33 млрд параметров. Каждая модель предварительно обучена на корпусе кода уровня репозитория с использованием окна в 16 тыс. токенов и дополнительной задачи заполнения пропусков, что позволяет создавать базовые модели (DeepSeek-Coder-Base). Дополнительно мы дообучили базовую модель на 2 млрд токенов инструкций, чтобы получить модели с настройкой на выполнение задач, названные DeepSeek-Coder-Instruct.
Основные особенности
- Обучение на 2 триллионах токенов с поддержкой более 80 языков программирования.
- Различные размеры моделей (1.3 млрд, 5.7 млрд, 6.7 млрд и 33 млрд параметров) для удовлетворения различных потребностей.
- Окно в 16 тыс. токенов, поддерживающее завершение и заполнение кода на уровне проекта.
- Передовые показатели среди открытых моделей для работы с кодом.
- Открытый исходный код, бесплатный для исследований и коммерческого использования.
Производительность
Мы оценили DeepSeek Coder на различных тестах, связанных с программированием. Результаты показывают, что DeepSeek-Coder-Base-33B значительно превосходит существующие открытые модели для работы с кодом. По сравнению с CodeLLama-34B, он лидирует на 7.9%, 9.3%, 10.8% и 5.9% соответственно на тестах HumanEval Python, HumanEval Multilingual, MBPP и DS-1000. Удивительно, но наша модель DeepSeek-Coder-Base-7B достигает производительности CodeLlama-34B. А модель DeepSeek-Coder-Instruct-33B после дообучения на инструкциях превосходит GPT-3.5-turbo на тесте HumanEval и показывает сопоставимые результаты с GPT-3.5-turbo на тесте MBPP.
Как использовать DeepSeek Coder
- Попробуйте прямо сейчас, посетив DeepSeek-Coder.
- Подробности и результаты тестирования доступны на нашем GitHub.
- Веса моделей также доступны на Huggingface.
Заключение
DeepSeek Coder — это мощный инструмент для разработчиков, который позволяет автоматизировать написание кода и повысить производительность. Благодаря передовым технологиям и открытости, он становится доступным решением для широкого круга задач в области программирования.