Вопрос с собеседования · AI и LLM

Как проектировать LLM-агента и почему агенты ломаются?

MiddleИнструменты и агенты
Ещё спрашивают так:
  • Что такое ReAct?
  • Когда нужен агент, а когда достаточно фиксированного конвейера?
Коротко

Агент — цикл: модель решает, какой инструмент вызвать, получает результат и решает дальше, пока задача не решена (паттерн ReAct: рассуждение → действие → наблюдение). Начинать стоит с простейшего решения: фиксированный конвейер (workflow) из нескольких вызовов LLM надёжнее и дешевле агента; агент — когда шаги заранее неизвестны.

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

А ещё Мультиагентные схемы оправданы, когда подзадачи независимы и параллельны; иначе они множат ошибки и стоимость

Подробно

Спектр решений (от простого к сложному):

  1. Один вызов LLM с хорошим промптом и контекстом.
  2. Конвейер: цепочка вызовов, маршрутизация по типу запроса, параллельные вызовы с объединением.
  3. Агент: модель сама выбирает инструменты и число шагов.

Почему агенты ломаются:

  • накопление ошибок на длинных траекториях;
  • зацикливание и повтор одних и тех же вызовов;
  • неудачные инструменты: расплывчатые описания, огромные ответы, непонятные ошибки;
  • переполнение контекста результатами инструментов;
  • prompt injection из данных, которые агент читает (веб-страницы, письма).

Практики:

  • инструменты проектировать как API для модели: строгие схемы параметров, компактные ответы, ошибки с подсказкой, что делать;
  • лимиты на число шагов, время и стоимость;
  • human-in-the-loop для необратимых действий (платёж, удаление, отправка письма);
  • минимальные права инструментов;
  • трассировка каждого шага и оценка на наборе реальных задач.

Что хотят услышать

  • Цикл агента и ReAct.
  • Когда достаточно конвейера.
  • Причины отказов и практики надёжности.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✗Всегда начинать с автономного агента — он гибче фиксированного конвейера
  • ✗Дать агенту как можно больше инструментов, чтобы он справился с любым шагом
  • ✓Начать с простого конвейера; агент — когда шаги заранее неизвестны
  • ✗Сразу строить автономного агента с большим набором инструментов: модель сама выберет нужные, а лимиты шагов только мешают ей довести задачу

Разбор темы

Связанные вопросы

Партнёр платформы

Разбор собеседования с sotto

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

Разбор собеседования