Синтез данных для редких языков: как улучшить код-генерацию на Julia в 14 раз
Исследователи разработали метод Selective Left-Shift для улучшения код-генерации на редких языках программирования. Применив его к модели Qwen3-8B, они повысили точность на Julia на 14.2 пункта. Метод состоит из трёх этапов: синтез верифицируемых данных через компилятор, fine-tuning на синтетических примерах и обучение с подкреплением на языко-агностичных тестах. Результат достигнут при использовании только трети данных и шестой части стоимости предыдущих подходов.
AI-обработка оригинала arXiv cs.LG; редакция Hamidun News
Исследователи разработали метод Selective Left-Shift, позволяющий малым языковым моделям генерировать качественный код на редких языках программирования вроде Julia и Ballerina. Протестировав подход на модели Qwen3-8B, они повысили точность на Julia на 14.2 пункта, используя всего треть обучающих данных и шестую часть вычислительных ресурсов предыдущих подходов.
Почему редкие языки сложны для моделей
Современные LLM хорошо генерируют код на Python и Java — этих языков на миллионы примеров в интернете. Для редких языков (Julia, Ballerina, Nim) производительность падает резко. Попытка улучшить ситуацию с помощью маленьких моделей встречает тройную преграду.
- Недостаток данных для обучения на специфичный синтаксис редкого языка
- Высокие затраты на масштабирование вычислений во время генерации кода
- Низкая эффективность обучения с подкреплением с нуля
Как работает Selective Left-Shift
Вместо увеличения вычислений в момент генерации исследователи «сдвинули» их влево — в подготовку обучающих данных. Трёхфазный пайплайн работает так:
Фаза 1: Синтез с верификацией. Модель генерирует код на редком языке, компилятор и тесты проверяют, работает ли решение. Итеративная обратная связь улучшает примеры.
Фаза 2: Fine-tuning на синтетических данных. Qwen3-8B обучается на верифицируемых примерах, встраивая синтаксис редкого языка в свои представления.
Фаза 3: RL с верифицируемыми наградами. Награда основана на языко-независимых тестах ввод-вывод. Fine-tuning ограничивает поиск только синтаксически корректными вариантами, делая обучение стабильнее.
На сколько улучшилась точность
На бенчмарке MultiPL-E для Julia улучшение составило +7.6 пункта pass@1, на LiveCodeBench — +14.2 пункта. Главное достижение — экономия ресурсов.
- Использовано в 3 раза меньше обучающих данных чем раньше
- Вычислительные затраты сократились в 6 раз
- Метод обобщается на Ballerina, язык которого не было в обучении — 49.7% pass@1
Что это значит для разработчиков
Исследование показывает эффективный способ работы с редкими языками: лучше вложить ресурсы в качественный синтез и верификацию обучающих данных, чем в масштабирование модели или вычислений. Это полезно для внутренних и молодых языков программирования, где мало публичного кода в интернете.
Хотите не читать про ИИ, а внедрить его?
«AI News» — это полезные новости из мира ИИ. Системно научиться работать с нейросетями и применять их в работе — в Hamidun Academy.
Главное из мира ИИ — раз в неделю
7 ключевых событий недели, отобранных вручную. Без шума, репостов и пресс-релизов.
Готово! Проверьте почту — мы отправили подтверждение.