NVIDIA представила метод генерации синтетических данных Code Concepts для обучения ИИ программированию
Исследователи NVIDIA создали набор из 15 миллионов задач на Python, чтобы точечно улучшать навыки написания кода у больших языковых моделей, и выложили его в открытый доступ.

Суть
Компания NVIDIA опубликовала новый подход к созданию синтетических данных для обучения больших языковых моделей (LLM). Исследователи разработали метод генерации обучающих примеров, который опирается на строгую иерархию концепций программирования. В качестве доказательства работоспособности подхода они выпустили датасет Code Concepts, содержащий около 15 миллионов уникальных задач на языке Python. Эксперименты показали, что добавление этих данных на финальных этапах обучения модели существенно повышает ее способность писать и анализировать код.
Контекст
Исторически качество языковых моделей улучшалось за счет увеличения объема тренировочных данных, собранных из открытых источников в интернете. Однако у этого подхода есть предел. Стандартные массивы текстов содержат огромный объем информации, но им часто не хватает концептуальной точности, необходимой для развития специфических навыков.
Когда речь заходит о программировании или сложной логике, модели нужно не просто «видеть» много кода, а понимать базовые структуры: от простых строк и рекурсии до сложных алгоритмов на графах. Чтобы решить эту проблему, индустрия все чаще обращается к синтетическим данным — информации, сгенерированной другими, более мощными нейросетями по заданным правилам.
Детали
В основе подхода NVIDIA лежит специально созданная таксономия знаний о программировании. Она классифицирует тысячи концепций, выстраивая их от фундаментальных конструкций до продвинутых паттернов проектирования.
Процесс создания датасета Code Concepts выглядел следующим образом:
- Исследователи выделили 91 ключевую концепцию, наиболее релевантную для популярного теста оценки навыков программирования HumanEval.
- Комбинируя эти концепции (например, объединяя операции с множествами и вычислительную геометрию), они сформировали инструкции для генерации кода.



