# AI-агент vs чат-бот: в чём разница и как отличить
Каноническая страница: https://plainews.ru/posts/ai-agent-protiv-chat-bota
Опубликовано: 2026-09-03T18:50:21.926Z

Чат-бот отвечает, агент действует. Формула LLM + инструменты + память + цикл, паттерн ReAct и три вопроса, чтобы не купить бота по цене агента.
Чат-бот отвечает. Агент действует. Между ними не «более умная модель», а архитектура: инструменты, память и цикл, который гоняет модель, пока задача не решена. Без этих блоков LLM остаётся болтуном — полезным, но болтуном.

Слово «AI-агент» сейчас вешают на что угодно: GPT-обёртку в Telegram, FAQ с шаблонами, RAG-помощника и систему, которая сама лезет в файлы, БД и API. Из-за этого тарифы слипаются. За агента продают чат-бота. За чат-бота берут деньги как за агента. Ниже — критерии, а не слоган.

> **К сведению.** Короткое определение, на котором сошлись [Anthropic](https://www.anthropic.com/engineering/building-effective-agents) и [Simon Willison](https://simonwillison.net/2025/Sep/18/agents/): LLM, которая в цикле вызывает инструменты, пока не достигнет цели. Память — четвёртый блок, без которого агент забывает работу между сессиями, но минимум уже есть в формуле «tools in a loop».

Ещё по теме на PLai: как подготовить репозиторий к агентам, Cursor с нуля, Claude из России. Лента только про агентов — в теме AI-агенты.

## Зачем это различать

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

| Называют агентом | Что это на самом деле | Один проход? | Сам вызывает инструменты в цикле? |
| --- | --- | --- | --- |
| GPT в Telegram / на сайте | Чат-бот | Да | Нет |
| FAQ с готовыми ответами | Скрипт с шаблонами | Да | Нет |
| «Умный поиск по базе» | RAG-чат-бот | Обычно да | Редко, и то один раз |
| Function calling без петли | Модель + одна функция | Да | Один вызов, не цикл |
| Claude Code, Cursor Agent, Devin | Агент | Нет | Да |

Разница не в маркетинге. У чат-бота простая экономика: один запрос — один ответ. У агента — N вызовов модели, N обращений к файлам и API, риск зациклиться и сжечь бюджет. Поддержка тоже разная: бота чинят промптом, агента — набором инструментов, политикой памяти и стоп-условием.

> **Важно.** Если система не действует во внешнем мире и не крутит цикл сама, это не агент. Полезно — да. Агент — нет.

## Чат-бот: один проход

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

Модель не открывает файлы, не пишет в БД, не вызывает API. Она генерирует токены. Даже если справа в интерфейсе красивая «нейросеть», внутри это f(prompt) → text.

Так устроен обычный ChatGPT без режима агента, большинство GPT-обёрток и «AI на сайте компании», который отвечает из подсказанного контекста. Это не плохо. Это другой класс системы. Разбор корпоративного варианта — в материале не ещё один чат-бот.

## Агент: цикл, а не функция

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

Anthropic отдельно отделяет **агента** от **workflow**. Workflow — заранее прошитая цепочка: шаг 1, шаг 2, шаг 3, модель не выбирает маршрут. Агент сам выбирает, какой инструмент дернуть и сколько кругов сделать. Цитата из Building effective agents: агенты — «обычно просто LLM, которые используют инструменты по обратной связи среды в цикле». Стоп ставят явно: задача решена, нужен человек, кончился лимит итераций.

Модель здесь — policy engine: она выбирает действие. Цикл — runtime: без него политика не исполняется во времени.

## Четыре блока: LLM, инструменты, память, цикл

Когда инженеры из Anthropic, OpenAI, LangChain и независимые разработчики описывают агента, набор сходится. Формула одна.

**Agent = LLM + Tools + Memory + Loop**

Мозг, руки, блокнот и петля решений.

Убери мозг — останется скрипт. Убери руки — чат-бот. Убери память — агент с амнезией, который каждый раз начинает с нуля. Убери цикл — даже «агент с инструментами» сделает один ход и замолчит.

Модель не священна. Меняете Claude Opus на Sonnet или GPT — меняется качество решений, не класс системы. Класс задаёт обвязка.

## Что происходит внутри цикла

Самый распознаваемый паттерн — **ReAct** (Reason + Act), Yao et al., 2022. Модель чередует рассуждение и действие: говорит, что собирается сделать, делает, видит результат, правит план.

На живом примере это выглядит так. Вы просите: «найди, где в src/ обрабатываются ошибки, и предложи рефакторинг». Агент не выдаёт эссе из памяти.

1. **Think.** Нужно понять структуру репозитория.
2. **Act.** Glob / Grep по src/.
3. **Observe.** Список файлов и совпадений.
4. **Think.** Ошибки, похоже, в src/lib/errors.ts и в роуте API.
5. **Act.** Read этих файлов.
6. **Observe.** Код.
7. **Think.** Есть дублирование. Нужно проверить тесты.
8. **Act.** Ещё один поиск.
9. **Ответ.** План рефакторинга со ссылками на файлы — или, если вы разрешили, патч.

Каждый шаг — отдельный вызов модели с обновлённым контекстом. В Cursor это видно в панели агента: мысль, вызов инструмента, наблюдение, снова мысль. В Claude Code то же самое в терминале. Вы не обязаны кликать «теперь прочитай этот файл» — цикл крутится сам.

Другие имена того же семейства: Plan-and-Execute (сначала план, потом шаги), Reflexion (после ошибки явно записывает, что пошло не так). Суть одна: модель → действие → наблюдение → обновление состояния.

> **Подсказка.** Если в логах системы нет чередования «мысль / tool call / result» — перед вами не агент, сколько бы «Agent» ни было на лендинге.

## Два вида памяти

«У агента есть память» почти всегда сваливает в кучу две разные вещи. Они ломаются по-разному.

Типичный сбой короткой памяти — **recency bias**: модель цепляется за последние сообщения и забывает ранние ограничения. Лечат compaction (свернуть старое в саммари) и очисткой старых tool-результатов. Anthropic разбирает это в Effective context engineering for AI agents: контекст — конечный бюджет внимания, не склад.

Типичный сбой длинной памяти — свалка эмбеддингов без правил «что писать» и «когда читать». Паттерн, который держится: **just-in-time context**. Агент хранит ссылки и пути, а нужный кусок достаёт через grep/glob/SQL в момент шага. Стартовая инструкция (CLAUDE.md) — это не «вся память», это устав. Рабочий блокнот — отдельные заметки, которые агент сам ведёт.

> **Нельзя.** Закидывать в system prompt «всё, что агент должен помнить». Так деградирует качество и сгорают токены. Длинная память живёт снаружи и подтягивается выборочно.

## Что чаще всего путают с агентом

Пять подмен. Если узнаёте свою систему — это не приговор, это точное имя.

| Говорят | На деле | Как проверить |
| --- | --- | --- |
| «У нас агент» | RAG-чат-бот | Один проход: нашёл чанки, сгенерировал ответ, стоп |
| «Агент с десятью интеграциями» | Function calling | Модель выбрала одну функцию, отдала результат, цикла нет |
| «Память» | Длинный system prompt | Между сессиями ничего не записывается в файлы/БД |
| «Универсальный агент, который умеет всё» | Франкенштейн из пересекающихся тулов | Модель не понимает, какой инструмент выбрать, токены горят |
| «Автономный агент в проде» | Бесконечный цикл | Нет лимита итераций, нет бюджета, нет условия «готово» |

Anthropic прямо пишет: лучше **curated minimal viable set of tools**, чем «подключить все MCP сразу». Пересекающиеся инструменты — это не мощь, это шум в политике.

Второе, что путают: агент и workflow. n8n-флоу с вызовом LLM на шаге 3 — workflow. Он полезен и предсказуем. Он не выбирает маршрут сам. Назвать его агентом можно только в презентации.

Третье: ChatGPT с GPTs. Плагин и база знаний не делают цикл. Если модель один раз дёрнула действие и ответила — это function calling. Если сама крутит несколько шагов к цели — уже ближе к агенту. Смотрите логи, не название режима.

> **Ошибка.** Loop без стоп-критерия — не агент, а денежный счётчик. В проде обязательны лимит итераций, бюджет токенов и понятное «задача решена».

## Что сделать прямо сейчас

Три упражнения. На каждое — полчаса. После них слоган «у нас агент» либо подтверждается, либо снимается.

### 1. Посмотрите живой цикл

Откройте свой репозиторий в Claude Code или в Cursor. Дайте задачу из двух-трёх шагов, не «напиши функцию с нуля».

```bash
# в корне репозитория, если Claude Code установлен
claude "Посмотри src/, найди где обрабатываются ошибки, предложи рефакторинг. Файлы не меняй — только отчёт со ссылками."
```

Откройте панель инструментов. Должны появиться мысль → чтение файла → мысль → grep → ответ. Это и есть агент. Если модель сразу выдаёт абзац «возможно, ошибки обрабатываются где-то в src» без единого tool call — перед вами чат-бот в IDE.

### 2. Разберите чужой продукт на четыре блока

Возьмите Cursor, Devin, ChatGPT с GPTs, n8n-флоу, «AI-агента» с лендинга. Запишите:

- где LLM;
- какие инструменты (и есть ли они вообще);
- где живёт память — окно чата или файлы/БД;
- есть ли цикл без ваших наводящих вопросов.

Пустой пункт — это не агент. На PLai такие разборы уже были: вечный Codex, ChatGPT Work.

### 3. Три вопроса к своему боту

Скажите вслух, чего не хватает.

1. Вызывает инструменты?
2. Делает больше одного прохода без моих подсказок?
3. Помнит что-то между сессиями — не потому что я вставил прошлый чат, а потому что сам записал?

Два первых «да» — уже агент в смысле Willison/Anthropic. Третье «да» — агент, который переживает перезапуск. Меньше двух — что-то другое. Не хуже. Другое. Называть вещи своими именами дешевле, чем платить за «агентность» обёртке.

## Частые вопросы

### Чем AI-агент отличается от чат-бота?

Чат-бот — один проход «текст → модель → текст». Агент в цикле вызывает инструменты, смотрит результат и сам решает следующий шаг, пока не достигнет цели или стоп-условия.

### ChatGPT — это агент?

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

### RAG-система — это агент?

Нет, если поиск документов и ответ укладываются в один проход. Это чат-бот с поиском. Агентом она станет, если модель сама решает, что искать, ходит в несколько источников, проверяет результат и повторяет.

### Function calling и агент — одно и то же?

Нет. Function calling — способность модели выбрать функцию. Агент — эта способность плюс цикл: вызвал, посмотрел, вызвал ещё, пока цель не закрыта.

### Нужна ли агенту долгая память?

Для одной сессии хватает контекстного окна. Чтобы не начинать с нуля завтра, нужна внешняя память: файлы, заметки, БД. Это не замена циклу и не длинный system prompt.

### Claude Code и Cursor — агенты?

Да, в типичном режиме: модель сама читает и правит файлы, гоняет команды, смотрит вывод. Вы ставите цель и стоп (разрешения, лимиты), цикл крутит runtime IDE или CLI.

### Сколько итераций нормально?

Сколько требует задача, но с потолком. Для «найди файл и поправь функцию» часто 5–15 шагов. Сотни шагов без стопа — либо плохой инструмент, либо отсутствующий критерий готовности. В проде лимит задаёте вы, не модель.

### Можно ли собрать агента в n8n?

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

## Источники

- Anthropic. Building effective agents — агент vs workflow, «LLM + tools in a loop», стоп-условия.
- Anthropic. Effective context engineering for AI agents — compaction, очистка tool-результатов, контекст как бюджет внимания.
- Simon Willison. Agents — «an LLM agent runs tools in a loop to achieve a goal».
- Yao et al. ReAct: Synergizing Reasoning and Acting in Language Models — паттерн Think → Act → Observe.

Дата: 3 сентября 2026. Определения в индустрии ещё плывут, четыре блока и цикл уже нет.
