JetBrains открыла код Mellum — компактной языковой модели для завершения кода
В блоге JetBrains рассказали о релизе Mellum — компактной языковой модели для завершения кода. Нейросеть не может генерировать код с нуля, но отлично подходит для инструментов, которые помогают его дописывать. У модели всего 4 млрд параметров, поэтому её без проблем можно запустить локально или развернуть на личном сервере.
Mellum поддерживает завершение кода для языков программирования Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust и Ruby. У модели относительно небольшое контекстное окно в 8 тыс. токенов. В компании отмечают, что этого достаточно для дополнения кода.
На Hugging Face инженеры опубликовали базовую модель и дообученную на Python-коде. В компании предлагают использовать нейросети так:
Запускать в облаке с помощью vLLM, и использовать инференс модели в любых приложениях.
Запускать локально с помощью llama.cpp или Ollama, что полезно для проектов с конфиденциальной кодовой базой.
Интегрировать в редакторы кода и среды разработки.
При этом в компании понимают, что мало кто из разработчиков будет использовать Mellum в рабочих задачах. Для этих целей есть более сообразительные модели, которые доступны во всех современных IDE. Нейросеть будет больше полезна исследователям и преподавателям. Например, Mellum может стать практическим пособием по файн-тюнингу базовых языковых моделей.
Модель обучили приблизительно на 4,2 трлн токенов. В качестве датасета использовали данные:
The Stack;
The Stack v2;
StarCoder Training Dataset;
CommitPack;
Англоязычной «Википедии».
В качестве аппаратной платформы использовали кластер из 256 графических ускорителей Nvidia H200, соединённых с помощью коммутаторов InfiniBand. На обучение ушло 20 дней.
Mellum сравнили с более крупными языковыми моделями в бенчмарках
Читать на habr.com