ИИ-агент (AI agent) — система, которая не только отвечает текстом, но и может планировать последовательность шагов, использовать инструменты, наблюдать результат и продолжать работу до заданной точки остановки. Обычный чат в основном предлагает вам следующий ответ. Агент способен, например, открыть набор файлов, найти нужные сведения, составить таблицу, проверить её и сохранить результат.

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

Из чего состоит агент

У простого агента есть пять частей.

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

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

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

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

Точка остановки сообщает, когда работа закончена или требует человека: достигнут результат, исчерпан лимит, обнаружена неоднозначность либо предстоит важное внешнее действие.

Такую схему иногда называют «человек в контуре» (human in the loop): система выполняет рутину, но человек сохраняет контроль над решениями с последствиями.

Где агент действительно полезен

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

Подходящие примеры:

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

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

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

Главные риски

Ошибочная цель

Агент может аккуратно выполнить не ту задачу. Чем длиннее автономный цикл, тем дороже раннее недоразумение. Просите сначала повторить цель, ограничения и критерии готовности. Для нового процесса утверждайте план до запуска действий.

Избыточные полномочия

Если для чтения трёх файлов агенту дали доступ ко всему диску и почте, последствия возможной ошибки стали намного серьёзнее. Принцип наименьших привилегий (least privilege) означает: только нужный каталог, только чтение, отдельная копия данных и ограниченный срок доступа.

Инъекция в подсказку

Инъекция в подсказку (prompt injection) — инструкция, спрятанная во внешнем материале: на странице, в письме или документе. Она пытается заставить агента игнорировать исходную задачу, раскрыть данные или выполнить действие. Текст из интернета нельзя считать доверенной командой. Агент должен воспринимать его как данные, а инструкции принимать только из заранее определённого канала.

Накопление ошибок

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

Необратимое действие

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

Первый запуск: десять шагов

Ниже приведён безопасный учебный сценарий. Агент создаёт конспект из нескольких публичных текстовых файлов в отдельной папке. Он ничего не публикует и не меняет оригиналы.

Шаг 1. Выберите безвредную задачу

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

Шаг 2. Опишите результат

Запишите критерий: «Создан один Markdown-файл с кратким конспектом каждого источника, общими темами, списком расхождений и ссылкой на имя исходного файла. Не более 1200 слов. Факты, которых нет в источниках, не добавлены».

Такой результат можно открыть и проверить. Формулировка «изучи файлы» не объясняет, когда остановиться.

Шаг 3. Создайте отдельную рабочую область

Скопируйте материалы в новую папку. Разрешите агенту работать только там. Если сервис поддерживает режим только для чтения, используйте его для исходников. Результат сохраняйте в отдельной подпапке. Это упрощает сравнение и удаление пробного запуска.

Шаг 4. Ограничьте инструменты

Для конспекта нужны чтение файлов и создание одного нового файла. Интернет, почта, календарь и выполнение системных команд не нужны. Отключите их. Не давайте права «на всякий случай».

Шаг 5. Задайте запреты

Напишите явно: не изменять и не удалять исходники; не обращаться к сети; не включать сведения вне файлов; не продолжать при нечитаемом формате; не перезаписывать существующий результат без подтверждения.

Запрет не является технической гарантией, поэтому его дополняют ограничениями доступа и копиями.

Шаг 6. Попросите план

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

Шаг 7. Установите лимиты

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

Шаг 8. Запустите с контрольной точкой

Попросите остановиться после предварительной структуры. Сверьте заголовки с исходниками. Только затем разрешите создать полный конспект. Так ранняя ошибка не распространится на весь материал.

Шаг 9. Проверьте результат

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

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

Шаг 10. Завершите доступ

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

Шаблон инструкции

Цель: создай один конспект по файлам в папке sources.

Готово, когда: каждый источник представлен отдельным разделом, общие темы и противоречия перечислены, объём не превышает 1200 слов.

Разрешено: читать файлы в sources, создать новый файл в output.

Запрещено: менять исходники, обращаться к сети, использовать сведения не из файлов, публиковать или отправлять результат.

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

Шаблон не универсален. Меняйте его под реальную задачу и доступные технические ограничения.

Когда остановить агента

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

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

Расширяйте полномочия поэтапно: сначала чтение, затем черновик и обратимые изменения в копии. Внешние действия разрешайте только после проверок и с отдельным подтверждением.

Лестница автономности

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

Уровень 0. Совет

Система предлагает план или текст, но ничего не читает и не изменяет за пределами беседы. Пользователь сам переносит данные и выполняет действия. Это подходящий старт для новой задачи.

Уровень 1. Чтение

Агент получает доступ к ограниченному набору копий и создаёт ответ в чате. Он не изменяет источники. Риск связан с конфиденциальностью и неверным выводом, но радиус технического изменения мал.

Уровень 2. Черновик в песочнице

Система создаёт новые файлы в отдельной папке или тестовом проекте. Результат можно сравнить и удалить. Здесь проверяются формат, полнота и журнал операций.

Уровень 3. Обратимое изменение

Агент меняет рабочую копию с версионированием и понятным откатом. Перед применением человек видит разницу. Пример — предложенная правка документа или ветка кода, которая ещё не опубликована.

Уровень 4. Подтверждаемое внешнее действие

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

Уровень 5. Ограниченная автоматизация

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

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

Что должно быть видно во время работы

Наблюдаемость (observability) позволяет понять состояние агента по журналу событий. Для серьёзной задачи нужно видеть:

  • исходная цель и утверждённая версия плана;
  • список доступных инструментов и разрешений;
  • источники данных для каждого этапа;
  • созданные, изменённые и удалённые объекты;
  • ошибки, повторы и исчерпанные лимиты;
  • запросы ручного подтверждения;
  • финальный критерий завершения.

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

Фраза агента «готово» не является проверкой. Готовность подтверждает внешний сигнал: файл существует и открывается, тест прошёл, число строк совпало, сообщение осталось в черновиках, а оригиналы не изменились.

Проектирование подтверждений

Частые бессмысленные окна «разрешить?» приучают соглашаться автоматически. Подтверждение должно появляться на границе риска и отвечать на четыре вопроса:

  1. что именно произойдёт;
  2. с каким объектом или адресатом;
  3. можно ли это отменить;
  4. какие данные покинут текущую область.

Хороший запрос: «Отправить письмо с темой X одному адресату Y? Вложение Z будет передано внешней организации; отменить отправку после доставки нельзя». Плохой: «Агенту нужны дополнительные разрешения для продолжения».

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

Разбор неудачного запуска

Если результат неверен, не ограничивайтесь новой фразой в промпте. Найдите первый этап, на котором наблюдаемое состояние отклонилось от ожидаемого:

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

Исправляйте самый ранний контролируемый дефект. Если агент взял не тот файл, усиление финальной просьбы «будь точнее» не поможет; нужно ограничить список источников. Если отсутствует тест, добавьте внешний критерий. Если действие слишком опасно, снизьте автономность.

После сбоя сохраните безопасный журнал, отзовите временные доступы и проверьте внешние системы независимо. Не запускайте тот же цикл повторно, пока не понятны сделанные изменения.

Минимальная карточка процесса

Перед регулярным использованием запишите на одной странице:

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

Карточка показывает, кто действует при ошибке и где проходит граница автоматизации.

Передавайте агенту только чётко ограниченную рутину. Оставляйте человеку решения с последствиями и заранее задавайте условия остановки.