Перейти к содержимому
PD
ИИ-агенты

Создание ИИ-агента: от промпта до продакшена

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

Все статьи гида ИИ-агенты · 11

Создание агента редко упирается в модель. Оно упирается в постановку, инструменты и то, как система ведёт себя, когда что-то пошло не так.

Шаг 1. Постановка задачи

До кода нужно ответить на три вопроса.

Что считается выполненной задачей? Ответ должен быть проверяемым. «Обработал обращение» - не критерий. «Создан тикет с заполненными полями категории и приоритета» - критерий, его можно проверить программой.

Что агент не должен делать ни при каких условиях? Этот список превращается не в текст промпта, а в отсутствующие инструменты и в ограниченные права. Написанное в промпте ограничение соблюдается обычно, а не всегда.

Что происходит при неудаче? Остановиться и позвать человека, повторить, откатить. Отсутствие ответа на этот вопрос - самая частая причина того, что агент в проде ведёт себя странно.

И перед всем этим полезно спросить: а нужен ли здесь агент вообще. Если процесс известен целиком, дешевле и надёжнее сделать воркфлоу. Разбор критерия - в пилларе гида.

Шаг 2. Выбор инструментов

Инструменты определяют потолок агента. Он не сделает того, для чего у него нет инструмента, и сделает всё, для чего есть.

Принципы, которые окупаются:

  • Инструмент делает одну вещь. «Работа с заказом» с пятью режимами внутри - плохой инструмент: агент будет путать режимы.
  • Описание пишется для того, кто не видел вашей системы. Оно должно отвечать, когда инструмент применяется и когда не применяется. Это буквально то, по чему модель делает выбор.
  • Опасное - отдельно. Чтение и запись разделены. Удаление либо отсутствует, либо требует подтверждения человеком.
  • Ошибка возвращается текстом, а не исключением. Агент должен прочитать, что пошло не так, и попробовать иначе. Молчаливый провал он трактует как успех.
  • Права минимальны. Отдельный пользователь базы, только нужные таблицы. Это единственное ограничение, которое действительно работает.

Шаг 3. Цикл

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

Лимит шагов. Обязателен. Без него зациклившийся агент жжёт деньги, пока кто-нибудь не заметит.

Условие остановки. Явное: агент вызвал инструмент завершения либо сработал проверяемый критерий. «Модель написала, что закончила» - слабое условие, потому что она напишет это и в середине.

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

Идемпотентность. Каждое действие с внешним эффектом должно быть безопасно при повторе - см. идемпотентные пайплайны.

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

Шаг 4. Тестирование до запуска

Агент недетерминирован, поэтому обычное «прогнали один раз, работает» здесь ничего не значит.

  • Один и тот же вход несколько раз. Разброс поведения виден только так.
  • Реальные данные, а не придуманные. Настоящие обращения содержат опечатки, обрывы и пустые поля, на которых демо разваливается.
  • Сбои инструментов. Проверьте, что агент делает, когда API отвечает ошибкой или таймаутом. Обычно выясняется, что он сообщает об успехе.
  • Граничные случаи. Пустой ввод, данных нет, данных слишком много.
  • Стоимость и число шагов. Замерьте на реальной выборке. Именно здесь обнаруживается, что средняя задача занимает не пять шагов, а двадцать.

Шаг 5. Вывод в прод

Порядок, который снимает большую часть рисков:

  1. Режим наблюдения. Агент работает и предлагает, но действие выполняет человек. Неделя такого режима показывает реальную частоту ошибок.
  2. Узкий срез. Один тип задач, один клиент, малый объём.
  3. Верификация до расширения. Отчёт агента проверяется программой, а не читается человеком.
  4. Мониторинг. Число шагов, доля неудач, стоимость. Тихая деградация заметна только по цифрам.
  5. Расширение. Только после того, как первые четыре пункта отработали.

Подробнее про guardrails и верификацию - в статье про внедрение агентов. Пошаговый разбор на конкретной задаче - здесь. Общая картина - гид по ИИ-агентам.

Вопросы и ответы

С чего начинать создание ИИ-агента?

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

Нужен ли фреймворк для агента?

Не обязательно. Цикл агента - это примерно тридцать строк кода: вызвать модель, выполнить запрошенный инструмент, вернуть результат, повторить. Фреймворк даёт готовую обвязку и абстракции, которые начинают мешать ровно тогда, когда нужно нестандартное поведение.

Сколько инструментов давать агенту?

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

Ещё по теме