Автор: Денис Аветисян
Исследователи представили SWE-Lego — систему, использующую передовые методы обучения с учителем для автоматического исправления ошибок в программном коде.

Предлагаемый фреймворк сочетает в себе гибридные данные, усовершенствованную настройку и масштабирование времени тестирования с использованием генеративного верификатора для достижения передовых результатов в задачах программной инженерии.
Несмотря на прогресс в области больших языковых моделей, решение задач по разработке программного обеспечения часто требует сложных и ресурсоемких методов обучения. В данной работе, представленной под названием ‘SWE-Lego: Pushing the Limits of Supervised Fine-tuning for Software Issue Resolving’, предложен новый подход, демонстрирующий, что оптимизация простого, основанного на контролируемом обучении (SFT), метода может достичь передовых результатов в решении проблем разработки. Ключевым нововведением является фреймворк SWE-Lego, использующий гибридные данные, улучшенную процедуру SFT и масштабирование во время тестирования с генеративным верификатором. Способен ли этот подход открыть путь к более эффективным и доступным агентам для разработки программного обеспечения?
Вызов масштабирования обучения SWE-агентов
Для обучения надежных агентов в области разработки программного обеспечения требуется значительный объем данных, однако приобретение достаточного количества реальных примеров является серьезным препятствием. Разработка таких агентов сталкивается с проблемой нехватки размеченных данных, отражающих разнообразие реальных задач и сценариев кодирования. Поиск и обработка достаточного количества высококачественных примеров кода, необходимых для эффективного обучения, требует значительных затрат времени и ресурсов. Это затрудняет создание агентов, способных к обобщению и адаптации к новым, ранее не встречавшимся задачам в процессе разработки программного обеспечения. Недостаток данных напрямую влияет на производительность и надежность агента, ограничивая его способность решать сложные инженерные задачи.
Существующие методы обучения агентов для разработки программного обеспечения сталкиваются с трудностями при обработке сложности аутентичного кода и необходимости охвата широкого спектра задач. Проблемой является не только синтаксическая и семантическая насыщенность реальных программных проектов, но и разнообразие стилей кодирования, используемых библиотек и подходов к решению задач. Ограниченное покрытие задач в обучающих данных приводит к тому, что агенты демонстрируют низкую обобщающую способность — они успешно справляются с задачами, похожими на те, что были использованы при обучении, но испытывают трудности при решении новых или незнакомых проблем. В результате, агенты часто не способны адаптироваться к различным контекстам и требованиям, что препятствует их эффективному применению в реальных проектах разработки.

SWE-Lego: Гибридный конвейер данных и обучения
Для решения проблемы нехватки данных, SWE-Lego использует гибридный подход к формированию обучающего набора, объединяя реальные примеры задач с масштабируемыми синтетическими данными. Итоговый набор данных состоит из 32 000 экземпляров задач, что позволяет увеличить разнообразие и объем обучающей выборки. Комбинация аутентичных и синтезированных данных направлена на повышение эффективности обучения и обобщающей способности модели, компенсируя ограничения, связанные с недостаточным количеством реальных данных.
Гибридный подход в SWE-Lego способствует повышению эффективности обучения и обобщающей способности модели за счет создания разнообразной обучающей среды. Комбинирование реальных данных с синтетически сгенерированными экземплярами задач позволяет значительно увеличить объем обучающей выборки, что особенно важно при ограниченном количестве реальных данных. Разнообразие данных, достигаемое за счет использования методов, таких как переформулировка AST и переписывание LLM, позволяет модели лучше адаптироваться к различным сценариям и повышает ее устойчивость к новым, ранее не встречавшимся задачам. Это, в свою очередь, приводит к улучшению обобщающей способности и повышению точности модели в реальных условиях эксплуатации.
Для генерации разнообразных синтетических задач SWE-Lego использует методы преобразования абстрактного синтаксического дерева (AST Reformulation) и перефразирования с помощью больших языковых моделей (LLM Rewrite). AST Reformulation позволяет изменять структуру кода, сохраняя его функциональность, что создает вариации исходных задач. LLM Rewrite, в свою очередь, генерирует семантически эквивалентные, но синтаксически отличающиеся формулировки, расширяя разнообразие обучающей выборки. Комбинация этих подходов позволяет эффективно преодолеть ограничения, связанные с недостаточным объемом и разнообразием реальных данных, и улучшить обобщающую способность модели.

Усовершенствованное обучение с подкреплением для надежной работы агента
В SWE-Lego используется усовершенствованный подход обучения с подкреплением (SFT), объединяющий маскирование ошибок на уровне шагов (Step-Level Error Masking) и обучение по учебному плану (Curriculum Learning) для существенного повышения эффективности обучения агентов. Маскирование ошибок на уровне шагов фокусирует процесс обучения на корректных ответах, игнорируя ошибочные, что способствует более быстрому схождению модели. Обучение по учебному плану предполагает постепенное увеличение сложности задач, начиная с простых и переходя к более сложным, что позволяет агенту эффективно осваивать необходимые навыки и обобщать полученный опыт. В SWE-Lego в качестве прокси-метрики для определения сложности используется длина траектории (Trajectory Length).
Метод обучения с маскированием ошибок на уровне шагов (Step-Level Error Masking) концентрирует процесс обучения на корректных ответах, игнорируя ошибочные действия агента на каждом этапе выполнения задачи. Параллельно применяется метод обучения с учебным планом (Curriculum Learning), который постепенно увеличивает сложность задач. В SWE-Lego сложность определяется как длина траектории (Trajectory Length) — чем длиннее требуемая последовательность шагов для решения задачи, тем выше её сложность. Такой подход позволяет агенту последовательно осваивать более сложные сценарии, начиная с простых, что способствует повышению общей эффективности обучения.
При использовании SWE-Lego с моделью Qwen3-8B и применением усовершенствованной SFT (Supervised Fine-Tuning) достигается показатель успешного разрешения задач (resolve rate) в 42.2% на бенчмарке SWE-bench Verified. Дальнейшее повышение эффективности наблюдается при добавлении масштабирования во время тестирования (Test-Time Scaling) с параметром rollout равным 16, что приводит к улучшению показателя до 49.6%. Данные результаты демонстрируют значительное повышение производительности агента благодаря комбинации усовершенствованной SFT и Test-Time Scaling.

Усиление вывода с помощью масштабирования во время тестирования
Система SWE-Lego использует технологию масштабирования во время инференса (Test-Time Scaling), что позволяет динамически выделять дополнительные вычислительные ресурсы для решения сложных задач. Этот подход заключается в увеличении объема вычислений, производимых моделью, непосредственно во время работы с новыми данными, а не только при обучении. За счет этого SWE-Lego способна более эффективно справляться с трудностями, возникающими при решении сложных задач, и демонстрирует повышенную производительность по сравнению с системами, использующими фиксированный объем вычислений. Использование Test-Time Scaling позволяет модели более тщательно анализировать входные данные и генерировать более точные и надежные результаты, что особенно важно в задачах, требующих высокой степени достоверности.
Для повышения надежности и точности решения сложных задач, SWE-Lego использует стратегии масштабирования как последовательного, так и параллельного. Последовательное масштабирование позволяет агенту последовательно исследовать различные варианты решения, углубляясь в каждый из них, в то время как параллельное масштабирование дает возможность одновременно рассматривать несколько путей, что значительно расширяет область поиска оптимального ответа. Такой подход не только способствует обнаружению более эффективных решений, но и позволяет агенту перепроверять логику своих рассуждений, подтверждая или опровергая отдельные этапы вывода. В результате, система способна более уверенно справляться с задачами, требующими сложного анализа и принятия решений.
В ходе экспериментов с моделью Qwen3-32B и использованием Supervised Fine-Tuning (SFT), система SWE-Lego продемонстрировала способность решать 52.6% задач из набора SWE-bench Verified. Однако, применение методики Test-Time Scaling, позволяющей динамически увеличивать вычислительные ресурсы в процессе решения, привело к значительному улучшению результатов. При увеличении количества попыток (rollout) до 16, процент успешно решенных задач вырос до 58.8%, что свидетельствует о высокой эффективности данной стратегии в повышении надежности и точности решения сложных задач, особенно в условиях ограниченных ресурсов или высокой сложности входных данных.

Подтверждение эффективности SWE-Lego и перспективы дальнейшего развития
Проведенная валидация SWE-Lego на платформе SWE-bench Verified продемонстрировала впечатляющий результат — новый рекордный показатель производительности в 58.8% при отсутствии уязвимостей, достигнутый благодаря использованию языковой модели Qwen3-32B и возможности масштабирования во время тестирования. Этот успех подтверждает эффективность предложенного подхода к обеспечению надежности и безопасности программного кода, а также потенциал для дальнейшего улучшения производительности и адаптации к различным задачам. Достигнутый уровень точности значительно превосходит существующие аналоги и открывает перспективы для создания более безопасных и стабильных программных систем.
Модульная архитектура разработанной системы SWE-Lego в сочетании с использованием мощной языковой модели Qwen3 обеспечивает значительный потенциал для дальнейшего масштабирования и адаптации к различным областям применения. Такой подход позволяет легко интегрировать новые компоненты и алгоритмы, а также настраивать систему для решения специфических задач, не ограничиваясь текущим набором функций. Возможность расширения и модификации отдельных модулей без необходимости переработки всей системы является ключевым преимуществом, обеспечивающим гибкость и долгосрочную актуальность разработки. Это открывает перспективы для применения SWE-Lego в широком спектре задач, требующих автоматизированной проверки программного кода и обеспечения его надежности.
Дальнейшие исследования направлены на существенное повышение возможностей верификатора, составляющей системы SWE-Lego. Ученые планируют внедрить более сложные методы аугментации данных, что позволит увеличить разнообразие обучающей выборки и, как следствие, улучшить устойчивость и точность верификации. Особое внимание будет уделено разработке техник, позволяющих генерировать реалистичные, но искусственно созданные примеры, способные выявить слабые места в системах и обеспечить надежную защиту от атак. Улучшение верификатора позволит не только повысить общую эффективность SWE-Lego, но и расширить область его применения на более сложные и разнообразные задачи, требующие высокой степени надежности и безопасности.

Представленная работа демонстрирует стремление к созданию систем, способных адаптироваться и функционировать в постоянно меняющейся среде разработки программного обеспечения. SWE-Lego, используя гибридные данные и масштабирование во время тестирования, стремится к достижению надежности и эффективности, что созвучно взглядам Карла Фридриха Гаусса: «Трудно понять, что действительно важно». Подобно тому, как Гаусс выделял фундаментальные принципы в математике, данное исследование фокусируется на ключевых аспектах обучения больших языковых моделей для решения практических задач, стремясь к созданию не просто работающих, но и устойчивых решений. Акцент на проверке траекторий и генеративном верификаторе подчеркивает стремление к обеспечению качества и надежности, что является важным фактором в долгосрочной перспективе.
Что дальше?
Представленная работа, стремясь к «бесшовной» автоматизации исправления программных ошибок, неизбежно обнажает более глубокие вопросы. Достижение «state-of-the-art» производительности — это лишь временная отсрочка неизбежной энтропии. Каждая оптимизация, каждое упрощение в процессе обучения — это накопление технического долга, отсроченная плата за кажущуюся эффективность. Модель, обученная на гибридных данных, лишь отражает фрагментарность и непоследовательность самой реальности разработки программного обеспечения.
Будущие исследования, вероятно, столкнутся с необходимостью разработки систем, способных не просто «решать» проблемы, но и «запоминать» их контекст, эволюцию, причины возникновения. Валидация траекторий — это шаг в верном направлении, но она не устраняет фундаментальную неопределённость, присущую творческому процессу разработки. Генеративный верификатор — инструмент полезный, но он лишь отражает предубеждения, заложенные в процессе его обучения.
Настоящий прогресс, возможно, потребует переосмысления самой парадигмы обучения. Не стоит ли сосредоточиться на создании систем, способных к «забыванию», к отказу от неэффективных стратегий, а не только к накоплению знаний? Ведь все системы стареют — вопрос лишь в том, делают ли они это достойно, оставляя после себя не только функциональный код, но и понимание причин его возникновения и эволюции.
Оригинал статьи: https://arxiv.org/pdf/2601.01426.pdf
Связаться с автором: https://www.linkedin.com/in/avetisyan/
Смотрите также:
- Насколько важна полнота при оценке поиска?
- Вопросы по PDF: Новый вызов для искусственного интеллекта
- Эмоциональный отпечаток: Как мы научили ИИ читать душу (и почему рейтинги вам врут)
- От принципа Ферма к нейронным сетям: новый взгляд на вариационную физику
- Искусственный интеллект на службе науки: новый инструмент для анализа данных
- Оптический Искусственный Интеллект: Новый Взгляд на Энергоэффективность
- Переключение намагниченности в квантовых антиферромагнетиках: новые горизонты для терагерцовой спинтроники
- Машинное обучение и тайны модулярности
- Диффузия против Квантов: Новый Взгляд на Факторизацию
- Квантовое превосходство в простых вычислениях: Разделение QAC0 и AC0
2026-01-06 12:52