Искусство Context Engineering: как сделать AI-агента умнее с помощью фокусированного контекста

Почему контекст важен

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

Context engineering vs prompt engineering

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

Ключевые компоненты эффективного контекста

Системные промпты

Держите системные промпты короткими, конкретными и гибкими. Используйте структурированные секции, такие как , и ## Output format, чтобы сделать поведение явным и модульным. Начинайте с минимальной версии и итеративно улучшайте по результатам тестов, избегая как хрупкой переусложнённости, так и расплывчатых указаний.

Инструменты

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

Примеры и few-shot промпты

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

Знания

Вводите предметно-специфичные артефакты: API, рабочие процессы, модели данных. Это переводит агента от простой предсказательной машины к инструменту принятия решений в предметной области.

Память

Проектируйте память как многослойную систему:

Память обеспечивает непрерывность между ходами, но её нужно кураторить, чтобы не перегружать внимание модели.

Результаты инструментов

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

Динамическое извлечение контекста: сдвиг к just-in-time

Статические, предварительно загруженные контексты уступают место подходу just-in-time (JIT). Вместо того чтобы заполнять окно контекста всеми потенциально релевантными данными заранее, агенты извлекают только те данные, которые необходимы в момент рассуждения, через запросы, доступ к файлам или API. JIT повышает эффективность памяти, снижает шум и напоминает человеческие практики вроде закладок и заметок.

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

Поддержание когерентности на длительных горизонтах

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

Компа́кция (дистиллятор)

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

Структурированные внешние заметки

Записывайте постоянные, лёгкие заметки во внешние хранилища (например, NOTES.md или специализированный инструмент памяти). Эти заметки служат сжатой долгосрочной памятью, к которой агент может обращаться без раздувания активного контекста.

Архитектуры с суб-агентами

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

Последствия для продакшн-систем

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