ИИ-ассистенты и агенты

Чат-бот отвечает словами, а агент берёт и делает: ищет в интернете, считает на калькуляторе, нажимает кнопки — и сам решает, какой инструмент взять на каждом шаге.
ИИ-агент — это языковая модель, которой дали доступ к инструментам (поиск, калькулятор, код, кнопки на сайте) и право решать самой, какие шаги выполнить, чтобы довести задачу до результата, а не просто описать его словами.

Зачем тебе вообще про это знать

Представь, что ты попросил обычный чат-бот: «Узнай, сколько сейчас стоит билет на концерт твоей любимой группы, и посчитай, на сколько походов в кино это хватит». Обычная модель честно ответит что-то вроде: «Зайдите на сайт продажи билетов и сравните с ценой на кино». То есть она тебе расскажет, как это сделать. Но саму работу не сделает.

А теперь представь помощника, который вместо ответа словами реально открывает сайт, находит цену билета, лезет в расписание кинотеатра, берёт калькулятор, делит одно на другое — и присылает готовый ответ: «Билет стоит 4000 рублей, это примерно 13 походов в кино». Вот это и есть агент. Разница как между другом, который говорит «погугли» , и другом, который сам всё нагуглил и принёс ответ на блюдечке.

К концу урока ты будешь чётко понимать, чем ассистент отличается от агента, как агент пользуется инструментами, какие задачи ему можно доверить, а какие пока нет. И главное — научишься трезво смотреть на громкие обещания вроде «ИИ сам сделает за тебя всё», чтобы не разочароваться и не попасть впросак.

Ассистент и агент: в чём разница

Метафора: советчик и стажёр

Чтобы не путаться, держи простую картинку в голове.

Ассистент — это умный советчик. Ты задаёшь вопрос — он отвечает текстом. Он много знает, красиво формулирует, но руки у него связаны: он может только говорить. Обычный ChatGPT в режиме переписки — это ассистент. Ты спрашиваешь — он отвечает, и на этом круг замыкается.

Агент — это стажёр, которому дали не только голову, но и руки. Ты ставишь задачу — а он сам решает, что для неё нужно: сходить поискать, что-то посчитать, открыть нужную программу, проверить результат и, если не вышло, попробовать ещё раз. Он работает по кругу «подумал → сделал шаг → посмотрел, что получилось → подумал дальше», пока не доведёт дело до конца.

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

Заметь: внутри и у ассистента, и у агента сидит одна и та же языковая модель — тот самый трансформер, который предсказывает следующий токен и который мы разбирали в прошлых разделах. Разница не в «мозге», а в том, дали ли ему руки (инструменты) и право действовать по шагам.

Языковая модель — модель, которая предсказывает следующее слово в тексте и так умеет генерировать осмысленные ответы.

Сравним по полочкам

Что сравниваемАссистент (советчик)Агент (стажёр)
Что делаетОтвечает текстом на один запросВыполняет задачу из многих шагов
Доступ к инструментамНет, только словаЕсть: поиск, калькулятор, код, кнопки
Кто решает следующий шагТы, человекСам агент, на каждом шаге
Может проверить себяНетДа: смотрит на результат и исправляется
Пример«Вот рецепт борща»«Я нашёл рецепт, проверил наличие продуктов и составил список покупок»

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

Как агент пользуется инструментами

Цикл «думаю — действую — смотрю»

Главный секрет агента — он работает не одним махом, а по кругу. Этот круг проще всего показать на нашем сквозном примере. Помнишь задачу «отличить кошку от собаки»? Раньше мы решали её одной моделью: подал картинку — получил ответ. Теперь представим её как задачу для агента, у которого есть инструменты.

Допустим, ты дал агенту папку с фотографиями и попросил: «Разложи эти фото по двум папкам — кошки и собаки — и скажи, сколько каких». Вот как агент рассуждает по шагам:

  1. Думаю. «Мне нужно для каждого фото понять, кошка там или собака. У меня есть инструмент-классификатор — та самая модель из прошлых уроков. Начну с первого фото».
  2. Действую. Агент вызывает инструмент-классификатор и передаёт ему первое фото.
  3. Смотрю. Инструмент вернул: «кошка, уверенность 0.93». Агент кладёт фото в папку «кошки».
  4. Думаю дальше. «Одно готово, осталось ещё 49. Беру следующее». И так по кругу, пока фото не кончатся.
  5. Завершаю. Когда все фото разложены, агент считает итог и отвечает: «31 кошка, 19 собак, готово».

Видишь разницу? Сама модель-классификатор не изменилась. Но теперь над ней сидит агент, который сам решает, когда её вызвать, что делать с ответом и когда остановиться. Модель — это инструмент в руках агента, как калькулятор в руках человека.

Какие инструменты бывают

Инструмент для агента — это просто что-то, что он умеет «вызвать», передать туда данные и получить результат. Самые частые:

ИнструментЗачем нуженПример задачи
Поиск в интернетеУзнать свежие факты, которых не было в обучении«Какая погода завтра в моём городе?»
Калькулятор / выполнение кодаТочно посчитать, ведь сама модель в арифметике слаба«Сколько будет 4173 × 289?»
Чтение файловЗаглянуть в документ, таблицу, картинку«Найди ошибку в этом коде»
Другая модельПозвать узкого специалиста под конкретную задачуКлассификатор «кошка/собака» из нашего примера
Действия на сайтеНажимать кнопки, заполнять формы«Забронируй столик на двоих»

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

Разбираем на примерах

Пример 1: текстовый сюжет «Кошка пьёт ...»

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

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

  1. Думаю. «Тут нужен свежий и точный факт, а не моя догадка. Из памяти я могу выдать миф. Лучше поищу».
  2. Действую. Вызывает инструмент поиска: запрос «вредно ли кошкам коровье молоко».
  3. Смотрю. Поиск вернул: у большинства взрослых кошек непереносимость лактозы, молоко вызывает расстройство.
  4. Думаю дальше. «Отлично, факт получен. Теперь оформлю это в памятку из трёх пунктов».
  5. Завершаю. Выдаёт готовую памятку, опираясь на найденный факт, а не на догадку.

Обрати внимание на ключевой момент: агент сам понял, что его собственного «предсказания слова» тут недостаточно, и решил позвать поиск. Это и есть главное умение агента — честно оценить, чего он не знает, и взять подходящий инструмент.

Пример 2: домашка по математике

Ты просишь: «Реши: на вечеринку придёт 28 человек, каждому нужно 3 куска пиццы, в одной пицце 8 кусков. Сколько пицц заказать?»

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

  1. Думаю. «Это задача на счёт. Свою арифметику я не доверяю — возьму инструмент для вычислений».
  2. Действую. Передаёт в калькулятор: 28 × 3 = 84 куска нужно; 84 / 8 = 10,5 пиццы.
  3. Смотрю. Получилось 10,5. «Пиццу не закажешь дробную, надо округлить вверх».
  4. Завершаю. «Нужно 84 куска, это 11 пицц (10,5 округляем вверх)».

Тут видно сразу два качества агента: он отдал точный счёт инструменту, а потом ещё и подумал над результатом — сообразил, что половину пиццы не заказывают. Ассистент-советчик мог бы остановиться на «10,5 пиццы» и оставить тебя в недоумении.

Пример 3: маленький агент в коде

Чтобы цикл «думаю — действую — смотрю» стал совсем нагляден, соберём игрушечного агента на чистом JavaScript. Никакого настоящего ИИ внутри не будет — мы лишь имитируем логику: у агента есть набор инструментов, и он по шагам выбирает нужный. Это концептуальная модель, но она точно повторяет идею.

// Игрушечные инструменты, которыми "пользуется" агент
const tools = {
  search: (q) => "взрослым кошкам молоко чаще вредно",
  calc: (a, b) => a * b
};

// Задачи, которые агент должен выполнить по шагам
const tasks = [
  { type: "search", text: "вредно ли кошкам молоко" },
  { type: "calc", text: "28 гостей по 3 куска", a: 28, b: 3 }
];

// Цикл агента: для каждой задачи решаем, какой инструмент взять
for (const task of tasks) {
  console.log("Думаю над задачей:", task.text);
  let result;
  if (task.type === "search") {
    result = tools.search(task.text);          // действую: ищу
  } else if (task.type === "calc") {
    result = tools.calc(task.a, task.b);        // действую: считаю
  }
  console.log("  -> взял инструмент:", task.type, "| результат:", result);
}

console.log("Все шаги выполнены.");

Вывод:

Думаю над задачей: вредно ли кошкам молоко
  -> взял инструмент: search | результат: взрослым кошкам молоко чаще вредно
Думаю над задачей: 28 гостей по 3 куска
  -> взял инструмент: calc | результат: 84
Все шаги выполнены.

Разберём, что тут происходит. Объект tools — это «руки» агента, набор доступных действий. Массив tasks — список шагов. Цикл for и есть тот самый круг «думаю — действую — смотрю»: на каждом обороте агент печатает, над чем думает, выбирает по типу задачи нужный инструмент (if по task.type), вызывает его и смотрит на результат. Настоящий агент отличается тем, что выбирает инструмент не по жёсткому if, а с помощью языковой модели — но суть цикла ровно такая же.

Частые ошибки и подводные камни

Вокруг агентов сейчас много хайпа, и из-за этого новички наступают на одни и те же грабли. Разберём главные.

  1. Думать, что агент «понимает» задачу как человек. Внутри по-прежнему сидит языковая модель, которая предсказывает токены. Она не осознаёт смысл, а статистически подбирает следующий шаг. Поэтому на запутанной задаче агент может уверенно пойти не туда — точно так же, как ассистент уверенно выдаёт галлюцинацию.
  2. Накопление ошибок по шагам. Чем больше шагов, тем выше шанс, что где-то агент ошибётся, а потом будет строить следующие шаги на кривом результате. Маленькая ошибка на втором шаге может развалить весь план к десятому. Поэтому длинные автономные цепочки пока ненадёжны.
  3. Слепо доверять инструментам. Агент может найти в интернете чушь и честно на неё опереться. Инструмент дал факт — но факт может быть неверным. Хороший агент перепроверяет, плохой — нет, а понять, какой перед тобой, со стороны трудно.
  4. Давать агенту опасные права. Одно дело — разрешить агенту искать в интернете. Совсем другое — дать ему отправлять сообщения, тратить деньги или удалять файлы. Если он ошибётся, последствия будут настоящими. Чем больше у агента «рук», тем осторожнее надо быть.
  5. Ждать, что агент сам всё сделает без присмотра. Реклама обещает «поставь задачу и забудь». На практике агенты пока сильны на коротких, понятных задачах и слабы на длинных и размытых. Лучше всего они работают, когда человек проверяет ключевые шаги, а не уходит пить чай на весь день.
Галлюцинация — уверенно звучащий, но выдуманный или неверный ответ модели.

Мини-практика: спроектируй своего агента

Теория уляжется в голове, только если ты сам прикинешь, как собрать агента. Возьми задачу из своей жизни и распиши её по-агентски — на бумаге или в заметках, код не нужен.

  1. Выбери задачу, которую хочется свалить на помощника. Например: «собрать плейлист на тренировку из 10 энергичных треков» или «найти, в каком магазине рядом дешевле всего любимый снек».
  2. Выпиши, какие инструменты агенту понадобятся: поиск? калькулятор? доступ к музыкальному сервису? к картам?
  3. Распиши цикл «думаю — действую — смотрю» хотя бы на 3–4 шага: что агент сделает первым, что вторым, как поймёт, что пора остановиться.
  4. Отметь хотя бы одно место, где агент может ошибиться (нашёл устаревшую цену, посчитал не то), и придумай, как человек это проверил бы.

Продвинутый вариант: вернись к игрушечному коду из примера 3 и добавь третий инструмент — например, translate, который «переводит» текст (пусть просто возвращает строку с пометкой «переведено»). Добавь в массив tasks задачу с типом translate и допиши ветку if, чтобы агент умел её выполнять. Так ты на практике почувствуешь, что «дать агенту новый инструмент» — это буквально добавить ему новую руку.

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

Итоги

  • Ассистент только отвечает словами на один запрос, а агент выполняет задачу из многих шагов, пользуясь инструментами и сам решая, что делать дальше.
  • Внутри обоих сидит одна и та же языковая модель; разница в том, дали ли ей «руки» (инструменты) и право действовать по циклу «думаю — действую — смотрю».
  • Инструменты агента — это поиск, калькулятор, выполнение кода, чтение файлов, другие модели и действия на сайтах; модель сама не считает и не знает свежих фактов, но умеет решать, какой инструмент позвать.
  • На наших сквозных примерах это видно так: агент сам вызывает классификатор «кошка/собака» для каждого фото, а в текстовом сюжете честно идёт в поиск, поняв, что догадки про молоко мало.
  • Главные подводные камни — накопление ошибок по шагам, слепое доверие инструментам, опасные права и завышенные ожидания: агенты пока сильны на коротких задачах и требуют присмотра человека.

Раньше в этом разделе мы учились правильно ставить задачу модели — вспомни урок про ролевые и пошаговые промпты. Так вот: чёткий пошаговый промпт особенно важен именно для агентов, ведь они и работают по шагам. В следующих уроках раздела мы разберём, как ИИ генерирует не только текст, но и картинки, и как не попасться на сгенерированную подделку — дипфейк. А пока попробуй задание из мини-практики и спроектируй своего первого агента на бумаге.

Проверьте себя
1. Чем агент отличается от обычного ассистента (чат-бота)?
AАгент умнее, потому что внутри у него другая, более мощная модель
BАгент не просто отвечает словами, а выполняет задачу по шагам, пользуясь инструментами
CАгент работает без языковой модели, на чистых правилах
DАгент отвечает быстрее, потому что не думает
2. Как обычно работает агент при выполнении задачи?
AВыдаёт весь ответ одним махом за один шаг
BСпрашивает разрешения у человека на каждое слово
CПо кругу: думает, делает шаг с инструментом, смотрит на результат и думает дальше
DСлучайно перебирает инструменты, пока что-нибудь не сработает
3. Зачем агенту вызывать калькулятор или выполнение кода для арифметики?
AЧтобы ответить медленнее и выглядеть умнее
BПотому что сама языковая модель считает неточно — она предсказывает цифры как токены и может ошибиться
CКалькулятор нужен только для очень больших чисел
DЭто обязательное требование, без калькулятора агент не запустится
4. В примере про кошку и собаку чем стал классификатор «кошка/собака» для агента?
AСамим агентом, который всем управляет
BОдним из инструментов, который агент вызывает для каждого фото
CЗаменой языковой модели внутри агента
DБесполезной деталью, агент справился бы и без него
5. Какой из подводных камней агентов назван в уроке?
AАгенты слишком медленные и поэтому бесполезны
BОшибка на раннем шаге может развалить весь план, и длинные автономные цепочки пока ненадёжны
CАгенты не умеют пользоваться поиском в интернете
DАгенты понимают задачу лучше человека, и это опасно
6. Почему опасно давать агенту слишком широкие права?
AОн начнёт работать слишком быстро
BЕсли агент ошибётся, действия вроде траты денег или удаления файлов приведут к настоящим последствиям
CШирокие права замедляют языковую модель
DЭто вообще ничем не грозит, агент всегда прав