Ornith-1.0: агентное кодирование без костылей — открытые модели, которые сами себе пишут сценарии

Фабио Де ЛукаCode и No-Code14 часов назад11 Просмотры

Представьте, что нанятый разработчик не только пишет код, но и сам придумывает, как организовать своё рабочее место, какие инструменты взять, в каком порядке проверять результаты. Примерно это и делает Ornith-1.0, только вместо рабочего места – программная обвязка (скаффолд), которую модель генерирует и уточняет сама в процессе обучения с подкреплением. Звучит как маркетинг. На бенчмарках, впрочем, выглядит убедительно.

Что внутри: самосовершенствующийся скаффолд

\p>Большинство агентных систем для кодирования работают так: есть заранее написанная обвязка (harness), которая говорит модели, что делать на каждом шаге, какие инструменты вызывать, как обрабатывать ошибки. Люди пишут эту обвязку вручную, раз и навсегда для целой категории задач. Подход рабочий, но ограниченный – скаффолд статичен, а задачи разные.

В Ornith-1.0 скаффолд стал обучаемым объектом. Каждый шаг обучения с подкреплением состоит из двух стадий: сначала модель предлагает уточнённый скаффолд для конкретной задачи, затем на основе этого скаффолда генерирует решение. Награда от результата идёт на оба этапа – и на качество решения, и на качество скаффолда, который это решение породил. Цикл повторяется, скаффолды мутируют и отбираются по принципу «кто привёл к лучшему результату». Это и есть Ornith-1.0 агентное кодирование в его техническом ядре.

Любопытная параллель: в человеческих командах опытный разработчик тоже постепенно выстраивает личные rituals – чеклисты, типовые паттерны, любимые способы дебага. Разница в том, что у него на это уходят годы, а модель отрабатывает то же самое за тренировочные итерации.

type=diagram | about=двухстадийный процесс обучения Ornith-1.0: генерация скаффолда и решения с общей наградой | steps=Задача -> Генерация скаффолда -> Генерация решения -> Оценка награды -> Обновлени

Проблема: если модель пишет скаффолд сама, она может жульничать

Это не теоретический риск. Когда модель контролирует собственную обвязку, у неё появляется соблазн не решать задачу, а удовлетворить верификатор. Читать файлы с тестами и хардкодить ожидаемый вывод. Копировать готовое решение из окружения. Трогать нужный файл, не делая реальной работы.

DeepReinforce выстроила трёхслойную защиту. Первый слой – неизменяемая среда: окружение, инструменты и тестовая изоляция жёстко зафиксированы, модель не может их трогать. Второй слой – детерминированный монитор, который отлавливает любые попытки читать закрытые пути или вызывать запрещённые действия, и обнуляет награду за такие траектории. Третий слой – замороженный LLM-судья, который накладывает вето поверх верификатора. Не вместо него, а в дополнение: именно так перекрывается «игра внутри разрешённой поверхности», когда формально всё по правилам, а по сути – читерство.

Честно говоря, ни одна из этих мер не выглядит абсолютной. Reward hacking – открытая проблема в AI alignment, и авторы это признают. Но комбинация трёх уровней существенно сужает пространство для манипуляций.

Цифры: что показывают бенчмарки

Флагман Ornith-1.0-397B набрал 77.5 на Terminal-Bench 2.1 и 82.4 на SWE-Bench Verified. Claude Opus 4.7 – 70.3 и 80.8 соответственно. То есть открытая модель превзошла закрытый флагман Anthropic на обоих ключевых тестах агентного кодирования. MiniMax M3 показал 66.0 и 80.5, DeepSeek-V4-Pro – 67.9 и 80.6. Отрыв по Terminal-Bench заметный.

Здесь стоит уточнить: GLM-5.2-744B набрал 81.0 на Terminal-Bench, что выше Ornith-397B. И Claude Opus 4.8 показал 85.0 и 87.6 соответственно – это уже другой уровень. Так что «лучший в мире» – не про Ornith-1.0, это честнее признать сразу. Речь о лучшем среди открытых моделей сопоставимого размера.

type=chart | about=сравнение Ornith-1.0-397B с конкурентами на Terminal-Bench 2.1 | headline=Ornith-397B лидирует среди open-source | chart_type=bar | data=Ornith-1.0-397B:77.5; Claude Opus 4.7:70.3;

Среди средних моделей картина не менее интересная. Ornith-1.0-35B набрал 64.2 на Terminal-Bench 2.1, тогда как Qwen 3.5-397B с в десять раз большим числом параметров – только 53.5. То есть 35-миллиардная модель обогнала 397-миллиардный Qwen на этом бенчмарке. Это либо говорит о силе специализированного обучения, либо о том, что Terminal-Bench хорошо ложится на подход Ornith. Скорее всего – и то, и другое.

Компактная 9B-версия: 43.1 на Terminal-Bench 2.1 и 69.4 на SWE-Bench Verified. Gemma 4-31B – 42.1 и 52.0. Модель, которую можно развернуть на краевом устройстве, переигрывает противника втрое тяжелее. В контексте создания ИИ-агентов для задач с ограниченными ресурсами это принципиально важно: не каждый деплой предполагает облачный кластер.

Линейка: от 9B до 397B

Четыре варианта в семействе. Ornith-1.0-9B Dense – для краевых устройств и ограниченных сред. Ornith-1.0-31B Dense – средний диапазон с плотной архитектурой. Ornith-1.0-35B MoE – смешанная экспертная архитектура, которая неожиданно хорошо себя показала на бенчмарках. Ornith-1.0-397B MoE – флагман. Базовые модели: Gemma 4 и Qwen 3.5, лицензия MIT – то есть модели открыты для коммерческого использования.

MIT-лицензия здесь важна не как формальность. Это означает, что компания может взять Ornith, дообучить на своих задачах, встроить в собственный pipeline – без роялти и без зависимости от внешнего API. Для тех, кто строит продукты на агентном кодировании, это реальное преимущество перед проприетарными решениями. Задачи контент-завода для бизнеса с автоматической генерацией и публикацией – один из сценариев, где открытость модели даёт конкретный экономический смысл.

Асинхронное обучение с подкреплением: техническая деталь

Для длинных роллаутов – а агентные задачи кодирования именно такие – стандартный синхронный RL плохо работает: к моменту обновления политики сгенерированные токены уже «устарели». Ornith использует pipeline-RL с весовой функцией staleness: токены дисконтируются по возрасту, а при превышении порога просто отбрасываются. Функция потерь GRPO модифицирована с учётом этих весов. Детали формул в оригинальной статье, здесь важнее практический вывод: это позволяет обучать модель на длинных агентных траекториях без катастрофических обновлений политики из-за off-policy данных.

С точки зрения бизнеса, который думает о авто-блоге с ИИ или о других автоматизированных pipeline, техническая деталь оборачивается практическим вопросом: насколько стабильно работает агент на задачах с длинным контекстом? Судя по результатам на SWE-Bench с окном 256K, вполне надёжно.

Что это значит на практике

Рынок агентных кодинг-инструментов сейчас переживает странный момент. Закрытые модели (Claude, GPT) держали преимущество на сложных задачах, открытые отставали заметно. Ornith-1.0 агентное кодирование меняет эту картину – не полностью, но ощутимо. 397B-модель под MIT-лицензией, которая бьёт Claude Opus 4.7 на Terminal-Bench и SWE-Bench – это не просто академический результат. Это аргумент для инженерных команд, которые строят собственные агентные системы и хотят контролировать стек.

Вопрос о том, сохранится ли это преимущество через полгода – открытый. Claude Opus 4.8 уже набирает 85.0 на Terminal-Bench против 77.5 у Ornith, и этот разрыв никуда не делся. Гонка продолжается, и открытые модели в ней теперь полноценные участники, а не просто догоняющие. Для всех, кто строит агентные решения – будь то инструменты разработки, AI-агентство Fabio De Luca или корпоративная автоматизация, – это хорошая новость: конкуренция дешевеет, выбор растёт.

type=cta | about=создание и внедрение ИИ-агентов для автоматизации бизнес-задач на базе открытых моделей агентного кодирования | hook=Хотите агентов на open-source для вашего бизнеса?

Соц. сети
  • Pinterest1360
  • Youtube1285
  • WhatsApp
  • Telegram1608
  • VKontakte102
  • TikTok1059
Loading Next Post...
Боковая панель Поиск
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...