# ИИ-агент: что это и как он работает локально

Источник: https://modelium.tech/zhurnal/ii-agent/

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

**Источники проверены 24 сентября 2026 года.** Это объяснение архитектуры и инструкция для самостоятельной проверки, не отчёт о запуске Modelium. Скорость, точность, память и отсутствие внешнего трафика на конкретном устройстве нами не измерялись.

## Чем ИИ-агент отличается от чат-бота и автоматизации?

Обычный чат возвращает ответ на сообщение. В *workflow* маршрут действий заранее задаёт программа; модель может участвовать в одном или нескольких его шагах. В агентной схеме модель сама выбирает следующий шаг и инструмент из разрешённого набора, а программа проверяет и исполняет запрос. Такую границу между фиксированным workflow и динамическим агентом проводят Anthropic и документация LangGraph [s1](#src-s1) [s3](#src-s3). Поэтому «агент» — не синоним любого чат-бота с длинным системным промптом.

**Пример задачи:** узнать статус тестовой заявки по её ID. Чат без инструмента может лишь ответить из уже данного текста; агентное приложение может предложить `lookup_ticket`, получить статус от функции и объяснить его пользователю. По схеме tool calling в Ollama модель возвращает *предложение* вызова (`tool_calls`), но функция исполняется кодом приложения; результат передаётся модели отдельным сообщением инструмента [s2](#src-s2) [s7](#src-s7). Это не разрешение агенту самостоятельно читать CRM или менять заявки.

Если порядок всегда один — «прочитать ID → вызвать одну заранее выбранную функцию → показать статус» — для этого достаточно обычного кода или workflow. Агент нужен как архитектурный вариант, когда выбор следующего действия действительно зависит от данных и требует гибкости; даже тогда каждая операция остаётся в пределах разрешённых функций [s1](#src-s1) [s3](#src-s3).

## Из чего состоит локальная схема?

- **Задача и критерий результата.** Для теста: по заявке `A-17` получить статус из синтетического словаря и показать ровно этот статус; неизвестный ID должен вызвать отказ. Это предлагаемый нами критерий проверки, не измеренный результат.

- **Модель и устройство.** Каталог Ollama перечисляет конкретный тег `qwen3:8b`, а официальная документация использует семейство `qwen3` в примерах tool calling [s6](#src-s6) [s2](#src-s2). Сверьте выбранный тег с доступным железом по [гайду об устройстве](/zhurnal/kompyuter-dlya-lokalnyh-modeley/): размер файла весов **не** равен минимуму RAM/VRAM, а качество вызова для вашего случая проверяется отдельно.

- **Runtime и инструменты.** Локальный Chat API Ollama принимает историю `messages` и список `tools`; в ответе возможен `message.tool_calls` [s7](#src-s7). Приложение сопоставляет имя и аргументы вызова с разрешённой функцией, исполняет её и возвращает результат модели в следующем сообщении [s2](#src-s2).

- **Граница безопасности.** Дайте тесту лишь функцию чтения синтетического статуса. OWASP рекомендует минимально необходимые права, отдельные разрешения на чувствительные операции и человеческое подтверждение таких операций [s5](#src-s5). Не подключайте к первому тесту рабочую CRM, запись в файлы или внешние сервисы.

Такая схема связывает **задачу → конкретный тег модели → проверку устройства → локальный runtime → демонстрационный гайд → наблюдаемый результат**. Она не обещает, что любой тег вызовет функцию правильно на первом запросе: отказ, неверное имя или аргумент — полезный диагностический результат.

## Нужен ли агенту MCP?

Нет. Tool calling — способность приложения передать модели описание функции и получить предложение её вызова; Ollama документирует этот цикл без MCP [s2](#src-s2). MCP — отдельный протокол для обнаружения и вызова инструментов между клиентом и сервером: в версии спецификации от 25 ноября 2025 года описаны методы `tools/list` и `tools/call` [s4](#src-s4). Из наличия MCP-сервера **не следует**, что модель корректно выберет функцию, а из локальной модели — что MCP включён. Если потребуется подключать внешние системы, сначала изучите [объяснение MCP](/spravochnik/mcp/), затем отдельно задайте разрешения и проверку результата.

## Как проверить, что агент действительно что-то сделал?

Откройте [пошаговый локальный пример](/zhurnal/kak-sozdat-ii-agenta/) с Ollama, точным тегом модели и синтетической заявкой. В нём код требует один вызов разрешённой функции, проверяет имя и `ticket_id`, печатает статус **после** исполнения функции и лишь затем передаёт его модели. Сравните напечатанный статус с тестовым словарём. Одна лишь фраза модели «я проверил заявку» ничего не доказывает: по документации данные инструмента должны попасть в следующий шаг через фактически исполненный вызов [s2](#src-s2) [s7](#src-s7).

Для более сложного процесса заранее сохраните: вход, доступные функции, предложенные вызовы и их аргументы, фактические результаты, отказы и окончательное решение человека. LangGraph показывает построение маршрутов и графа для таких шагов; его наличие само по себе не служит тестом качества или безопасности [s3](#src-s3). Если входной документ или веб-страница содержит команды для агента, рассматривайте их как недоверенные данные: OWASP выделяет prompt injection и рекомендует ограничение полномочий и контроль чувствительных действий [s5](#src-s5).

**Следующий шаг:** [соберите учебного локального агента с одной функцией чтения](/zhurnal/kak-sozdat-ii-agenta/). Для рабочего процесса сперва опишите контроль и критерии пилота в [сценарии агента для бизнеса](/zhurnal/ii-agent-dlya-biznesa/), а не расширяйте права демонстрационного скрипта без проверки.

## Источники

1. [Anthropic — Building effective agents](https://www.anthropic.com/engineering/building-effective-agents) — получено 2026-09-24
2. [Ollama — Tool calling](https://docs.ollama.com/capabilities/tool-calling) — получено 2026-09-24
3. [LangGraph — Workflows and agents](https://docs.langchain.com/oss/python/langgraph/workflows-agents) — получено 2026-09-24
4. [Model Context Protocol — Tools, specification 2025-11-25](https://modelcontextprotocol.io/specification/2025-11-25/server/tools) — получено 2026-09-24
5. [OWASP Cheat Sheet Series — AI Agent Security](https://cheatsheetseries.owasp.org/cheatsheets/AI_Agent_Security_Cheat_Sheet.html) — получено 2026-09-24
6. [Ollama Library — Qwen3 tags](https://ollama.com/library/qwen3) — получено 2026-09-24
7. [Ollama API — Generate a chat message](https://docs.ollama.com/api/chat) — получено 2026-09-24
