AI-агент и AI-ассистент: в чём разница и что выбрать для задачи

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

5 мин · · агенты · модели

Слова «модель», «ассистент» и «агент» в разговорах про нейросети часто используют как синонимы, хотя за ними разные вещи с разной ценой и разными рисками. Если вы выбираете инструмент под задачу и хотите понять, в чём разница между AI-агентом и AI-ассистентом, начните с трёх уровней: сама модель, ассистент вокруг неё и агент, который действует. Ниже разбор на примерах, таблица сравнения, небольшой пример кода и правило, когда достаточно обычного чата.

Три уровня: модель, ассистент, агент

Модель (LLM)

Языковая модель получает текст и возвращает текст. Всё остальное делается вокруг неё. Через API она не помнит предыдущих запросов: историю диалога вы каждый раз отправляете заново. Если спрашивают «AI agent vs LLM», то ответ такой: LLM — это «двигатель», а агент — «машина» с рулём, топливом и маршрутом.

Примеры моделей из каталога Zukko: claude-sonnet-5-5, gpt-6.1-sol, deepseek-v4.1-flash. Один ключ позволяет вызывать любую из них.

Ассистент

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

Агент

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

  1. Модель получает цель и список доступных инструментов.
  2. Она отвечает либо текстом (задача закончена), либо запросом на вызов инструмента.
  3. Программа выполняет инструмент и возвращает результат модели.
  4. Шаги 2-3 повторяются до остановки.

Если коротко, что такое AI-агент: программа, где модель принимает решения в цикле, а не один раз отвечает на запрос.

Сравнение

КритерийЧат-ассистентАгент
Кто делает действияВыАгент через инструменты
Число обращений к модели на задачуОдно или несколько, по вашему желаниюСтолько, сколько шагов выберет агент
КонтекстРастёт по мере диалогаРастёт на каждом шаге вместе с результатами инструментов
Предсказуемость расходаВысокаяНиже: число шагов заранее неизвестно
РискиНеверный советНеверное действие: удалённый файл, лишний запрос, зацикливание
КонтрольВы читаете ответНужны подтверждения, песочница, лимиты

Примеры из практики

«Объясни ошибку в этом стектрейсе». Вы вставляете текст, получаете объяснение. Это задача для ассистента: нужен один запрос, действий вне чата не требуется.

«Найди, почему падает тест, и исправь». Нужно прочитать файлы, запустить тест, внести правку, снова запустить. Это работа агента, например Claude Code или opencode. Один человек может провести эти шаги вручную через чат, но придётся копировать результаты туда и обратно.

«Ответь клиенту по шаблону». Ассистент с хорошей инструкцией. Агент здесь не нужен, он только добавит риск и расход.

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

Минимальный пример агента

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

bash
import json
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.zukko.pro/v1", api_key=os.environ["ZUKKO_API_KEY"])

tools = [{
    "type": "function",
    "function": {
        "name": "read_file",
        "description": "Прочитать текстовый файл по пути",
        "parameters": {
            "type": "object",
            "properties": {"path": {"type": "string"}},

Без цикла это был бы ассистент: один запрос, один ответ. Цикл с инструментами делает из него агента. Реальные агенты добавляют песочницу, подтверждения и учёт расхода, а в этом примере нет проверки пути, поэтому на реальных данных его использовать нельзя. Полный разбор есть в статье Как создать ИИ-агента на Python с нуля.

Что выбрать для задачи

Задайте себе четыре вопроса:

  1. Нужно ли выполнять действия, а не только получить текст? Если нет, берите чат или обычный вызов модели из кода.
  2. Известен ли порядок шагов заранее? Если известен, пишите скрипт и вызывайте модель в нужных точках: дешевле и предсказуемее.
  3. Можете ли вы ограничить область действий агента? Если нет (нет песочницы, нет резервных копий), начните с ассистента.
  4. Есть ли способ проверить результат? Агент, который сам запускает тесты, может исправить себя. Агент без проверки уверенно ошибается.

Подробнее про устройство готовых агентов — в статье Что такое агентный harness.

Сколько стоит разница

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

Для новичков стоит начать с документации для начинающих: она объясняет, как получить ключ и сделать первый запрос. Создать ключ можно в кабинете Zukko. Один ключ работает с моделями Claude, GPT, Gemini, DeepSeek, Qwen и GLM.

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

Агент всегда лучше ассистента?

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

Чем агент отличается от скрипта с вызовом модели?

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

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

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

Как не потерять контроль над расходом?

Задайте потолок числа шагов, отдельный ключ с дневным лимитом и следите за расходом в разделе «Использование».

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.