Ornith 1.0: открытые модели для agentic coding, которые обходят DeepSeek V4
Еженедельные AI-дайджесты обычно заканчиваются одним и тем же: «вышла новая модель, бенчмарки впечатляют, но на практике пока не доступна». Ornith 1.0 — редкое исключение. Это не просто модель с красивыми цифрами на слайде презентации, а система с принципиально другим подходом к обучению: модель не просто решает задачи — она учится проектировать собственные workflow. И при этом она уже лежит на HuggingFace, готовая к запуску.
Что такое agentic coding и почему это важно
Когда разработчик решает задачу в реальном проекте, он не просто пишет один файл и всё. Он читает существующий код, понимает архитектуру, добавляет функцию, запускает тесты, правит баги, проверяет, что ничего не сломалось, коммитит изменения, возможно возвращается к предыдущим шагам. Это цепочка действий, где каждая следующая операция зависит от результата предыдущей.
Большинство существующих open-source моделей для кодинга — узкие специалисты: они хороши для автодополнения, объяснения кода или написания отдельных функций. Но для задач, где нужно несколько шагов, постоянная обратная связь и адаптация, их возможностей не хватает. Модель видит ошибку, получает сообщение, но не знает, как отреагировать — не умеет перепланировать, не умеет выбрать правильный инструмент. Ornith 1.0 из лаборатории Unknown Gen построен с учётом именно этих ограничений.
Для понимания разницы: обычная модель для кодинга — как хороший репетитор, который отлично объясняет материал. Agentic coding модель — как опытный ментор, который не только объясняет, но и ведёт проект от идеи до деплоя, сам принимая решения на каждом этапе.
Mixture of Experts: 397 миллиардов параметров без переплаты за инференс
Ornith 1.0 — это семейство моделей на основе Mixture of Experts (MoE) архитектуры. Ключевая идея MoE в том, что не все части модели активируются при каждом запросе. Вместо одного «dense» блока, который обрабатывает всё, используется набор специализированных «экспертов», и при каждом вызове активируется только часть из них.
Это как больница: если нужно решить конкретную проблему с сердцем, вы идёте к кардиологу, а не к каждому врачу в здании. MoE работает по той же логике — для задачи кодинга активируются эксперты по кодингу, для математики — эксперты по математике. Это позволяет резко увеличить общий размер модели без пропорционального роста вычислительных затрат при инференсе.
Полноразмерная Ornith 1.0 имеет 397 миллиардов параметров и занимает примерно 794 ГБ в FP16. Для сравнения, DeepSeek V4 — это 1.6 триллиона параметров. Разница в 4 раза. При этом MoE-архитектура Ornith позволяет при инференсе задействовать лишь часть экспертов, тогда как dense-модель всегда использует все свои триллионы параметров. Результат: Ornith 397B при инференсе работает как модель существенно меньшего размера, но при этом достигает того же уровня на agentic coding задачах.
Семейство включает несколько версий: самая маленькая — 9 миллиардов параметров, далее 35 миллиардов и флагманская 397 миллиардов. 35-миллиардная версия занимает 70 ГБ в FP16 и всего 21 ГБ в Q4-квантовании — это помещается на один mid-tier GPU. Доступна FB8-версия флагмана на 400 ГБ — компромисс между размером и точностью. Quen-модели, которых Ornith обходит на бенчмарках, — одни из самых популярных для локального запуска (миллионы скачиваний), и Ornith 35B может быть прямым апгрейдом для тех, кто уже использует Quen для кодинга.
Self-improving training harnesses: главная инновация Ornith
Размер — не главное в Ornith 1.0. Метод обучения, который авторы называют self-improving training harnesses, — это попытка решить фундаментальную проблему языковых моделей: они хороши на задачах из тренировочных данных, но плохо обобщают на новые.
Традиционный подход к обучению моделей для кодинга: берём человеческий код и тесты, модель учится их воспроизводить. Результат — модель хорошо решает задачи, похожие на те, что были в тренировочных данных. Но она не умеет справляться с тем, чего не видела. Не умеет выбрать правильный инструмент. Не умеет перепланировать при ошибке. Это принципиальное ограничение: модель хороша как копировальщик, но не как инженер.
Ornith использует принципиально другой подход. Вместо того чтобы давать модели готовые примеры и ждать, что она научится их повторять, Ornith получает задачу и одновременно учится проектировать стратегию решения. Модель не просто запоминает, как решить конкретную задачу — она учится понимать, какой workflow лучше подходит для задач определённого типа.
Если упростить до аналогии: представьте, что вы учите человека готовить. Традиционный подход — дать ему 10,000 рецептов и ждать, что он научится готовить по аналогии. Подход Ornith — дать ему задачу «накормить 10 человек за 2 часа» и заставить его разработать меню, порядок приготовления, систему готовки нескольких блюд параллельно, способы обработки ошибок (если мясо подгорело — что делать?). Модель учится не просто готовить, а проектировать процесс.
Авторы описывают это так: модель улучшает стратегию, память, обработку ошибок и паттерны использования инструментов вокруг каждой конкретной проблемы. Это близко к идее meta-learning, только на уровне рабочих процессов, а не отдельных параметров.
Бенчмарки: догоняет DeepSeek V4 при вчетверо меньшем размере
Результаты Ornith 1.0 наиболее показательны на задачах agentic coding. На бенчмарках Terminal Bench (симуляция терминальных сессий с реальными багами), SWE-bench и SWE-bench Pro (реальные GitHub-баги из Django, pytest, matplotlib и других проектов) модель 397B параметров показывает результаты, сопоставимые с DeepSeek V4 — моделью с 1.6 триллиона параметров.
На Terminal Bench, где модель должна эмулировать работу разработчика в терминале (запускать команды, читать вывод, принимать решения), Ornith 1.0 397B находится на уровне DeepSeek V4. На SWE-bench Verified, где нужно исправить реальный баг в реальном проекте, результаты также сопоставимы. Это при том, что DeepSeek V4 в 4 раза больше.
Средняя 35-миллиардная версия обходит Quen 3.5 и Quen 3.6 3B, а также Gemma 4 на большинстве метрик agentic coding. Это важно: Quen-модели — стандарт для локального кодинга, и если Ornith 35B их превосходит, это прямой аргумент для перехода.
Как запустить Ornith 1.0 локально
Ornith 1.0 уже доступен на HuggingFace со всеми весами. Для 397B версии потребуется сервер с несколькими GPU и примерно 800+ ГБ памяти (FP16) или 400+ ГБ (FB8). На практике это означает 2–3 DGX Spark или аналогичные системы. Для 35-миллиардной версии в Q4-квантовании (21 ГБ) достаточно одного GPU уровня RTX 4090 или A100.
Также доступны GGUF-версии для запуска через llama.cpp или Ollama — это удобно, если инфраструктуры для полноразмерного запуска нет. Прямая ссылка на HuggingFace есть на странице проекта.
Почему это важно для индустрии
Agentic coding — следующее практическое применение языковых моделей после автодополнения. Это не хайп вокруг «AGI скоро», а конкретный инструмент для команд, которые хотят автоматизировать рутину: автогенерация тестов, рефакторинг, обновление зависимостей, миграция кодовой базы, подготовка pull request.
Когда модели смогут автономно вести проекты — писать, тестировать, деплоить — это изменит не только то, как пишут код, но и то, сколько людей нужно для поддержки крупных проектов. Ornith 1.0 — один из шагов в этом направлении, и то, что это open-source, означает доступность для всех, а не только для тех, кто может позволить себе дорогие API.
Часто задаваемые вопросы
Чем Ornith отличается от DeepSeek Coder или StarCoder?
DeepSeek Coder, StarCoder, CodeLlama и подобные модели оптимизированы для отдельных задач: написать функцию, объяснить код, найти баг. Ornith 1.0 спроектирован для многошаговых workflow, где модель должна планировать, вызывать инструменты, обрабатывать ошибки итеративно. Это другой класс задач. Если вам нужно написать одну функцию — существующие модели справятся. Если нужна автономная работа над проектом с несколькими шагами — Ornith интереснее.
Можно ли использовать Ornith 397B как замену Copilot?
Ornith 1.0 — это серверная модель для автономных workflow, а не плагин для IDE. Для замены Copilot больше подходят модели 7–35B, которые запускаются локально и интегрируются в редактор. 397B версия — для исследователей и команд, которым нужна автономная многошаговая работа с ability генерировать собственные training harnesses.
Почему MoE архитектура критична для agentic coding?
MoE позволяет иметь огромную модель (сопоставимую по ёмкости с dense-моделями триллионного масштаба), но активировать при инференсе только часть экспертов. Для кодинга это критично: задачи разные, и способность «переключаться» между специализированными экспертами даёт выигрыш там, где dense-модель одного размера была бы менее эффективна. 397B MoE при инференсе работает как модель существенно меньшего размера — отсюда и сопоставимость с DeepSeek V4 при 4x меньшем количестве параметров.
Как Ornith обходит Quen и Gemma на бенчмарках?
Quen 3.5 и Gemma 4 — сильные модели для кодинга, но они обучались на статичных датасетах кода. Ornith обходит их за счёт agentic workflow: он умеет работать с tool use, error handling и итеративным улучшением. На задачах, где нужно несколько шагов (написал → запустил → увидел ошибку → исправил), Ornith выигрывает. На задачах один-в-один разница может быть меньше.
Что такое Terminal Bench и SWE-bench?
Terminal Bench — бенчмарк, где модель получает задачу, эмулирующую работу в терминале: нужно запускать команды, читать вывод, принимать решения на основе результатов. SWE-bench — набор реальных багов из GitHub-репозиториев (Django, pytest, matplotlib и других), где модели нужно понять кодовую базу, найти причину бага и написать исправление. Это не синтетические задачи, а реальные проблемы из продакшена.
Что можно автоматизировать с Ornith уже сейчас
Agentic coding-модель вроде Ornith не заменит разработчика в ближайшее время, но уже сейчас способна взять на себя значительную часть рутинной работы. Вот конкретные сценарии, где Ornith 35B практичен:
Генерация тестов. Написание unit-тестов — рутина, которую все откладывают. Ornith умеет анализировать функцию, понимать её логику и генерировать покрывающие тесты. В отличие от простого автодополнения, Ornith может итеративно улучшать тесты: запустить, посмотреть результаты, поправить.
Рефакторинг. Переименование переменных по всему проекту, вынос повторяющегося кода в отдельные модули, замена устаревших API — задачи, которые требуют понимания контекста нескольких файлов. Ornith умеет работать с кодовой базой как с единым организмом, а не отдельными файлами.
Миграция зависимостей. Когда библиотека выпускает мажорную версию с ломающимся API, ручная миграция занимает дни. Ornith может проанализировать кодовую базу, найти все места использования старого API и автоматически сгенерировать миграцию.
Генерация документации. Ornith умеет читать код и генерировать документацию, но важнее то, что он может поддерживать её актуальность: после изменения кода — обновить соответствующие секции.
Итог
Ornith 1.0 — не просто ещё одна языковая модель с красивыми цифрами. Это система с принципиально другим подходом к обучению: модель учится не просто решать задачи, а проектировать свои собственные подходы к ним. Self-improving harnesses — пока теоретическая конструкция, но результаты на бенчмарках подтверждают, что идея работает. Модель в 4 раза меньше DeepSeek V4 достигает того же уровня на agentic coding задачах. Открытые веса и код делают Ornith 1.0 доступным для экспериментов уже сейчас — если у вас есть инфраструктура для запуска 400+ ГБ модели или достаточно GPU для 35B версии.