Всем привет!
Меня зовут Александр, я COO в SaaS-платформе аналитики данных. Делюсь полезными материалами, которые считаю стоят внимания. В основном про AI, изменение процессов, тренды и продуктовое видение.

У себя в телеграм-канале делюсь сжатыми и структурированными саммери статей.

Последний месяц начали разгонять новый термин «контекстной инженерии». По мне это звучит так же странно как и промпт-инженер. Это неотъемлемая часть всего процесса по работе с LLM: как задавать вопросы LLM, какие данные загружены в LLM, какие инструменты подключены, на сколько качественно LLM умеет отвечать на вопросы, требуется ли разбивать запросы к LLM на части и пр.
С таким трендом вангую появление контекст-куалити-инженера (понимает как оценивать качество ответов и что требует улучшения) и чейн-аналитикс-инженера (понимает как правильно настроить последовательность запросов к LLM для повышения качества)


Новый навык в AI — это не промптинг, а контекстная инженерия

Контекстная инженерия — это новый термин, набирающий популярность в мире AI. Разговор смещается от «prompt engineering» к более широкой и мощной концепции: контекстной инженерии. Tobi Lutke описывает её как «искусство предоставления всего контекста для задачи, которую можно правдоподобно решить с помощью LLM», и он прав.

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

Что такое контекст?

Чтобы понять контекстную инженерию, мы должны сначала расширить наше определение «контекста». Это не только один промпт, который вы отправляете LLM. Думайте об этом как о всём, что модель видит перед тем, как сгенерировать ответ.

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

  • Пользовательский промпт: Непосредственная задача или вопрос от пользователя.

  • Состояние / История (краткосрочная память): Текущий разговор, включая пользовательские и модельные ответы, которые привели к этому моменту.

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

  • Извлечённая информация (RAG): Внешние, актуальные знания, соответствующая информация из документов, баз данных или API для ответа на конкретные вопросы.

  • Доступные инструменты: Определения всех функций или встроенных инструментов, которые он может вызвать (например, check_inventory, send_email).

  • Структурированный вывод: Определения формата ответа модели, например, JSON-объект.

Почему это важно: от простой демонстрации решения к «волшебному» продукту

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

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

Привет, просто проверяю, свободен ли ты завтра для быстрой синхронизации.

Агент «простой демонстрации» имеет плохой контекст. Он видит только запрос пользователя и больше ничего. Его код может быть совершенно функциональным — он вызывает LLM и получает ответ — но результат бесполезен и роботизирован:

Спасибо за ваше сообщение. Завтра мне подходит. Могу ли я спросить, какое время вы имели в виду?

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

  • Информацию о вашем календаре (который показывает, что вы полностью заняты).

  • Ваши прошлые письма с этим человеком (чтобы определить подходящий неформальный тон).

  • Ваш список контактов (чтобы идентифицировать их как ключевого партнёра).

  • Инструменты для send_invite или send_email.

Затем вы можете сгенерировать ответ.

Привет, Jim! Завтра у меня всё забито, весь день встречи подряд. Четверг утром свободен, если тебе подходит? Отправил приглашение, дай знать, если всё ок.

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

От промптинга к контекстной инженерии

Что такое контекстная инженерия? В то время как «prompt engineering» фокусируется на создании идеального набора инструкций в одной текстовой строке, контекстная инженерия гораздо шире. Скажем просто:

Контекстная инженерия — это дисциплина проектирования и создания динамических систем, которые предоставляют правильную информацию и инструменты, в правильном формате, в правильное время, чтобы дать LLM всё необходимое для выполнения задачи.

Контекстная инженерия — это:

  • Система, а не строка: Контекст — это не просто статичный шаблон промпта. Это результат системы, которая работает перед основным вызовом LLM.

  • Динамичность: Создаётся на лету, адаптируется к конкретной задаче. Для одного запроса это могут быть данные календаря, для другого — письма или веб-поиск.

  • Правильная информация, инструменты в правильное время: Основная задача — убедиться, что модель не пропускает важные детали («Мусор на входе, мусор на выходе»). Это означает предоставление знаний (информации) и возможностей (инструментов) только тогда, когда это необходимо и полезно.

  • Где формат имеет значение: Как вы представляете информацию, имеет значение. Краткое резюме лучше сырого дампа данных. Чёткая схема инструмента лучше расплывчатой инструкции.

Заключение

Создание мощных и надёжных AI-агентов становится меньше связанным с поиском волшебного промпта или обновлениями модели. Это касается инженерии контекста и предоставления правильной информации и инструментов, в правильном формате, в правильное время. Это междисциплинарная задача, которая включает понимание вашего бизнес-случая, определение ваших результатов и структурирование всей необходимой информации так, чтобы LLM мог «выполнить задачу».

Комментарии (0)