Трюк verify-on-edit: Qwen3.5 на уровне Claude Opus в SWE-bench | AiManual
AiManual Logo Ai / Manual.
04 Мар 2026 Гайд

Как простой трюк с верификацией поднял результат Qwen3.5 на SWE-bench до уровня Claude Opus

Глубокий разбор стратегии verify-on-edit, которая позволила Qwen3.5 догнать Claude Opus в решении реальных задач из SWE-bench. Пошаговый план, нюансы и подводны

Секрет не в размере, а в проверке

До марта 2026 года все знали одну простую истину: чтобы хорошо решать задачи из SWE-bench, нужна огромная модель. Типа Claude Opus, GPT-4o или как минимум Qwen3.5-32B. Меньшие модели, такие как Qwen3.5-14B, считались хорошими помощниками, но не топовыми исполнителями. Их результаты на бенчмарке решений реальных проблем из GitHub были скромнее.

Пока не выяснилось, что разница не в интеллекте, а в цикле мышления. Прямо как у человека – можно набросать код сходу, а можно проверить его и поправить. Второй способ всегда надежнее.

💡
SWE-bench – это не абстрактные задачки. Это реальные баги и фичи из open-source проектов вроде Django или scikit-learn. Агенту дают описание issue, код проекта и тесты. Его задача – сгенерировать патч, который пройдет все тесты. Это сложно даже для опытных разработчиков.

Что такое verify-on-edit и почему это не Rocket Science

Идея до смешного проста. Большинство кодинг-агентов работают по схеме "прочитал задачу – сгенерировал ответ". Стратегия verify-on-edit добавляет один шаг: "проверил сгенерированное – исправил ошибки".

Но не просто мысленно. Агент буквально выполняет код или запускает тесты в изолированной среде, анализирует ошибки и использует их как фидбек для следующей итерации. Это превращает одноходовую модель в итеративного агента, способного к самокоррекции.

Звучит очевидно? Абсолютно. Но до недавнего времени все пытались улучшать результаты через увеличение контекста, тонкую настройку или ансамбли моделей. Просто заставить модель проверить свою работу оказалось самым эффективным апгрейдом.

1 Где брать среду для проверки?

Не нужно разворачивать полноценный CI/CD. Достаточно легковесного контейнера или sandbox, куда можно скопировать код проекта, применить патч и запустить конкретный тест. В 2026 году для этого часто используют инструменты вроде Docker-in-Docker или специализированные sandbox API.

2 Что именно проверяет агент?

Не все тесты подряд. Только релевантные для текущего issue. Агент должен уметь прочитать traceback, понять, в каком файле и на какой строке ошибка, и связать это с изменениями в своем патче. Это критический навык.

Важный нюанс: модель не должна видеть исходные тесты до генерации патча (это было бы читерством). Но после генерации она может запустить их и увидеть результат – успех или провал с конкретными ошибками. Это разрешенный и мощный фидбек.

Пошаговый план: как собрать своего агента с verify-on-edit

В теории все модели умеют "думать шагами". На практике нужно построить конкретный пайплайн. Вот как это выглядит для Qwen3.5, но подход универсален.

  1. Шаг 0: Подготовка. Убедитесь, что у вас работает Qwen3.5 последней версии (на 04.03.2026 это, например, Qwen3.5-32B-Instruct). Локально его можно развернуть через llama.cpp с правильными настройками или использовать облачный эндпоинт. Производительность критична – итераций будет несколько.
  2. Шаг 1: Первоначальный анализ. Агент получает полный контекст: описание проблемы, релевантные файлы кода. Его первая задача – не писать код, а понять проблему и наметить план исправления. Промпт должен явно требовать: "Сначала проанализируй, что нужно изменить".
  3. Шаг 2: Генерация патча. На основе анализа модель генерирует конкретные изменения в коде. Важно: формат должен быть четким, например, unified diff, чтобы его можно было автоматически применить.
  4. Шаг 3: Применение и верификация. Здесь магия. Ваш скрипт-оркестратор применяет сгенерированный патч к коду проекта в sandbox-среде, запускает целевые тесты и захватывает вывод. Весь вывод (особенно ошибки) передается обратно агенту.
  5. Шаг 4: Анализ ошибок и корректировка. Это ключевая фаза. Агент получает сообщение: "Твой патч привел к ошибке: [traceback]. Проанализируй эту ошибку и исправь патч." Модель должна связать ошибку со своим кодом.
  6. Шаг 5: Повтор. Шаги 3-4 повторяются до тех пор, пока тесты не пройдут успешно или не будет достигнут лимит итераций (обычно 3-5). Часто успех приходит на второй-третьей попытке.

Этот цикл превращает односложную генерацию в диалог модели с окружением. Модель учится на собственных ошибках, причем на конкретных, а не гипотетических.

Где собака зарыта: нюансы и типичные ошибки

Казалось бы, все просто. Бери и делай. Но на каждом шаге есть подводные камни, которые сведут на нет весь эффект.

Ошибка Последствие Как исправить
Sandbox слишком "глухой" Агент получает только код возврата (pass/fail), без traceback. Без деталей ошибки он не может ее исправить. Всегда передавайте полный stderr и stdout. Для модели это золотая жила информации.
Неограниченное число итераций Модель может зациклиться, внося бессмысленные изменения и не сходя с места. Жесткий лимит попыток (3-5). Если не вышло, значит, задача слишком сложна для текущего подхода.
Модель "забывает" исходную задачу В погоне за исправлением конкретной ошибки агент уходит в сторону и ломает что-то еще. В каждом промпте напоминайте контекст исходной проблемы. Можно прикреплять его как системное сообщение.
Использование сырых Qwen3.5 без инстурктов Базовая модель может плохо следовать инструкциям по итеративному исправлению. Берите только Instruct-версии. Для сложных агентов рассмотрите специализированные версии, заточенные под код.

Самая большая ошибка – думать, что verify-on-edit это просто "запусти тесты еще раз". Нет. Это изменение архитектуры агента, где среда выполнения становится частью его когнитивного контура.

Ответы на главные вопросы

Этот трюк работает только с Qwen3.5?

Нет, он универсален. Но Qwen3.5 показал особенно впечатляющий прирост потому, что изначально хорошо понимает код и инструкции. С более слабыми моделями прирост будет, но не такой драматический. С гигантами вроде Claude Opus метод тоже улучшает результаты, но их базовая точность уже высока.

Сколько это стоит? Итерации удорожают работу.

Да, в 3-5 раз больше запросов к модели. Но альтернатива – использовать модель в 10 раз больше и дороже (как Opus). С точки зрения стоимости и скорости, итеративный Qwen3.5 часто выигрывает. Особенно если вы запускаете его локально на эффективно квантованной версии.

Можно ли использовать для продакшена, а не только для бенчмарков?

Абсолютно. Именно так и стоит строить серьезных кодинг-ассистентов. Например, для автоматического исправления багов в вашем репозитории или генерации патчей по описанию. В production этот цикл работает даже лучше, потому что задачи часто более конкретны, чем в SWE-bench.

Почему это не делали раньше?

Делали, но не системно. Ранние подходы были завязаны на ручном промптинге ("проверь свой код"), что не давало реального фидбека. Автоматизация запуска тестов и анализ их вывода – это тот самый недостающий пазл, который встал на место с развитием инфраструктуры sandbox-сред и пониманием, как эффективно давать моделям обратную связь.

Что это меняет в большом picture?

Революция не в том, что Qwen3.5 теперь "такой же умный", как Opus. Революция в том, что эффективность кодинг-агента перестала быть линейной функцией от размера модели. Она стала функцией от качества его цикла обратной связи.

Это открывает двери для более легких, быстрых и дешевых моделей, которые могут решать сложные задачи, если дать им возможность учиться на ошибках. Прямо как джуниор-разработчик, который с хорошим ментором (в виде системы верификации) быстро догоняет сеньора.

🚀
Неочевидный прогноз: к концу 2026 года мы увидим всплеск lightweight-агентов, специально обученных для итеративной работы с обратной связью от интерпретатора/компилятора. Их ядро может быть меньше 10B параметров, но результаты будут бить 100B монстров, работающих в один проход. Гонка параметров замедлится, начнется гонка архитектур агентов.

Так что не спешите апгрейдить видеокарту для 72B модели. Возможно, ваша 14B модель с правильной стратегией verify-on-edit сделает ту же работу в три раза быстрее и в десять раз дешевле. Просто дайте ей возможность проверить домашку.

Подписаться на канал