🔧 Обвязка агента

Почему инфраструктура важнее модели

Интерактивный курс по Harness Engineering: три эпохи инженерии с LLM, 13 слоёв production-обвязки, MCP, архитектурные развилки и принцип Rippable Harness. 9 секций, 6 типов упражнений.

0%

Прогресс

0/9

Секций

0/11

Достижений

Ср. балл

Финальный тест

Содержание курса

🕰️

1. Три эпохи инженерии с LLM

От prompt engineering к harness engineering: как менялся подход к работе с языковыми моделями

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

2022–2024 — Prompt Engineering. Правильные слова в правильном порядке. Один запрос — один ответ. Работало для простых задач: суммаризация, перефразирование, генерация текста по шаблону. Вся «магия» была в формулировке запроса.

2025 — Context Engineering. Термин ввёл Андрей Карпати, развил Anthropic. Не «правильные слова», а «правильная конфигурация контекста в каждый момент времени». Появились агенты в петле, RAG, memory-файлы. Контекст стал первоклассным артефактом — тем, что нужно проектировать, а не просто заполнять. [Anthropic]

2026 — Harness Engineering. Термин кристаллизовал Митчелл Хашимото. Включает оба предыдущих уровня плюс всю инфраструктуру: оркестрацию, состояние, ошибки, верификацию, безопасность. «Агенты — не сложно. Обвязка — сложно» — Ryan Lopopolo, OpenAI. [OpenAI]

Ключевое доказательство: при замене только обвязки (модель та же) TerminalBench 2.0 показал +25 позиций. Алгоритм Meta-Harness, автоматически оптимизирующий обвязку, достиг 76.4% pass rate на TerminalBench-2 с Claude Opus 4.6. Meta заплатила $2B за Manus в декабре 2025 — не за модель, а за обвязку.

Практика

Карточка 1 из 6Нажмите на карточку, чтобы перевернуть
Понятие

Prompt Engineering (2022–2024)

Объяснение

Правильные слова в правильном порядке. Один запрос — один ответ. Работало для простых задач: суммаризация, генерация по шаблону.

🖥️

2. Обвязка как операционная система

Почему сырой LLM — это процессор без ОС, и что именно делает обвязка

Аналогия Берена Миллиджа из эссе 2023 года до сих пор самая точная: сырой LLM — процессор без RAM, без диска, без I/O. Обвязка — операционная система, которая делает его полезным.

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

Что конкретно делает обвязка:

  • Управляет петлёй Thought → Action → Observation
  • Собирает контекст при каждом вызове модели
  • Парсит вывод и вызывает инструменты
  • Сохраняет состояние между шагами и сессиями
  • Обрабатывает ошибки и перезапускает упавшие шаги
  • Верифицирует результаты через тесты и линтеры
  • Контролирует безопасность и права доступа

Meta-Harness (arxiv, март 2026) показал: алгоритм, который сам ищет оптимальную обвязку для LLM, превзошёл все hand-designed системы. На text classification — +7.7 пунктов при 4× меньшем расходе токенов. Это означает: обвязку теперь можно не только строить, но и искать.

В феврале 2026 OpenAI опубликовали отчёт об эксперименте: 5 месяцев, 7 инженеров, ~1 000 000 строк кода — ни одной написанной человеком. Throughput: 3.5 PR на инженера в день. Ключевой вывод: работа инженеров сводилась к проектированию среды, формулированию намерений и созданию feedback-петель.

McKinsey оценивает: 80% времени реализации agentic AI уходит на data engineering и governance — не на конфигурацию фреймворков или выбор модели.

Практика

Вопрос 1 из 30 правильных

Какую аналогию использует Берен Миллидж для описания обвязки агента?

🧱

3. Управление исполнением: слои 01–04

Оркестрация, сборка промпта, парсинг вывода и tool layer — основа любого агента

Production-обвязка — не монолит, а стопка независимых слоёв. [Anthropic Engineering] Первые четыре отвечают за управление исполнением: как агент думает, что видит и как взаимодействует с миром.

Слой 01 · Петля оркестрации — сердцебиение системы. Цикл Thought-Action-Observation. Механически — простой while. Anthropic называет это «dumb loop»: вся интеллект — в модели, обвязка лишь управляет ходами. Сложность не в самой петле, а в том, чем она управляет.

Слой 02 · Сборка промпта — то, что модель видит при каждом вызове, собирается заново: system prompt, определения инструментов, memory-файлы, история диалога, текущий запрос. Порядок имеет значение — принцип «Lost in the Middle»: ключевой контент должен быть в начале и конце, не в середине. OpenAI Codex использует строгий priority stack с лимитом 32 KiB на developer-инструкции.

Слой 03 · Парсинг вывода — production-обвязки используют native tool calling: модель возвращает структурированный объект tool_calls, не free-text для парсинга. LangChain и OpenAI поддерживают Pydantic-схемы для structured outputs. Для граничных случаев — RetryWithErrorOutputParser, который подаёт оригинальный промпт, упавший ответ и ошибку парсинга обратно в модель. [Anthropic Research]

Слой 04 · Tool Layer — интерфейс агента с внешним миром. Регистрация схем, валидация аргументов, sandbox-выполнение, захват результатов. Читающие операции можно запускать параллельно; мутирующие — только последовательно. Противоинтуитивный факт: меньше инструментов — лучше результат. Vercel убрал 80% инструментов из v0 и получил измеримый прирост качества. [Anthropic: Writing tools]

Практика

Выберите элемент слева, затем соответствующий элемент справа

Сопоставлено: 0/5 · Ошибок: 0

🧠

4. Память и управление контекстом: слои 05–06

Три горизонта памяти и стратегии борьбы с context rot

Память и контекст — самые незаметные, но критически важные компоненты обвязки. Именно здесь чаще всего гибнут агенты в production.

Слой 05 · Memory System работает на трёх горизонтах. [Anthropic: Context Engineering] In-session: история текущего диалога. Cross-session: Anthropic использует CLAUDE.md и MEMORY.md, LangGraph — JSON Stores по namespace, OpenAI — SQLite или Redis. Структурированный скрэтчпад: Claude Code реализует трёхуровневую иерархию — лёгкий индекс (~150 символов/запись, всегда в памяти) → topic-файлы по требованию → raw транскрипты только через поиск.

Слой 06 · Управление контекстом — самое незаметное место гибели агентов. Context rot: производительность падает на 30%+ когда ключевой контент попадает в середину окна. Даже миллионные окна не спасают — деградация instruction-following нарастает с длиной.

Стратегии в production:

  • CompactionClaude Code сохраняет архитектурные решения и нерешённые баги, выбрасывает избыточные tool outputs
  • Observation maskingJetBrains Junie скрывает старые результаты, оставляя вызовы
  • Just-in-time retrievalgrep/glob/head/tail вместо загрузки файлов — 95% сокращение контекста. [Manus Blog]
  • Delegation sub-агентам — каждый возвращает 1000–2000 токенов резюме

ACON research: приоритет reasoning traces над raw tool outputs даёт 26–54% экономии токенов при сохранении 95%+ точности.

Практика

Расставьте стратегии управления контекстом от наименее к наиболее агрессивного сокращения:

1Summarization — сжатие истории в резюме
2Observation masking — скрытие старых tool outputs
3Just-in-time retrieval — grep/glob вместо загрузки файлов
4Time-based clearing — очистка по времени
5Sub-agent delegation — делегирование с возвратом 1–2k токенов
🛡️

5. Надёжность: ошибки, верификация, guardrails

Слои 07–10: как обвязка выживает при сбоях и не допускает опасных действий

Надёжность — это то, что отличает production-обвязку от демо. Четыре слоя работают вместе, чтобы агент не только выполнял задачи, но и делал это безопасно и предсказуемо.

Слой 07 · State Management — как обвязка помнит, что было сделано, при авариях и перезапусках. LangGraph: typed dict + checkpoint на каждом super-step, time-travel debugging. Claude Code: git commits как checkpoints плюс claude-progress.txt. Ключевой принцип команды Codex: планы и прогресс — first-class артефакты в репозитории.

Слой 08 · Error Handling — компаундирование делает его критичным: 10 шагов с 99% успехом дают 90.4% end-to-end, а 20 шагов — уже 82%. LangGraph различает четыре класса: transient (retry с backoff), LLM-recoverable (вернуть ошибку как ToolMessage), user-fixable (прервать), unexpected (вверх для дебаггинга). Stripe в production ограничивает retry до двух попыток. [Anthropic: Building effective agents]

Слой 09 · Verification Loops — разрыв между демо и production. Борис Черны (создатель Claude Code): verification loop даёт +2–3× качества. [Anthropic: Harness design] Два режима: computational (тесты, линтеры — детерминированная истина) и inferential (LLM-as-judge — ловит семантику). Martin Fowler: guides управляют до действия (feedforward), sensors наблюдают после (feedback). Без первых агент повторяет ошибки; без вторых — не знает, работают ли правила.

Слой 10 · Guardrails & Safety — разделение полномочий. Модель решает, что попробовать; tool system решает, что разрешено. OpenAI SDK: три уровня (input → output → tool). Механизм tripwire мгновенно останавливает агента при срабатывании. Claude Code независимо контролирует ~40 дискретных возможностей в три стадии: установка доверия → проверка прав → явное подтверждение для high-risk операций.

Практика

Сценарий

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

Шаг 1 из 40 оптимальных

Агент упал на шаге 7 из 15 из-за временной сетевой ошибки. Как обработать?

🌐

6. Масштабирование: мультиагенты и роутинг

Слои 11–13: субагенты, model routing и observability в production

Когда одного агента недостаточно — обвязка масштабируется горизонтально. Три последних слоя управляют координацией, стоимостью и наблюдаемостью.

Слой 11 · Subagent Orchestration — горизонтальное масштабирование задач. [Anthropic Engineering] Claude Code поддерживает три модели: Fork (байт-идентичная копия родительского контекста), Teammate (отдельная панель терминала с file-based mailbox), Worktree (собственный git worktree, изолированная ветка). OpenAI SDK: agents-as-tools (специалист обрабатывает ограниченный сабтаск) и handoffs (специалист берёт полное управление). LangGraph: вложенные state graphs.

Слой 12 · Model Routing — один из самых недооценённых компонентов. Не каждый шаг требует frontier-модели. HumanLayer: Opus для planning и orchestration, Sonnet для implementation, Haiku для file navigation. Экономия: 40–60% стоимости при сопоставимом качестве. Дополнительный эффект: prompt caching даёт Anthropic 90% скидку на повторяющиеся prefix-токены, OpenAI — 50%.

Слой 13 · Lifecycle Management & Observability — агент в production — не request-response функция, а долгоживущий процесс. Агент генерирует 8–15 спанов на вызов (против 2–3 у обычного API). OpenTelemetry GenAI semantic conventions (gen_ai.* namespace) стандартизирует сбор в vendor-neutral формате. Ключевой вопрос на дашборде: какие 5% запросов потребляют 50% токенов?

Практика

Выберите элемент слева, затем соответствующий элемент справа

Сопоставлено: 0/5 · Ошибок: 0

🔌

7. MCP: стандартизация tool layer

Model Context Protocol — USB-C для AI-интеграций и его принятие индустрией

Долгое время у каждой команды был свой способ подключать инструменты к агентам. В ноябре 2024 Anthropic выпустил Model Context Protocol (MCP) — открытый стандарт, аналог USB-C для AI-интеграций.

Проблема до MCP: N моделей × M инструментов = N×M интеграций. Каждая команда писала свои адаптеры, свои схемы, свои форматы. Переключение между моделями требовало переписывания всего tool layer.

Решение MCP: один унифицированный интерфейс для всех. MCP-сервер описывает инструменты один раз — и любой совместимый клиент может их использовать. Это разделяет разработку инструментов и разработку агентов.

Принятие индустрией:

  • Ноябрь 2024 — Anthropic выпускает MCP
  • Март 2025 — OpenAI официально принимает MCP
  • Апрель 2025 — Google DeepMind принимает MCP
  • Декабрь 2025 — Anthropic передаёт протокол в Agentic AI Foundation (AAIF) под Linux Foundation — гарантия vendor-neutral развития наравне с Kubernetes и PyTorch. [Полный гайд по MCP]

Поддержка в экосистеме: Claude Code (deepest integration, in-process server), OpenAI Agents SDK (hosted MCP tools), LangGraph (через langchain-mcp-adapters), CrewAI (native: crewai-tools[mcp] + A2A поддержка), OpenCode (native: local + remote MCP, OAuth для remote servers).

MCP превращает tool layer из проприетарного компонента в стандартизированную инфраструктуру — как HTTP для веба.

Практика

Вопрос 1 из 30 правильных

Когда Anthropic выпустил Model Context Protocol (MCP)?

⚖️

8. 10 архитектурных развилок

Ключевые решения при проектировании обвязки, определяющие production-готовность

Исследование практик 2025–2026 года выявляет десять ключевых развилок — каждая из которых определяет, получите вы production-систему или хорошо работающий демо. [Daily Dose of Data Science]

1. Один агент или сеть? Максимизируй одного, прежде чем делить. Порог для разделения: больше ~10 пересекающихся инструментов или явно несовместимые доменные задачи. OpenAI и Anthropic едины в этом.

2. ReAct или plan-and-execute? ReAct гибко, но затратно. LLMCompiler показывает 3.6× ускорение над sequential ReAct, запуская независимые tool calls параллельно. Выбор определяет форму компаундирования ошибок.

3. Стратегия управления контекстом? Пять подходов: time-based clearing, summarization, observation masking, structured notes, sub-agent delegation. ACON research: приоритет reasoning traces над raw tool outputs даёт 26–54% экономии токенов при сохранении 95%+ точности.

4. Guides или sensors? Фреймворк Martin Fowler: guides — feedforward (до действия). Sensors — feedback (после). Без первых агент повторяет ошибки; без вторых — не знает, работают ли правила. Инвестировать сначала в guides.

5. Permissive или restrictive права? Начинай с restrictive, расширяй по мере роста доверия. Anthropic: три стадии — trust establishment, permission check, явное подтверждение для high-risk.

6. Минимализм инструментов vs. полный арсенал? Парадокс: чем больше инструментов — тем хуже результат. Vercel убрал 80% инструментов из v0, производительность выросла. Expose minimum viable tool set, остальное lazy-load по запросу.

7. Тонкая или толстая обвязка? Тест future-proofing: производительность растёт с более мощной моделью без добавления сложности — архитектура правильная. Ключевой принцип — «rippable harness».

8. Наблюдаемость: встроенная с нуля или болтается сверху? Grafana 2026 survey: 92% practitioners видят ценность AI в observability, но большинство мониторинг прикручивают постфактум. Traces должны проектироваться вместе с обвязкой.

9. Harnessability: насколько среда поддаётся управлению? Концепция Birgitta Böckeler (Thoughtworks): strongly typed language → type-checker как бесплатный sensor. Выбор tech stack теперь нужно делать с оглядкой на «насколько эта среда будет легко управляема агентом».

10. Управление энтропией: кто чистит за агентом? AI-generated кодовые базы накапливают энтропию быстрее. Решение OpenAI: «garbage collection» агенты — отдельные периодические задачи, которые сканируют нарушения architectural constraints и открывают cleanup PRs.

Практика

Расставьте 10 архитектурных развилок в правильном порядке (от базовых к продвинутым):

1Стратегия управления контекстом?
2Наблюдаемость: встроенная или болтается сверху?
3Harnessability среды
4Минимализм инструментов vs. полный арсенал?
5Управление энтропией
6Guides или sensors — что важнее?
7Тонкая или толстая обвязка?
8ReAct или plan-and-execute?
9Permissive или restrictive права?
10Один агент или сеть?
🔮

9. Rippable Harness и будущее

Почему обвязка — временная инфраструктура и принцип коэволюции модели и харнеса

Строительные леса не строят здание. Но без них рабочие не поднимутся на верхние этажи. Как только здание готово — леса снимают.

Принцип «Rippable Harness»: стройте обвязку так, чтобы её компоненты можно было вырвать, когда следующая модель научится делать это сама. Каждый компонент обвязки — это временная компенсация текущих ограничений модели. [Daily Dose of Data Science]

Manus перестраивал обвязку пять раз за шесть месяцев — каждый раз убирая сложность. Сложные определения инструментов стали общим shell execution. «Management agents» стали простыми structured handoffs. За это Meta заплатила $2B в декабре 2025 — не за модель, а за пять итераций инженерного опыта, который нельзя скачать с Hugging Face.

Коэволюция модели и обвязки. Филипп Шмидт (HuggingFace) описал ключевой принцип: лаборатории начинают использовать обвязку как детектор «model drift» — отслеживают, на каком шаге (обычно после 100+) модель начинает деградировать. Эти данные идут напрямую в post-training следующей версии. Результат: модели становятся более стойкими к длинным задачам, а обвязки — тоньше.

Ralph Loop — для задач, не умещающихся в одно контекстное окно: Initializer Agent устанавливает среду, каждая последующая сессия читает git log и progress-файлы, берёт следующую незавершённую задачу, реализует, коммитит, пишет резюме. Файловая система — единственный источник истины между контекстными окнами.

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

Практика

Сценарий

Вы — архитектор AI-системы в 2026 году. Модели быстро умнеют. Нужно принять стратегические решения о развитии обвязки.

Шаг 1 из 30 оптимальных

Команда предлагает добавить сложный компонент "smart context compressor" в обвязку. Новая модель уже умеет это делать сама. Что делать?

❓ Частые вопросы

🏆 Достижения (0/11)

🚀

Первый шаг

Завершите первую секцию курса

На полпути

Завершите 5 из 9 секций

💎

Перфекционист

Получите 100% в любой секции

🏆

Мастер обвязки

Завершите все 9 секций курса

🎓

Сдал экзамен

Пройдите финальный тест с результатом ≥70%

🕰️

Историк обвязки

Завершите секцию «Три эпохи инженерии с LLM»

🛡️

Эксперт надёжности

Завершите секцию о надёжности (слои 07–10)

🔌

MCP-адопт

Завершите секцию о Model Context Protocol

⚖️

Архитектор

Завершите секцию «10 архитектурных развилок»

🔮

Rippable Master

Завершите финальную секцию о Rippable Harness

Быстрый старт

Завершите 3 секции подряд