Более умная модель не спасет вашу плохую обвязку

Источник: Cerebras•

Более умная модель не спасет вашу плохую обвязку

Your AI agent is only as good as its harness. Learn why better models alone aren’t enough and what it takes to build more effective AI agents.

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

Модель обеспечивает интеллект. Она рассуждает, принимает решения, пишет код и решает, какие действия предпринять дальше. Среда — это реальный компьютер, репозиторий, браузер или контейнер, где выполняется эта работа, а пользователь (иногда другой агент) задает цели и при необходимости предоставляет рекомендации.

Обвязка определяет, что модель может видеть, какие действия она может совершать, как результаты передаются обратно для следующего этапа инференса и когда работа фактически завершена.

Проектирование обвязки можно рассматривать как создание системы вокруг модели, которая превращает ее в двигатель для выполнения реальных задач. Неважно, насколько умна модель. Без обвязки она представляет собой просто машину для генерации токенов. Именно обвязка делает этот интеллект по-настоящему полезным. Обвязка — это то, что превращает модель в агента.

Существует множество типов обвязок. Некоторые из них заточены под разные виды работы.

  • Личная работа: Openclaw и Hermes — это преимущественно персональные агенты, интегрированные во внешние приложения (Telegram, Discord, iMessage).
  • Программирование: обычно такие обвязки работают в терминале или текстовых редакторах. Существуют обвязки, разработанные для обучения с подкреплением и исследований, обвязки для финансов, маркетинга и многих других вертикалей.
  • Интеллектуальная работа: отличными примерами этого являются ChatGPT Work и приложение Claude для ПК. Хотя многие также используют их в качестве агентов для программирования, эти приложения имеют множество инструментов и плагинов, позволяющих подключать вашего агента к таким сервисам, как Slack, Notion, Gmail, Sheets, Teams, Clickup и десяткам других — и все это с целью поддержки общих задач интеллектуальной работы.

ChatGPT Work от OpenAI (на изображении) имеет надежную экосистему плагинов, доступных для общегосударственных задач и разработки программного обеспечения.

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

Что такое обвязка?

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

  • пользоваться компьютером
  • поддерживать постоянное состояние
  • искать в Интернете
  • выполнять команды оболочки
  • читать, редактировать или создавать файлы
  • выполнять код
  • или проверять работоспособность того, что они создали

Если большая языковая модель — это мозг, то обвязка — ее тело.

Когда вы задаете такой запрос, как:

Ваш промпт не просто отправляется напрямую модели и возвращается в виде волшебным образом готового патча. Обвязка объединяет множество вызовов инференса в цикл обратной связи, который выглядит следующим образом:

Этот цикл мы и называем «агентом».

И каждый шаг, описанный здесь, требует немалой инженерной работы.

Обвязка обычно отвечает за:

  • Создание промптов — системные инструкции/инструкции разработчика, инструкции для репозитория, пользовательский промпт.
  • Выбор контекста — какие файлы, предыдущие сообщения, результаты работы инструментов, воспоминания, дифы и т. д. видны.
  • Инструменты — командная строка, редактирование файлов, поиск, веб, инструменты MCP, Git, тестирование.
  • Схемы инструментов — как эти возможности описываются для модели.
  • Выполнение инструментов — фактический перевод намерений модели в действия.
  • Цикл агента — принятие решений о том, как возвращаются результаты работы инструментов, и запуск следующего инференса.
  • Состояние — запоминание того, что произошло на разных шагах/сессиях.
  • Оркестрация — запуск специализированных или параллельных агентов.
  • Хуки — детерминированное выполнение скриптов по предварительно определенным триггерам (линтинг, блокировка опасных команд, код-ревью).
  • Память — личный контекст сохраняется и внедряется в промпты модели, чтобы помочь агентам «помнить» предыдущие сессии.
  • Сжатие контекста — определение того, что подлежит суммированию или отбрасыванию по мере роста сессии.
  • Планирование — планы, списки задач, подцели.
  • Разрешения/песочница — что агенту разрешено выполнять.
  • Обработка ошибок — повторные попытки, неудачные команды, тайм-ауты.
  • Верификация — тесты, линтинг, проверка работоспособности изменений.
  • Завершение — определение момента, когда работа агента действительно закончена.
  • Ограничения — правила, определяющие, что агент может, а чего не может делать.

Обвязка может изменить результат

Если вы использовали одну и ту же модель в двух разных инструментах для программирования, вы, вероятно, уже ощутили это. Модель может быть одинаковой, но удобство использования и качество результатов могут кардинально отличаться.

В одной из статей, Stop Comparing LLM Agents Without Disclosing the Harness, сообщается, что Claude Opus 4.5 набрал 45,9% при использовании стандартизированного каркаса SEAL, но 55,4% при использовании через Claude Code на SWE-bench Pro.

Таблица 1 в Stop Comparing LLM Agents Without Disclosing the Harness

И сложность не всегда превыше всего. Иногда меньшая схема инструментов может улучшить агента сильнее, чем дополнительные уровни оркестрации. Недавно компания Prime Intellect выпустила свою обвязку для программирования. Созданный на базе Pi, Prime Agent смог превзойти обвязки, на которых обучались их модели.

Мораль этой истории такова: бенчмарк, говорящий вам «Модель А превосходит Модель Б», иногда может вводить в заблуждение непреднамеренно, если для обоих тестов не использовалась одна и та же обвязка. Контекст (и обвязка) имеет значение.

Результат бенчмарка принадлежит паре «модель-обвязка». Если обвязка меняется, результат тоже может измениться. И поскольку обвязки становятся все более амбициозными, они также делают больше вызовов модели. Вот тут-то и начинает иметь значение быстрый инференс.

Artificial Analysis Harness Comparison

Здесь вы можете четко видеть: производительность одной и той же модели сильно варьируется в зависимости от обвязки.

Обвязка — это множитель инференса

Посмотрите на список того, чем управляет обвязка: планирование, цикличность, повторные попытки, верификация, тестирование, компакция, оркестрация, ревью. Каждое из этих действий требует еще одного вызова модели, что стоит токенов, но, что более важно, времени.

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

Каждый вызов модели добавляет задержку, и в преимущественно последовательном цикле агента примерный бюджет выглядит следующим образом:

Если один шаг работает медленно, десять шагов становятся невыносимыми для наблюдения. Но, напротив, если шаги модели выполняются быстро, у обвязки появляется пространство для выполнения более полезной работы до того, как агент перестает казаться интерактивным.

Это различие имеет значение. Запуск GPT-5.6 Sol на Cerebras достигает скорости до 750 токенов в секунду, а время ответа на полный запрос составляет от 0,4 секунды. Такой уровень скорости открывает новые возможности и предоставляет обвязкам больший бюджет для рассуждений, использования инструментов, восстановления и верификации.

Что может делать «быстрая обвязка» по-другому

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

  • Оркестрация агентов в реальном времени. Интеллектуальные модели, такие как GPT 5.6 Sol Ultrafast, могут организовывать крупные проекты и масштабное разветвление субагентов, быстро суммируя преимущества в снижении задержки.
  • Использование компьютера со скоростью человека. Агенты уже могут пользоваться компьютерами, но они все еще неуклюжи, склонны к ошибкам и медленны по сравнению с людьми. Быстрый инференс устраняет задержки, из-за которых агенты движутся со скоростью человека.
  • Живое управление. Агенты мгновенно реагируют на исправления, обеспечивая по-настоящему совместную работу.
  • Спекулятивное выполнение. Пользователи, рассматривающие тот или иной подход, могут внедрять и тестировать несколько альтернатив в реальном времени с помощью рабочих деревьев, получая готовые рабочие варианты вместо гипотетических предложений.
  • Агрессивный повтор и самокоррекция. Агенты могут активно тестировать и исправлять собственный код по мере его написания с минимальными затратами для конечного пользователя. Хуки срабатывают сразу после редактирования файла, а валидация или исправление происходят за миллисекунды.
  • Адаптивные интерфейсы. Агенты могут генерировать превью, графики, визуализации и макеты в ответ на текущее состояние — и все это в реальном времени.

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

Создание легкого приложения «Белая доска»

Чтобы изолировать влияние обвязки (harness) от возможностей интеллекта модели, мы провели простое контролируемое исследование: использовались Claude Opus 4.6, одна и та же задача и два разных агента программирования: Factory Droid и Claude Code.

Оба агента начали с пустого репозитория и получили один и тот же промпт:

В этой демонстрации не использовались код Excalidraw, проприетарные ресурсы или иконки

Оценка была сосредоточена на тех же пяти требованиях: рисование прямоугольников и стрелок; выбор, перемещение и удаление элементов; отмена и повтор действий; экспорт в формате PNG; запуск результата в браузере. Оба агента успешно справились со всеми пятью требованиями. Разница заключалась в том, насколько эффективно каждая обвязка превращала одну и ту же модель в проверенный результат.

Результаты Factory Droid

Результаты Claude Code

В этом конкретном запуске Factory справилась на 11 минут быстрее (примерно в 2.4 раза быстрее), используя при этом примерно вдвое меньше вызовов инструментов. Она также обнаружила и исправила проблему с блокировкой хит-тестирования до сообщения о завершении, а затем задокументировала оставшиеся неблокирующие пробелы.

Это не утверждение о том, что какая-то одна обвязка победит в любой задаче, но это наглядный пример того, как обвязка выступает в роли множителя инференса: даже если модель остается неизменной, окружающая ее система может существенно изменить путь, стоимость, скорость и качество конечного результата.

Примечание: результаты могут различаться в зависимости от обвязки, задачи и конфигурации модели.

Обвязка как узкое место

В настоящее время самым большим узким местом для агентов являются шаги инференса. Благодаря быстрому инференсу Cerebras это больше не так. Новым узким местом становится сама обвязка или, точнее говоря, вызовы инструментов.

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

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

Скорость меняет форму обвязки

Ни одна из этих возможностей агента не является принципиально новой. Почти любая обвязка может запускать тесты, координировать агентов, управлять браузером или создавать визуализации. Разница заключается в том, являются ли эти действия практическими, вписываются ли они «внутрь процесса взаимодействия» или же заставляют вас отправлять работу в фоновый режим.

Медленный инференс подталкивает людей к меньшему количеству более крупных вызовов моделей. Многоэтапная работа становится асинхронной, когда пользователь просматривает результат после того, как агент уже принял большинство решений (поскольку ошибки накапливаются). Не будем забывать: модели умны, но не непогрешимы. Человек с высоким уровнем автономности и хорошим вкусом в дизайне по-прежнему незаменим в этом цикле для оценки, руководства и направления.

Помимо GPT‑5.6 Sol, Cerebras поддерживает ведущие открытые модели на скорости в тысячи токенов в секунду на своих публичных эндпоинтах:

  • OpenAI GPT OSS 120B со скоростью 3 000 т/с
  • Gemma 4 31B со скоростью 1 850 т/с
  • Z.ai GLM 4.7 со скоростью 1 000 т/с

Для выделенных корпоративных эндпоинтов Cerebras также поддерживает Kimi K2.6, GLM 5.1, MiniMax M2.5, Qwen3 Coder 480B, Llama 4 Maverick, Mistral Large 3, DeepSeek V3.2 и многие другие семейства моделей.

Дизайн от @halleychangg.

О чём эта статья

Ещё в разделе «AI и машинное обучение»

Все →

Ещё от Cerebras