Перейти к основному содержимому

Инструменты и функции

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

Типы инструментов

Пользовательские функции

Функции — это код (Python или JavaScript), который агент может вызвать для выполнения конкретной задачи. Функции создаются в разделе Функции проекта и затем подключаются к агенту.

Подключение функций

  1. На странице редактирования агента найдите секцию Функции в правой панели.
  2. Раскройте выпадающий список.
  3. Выберите одну или несколько функций из списка доступных.
  4. Для обновления списка нажмите кнопку обновления.

Каждая функция в списке отображается с именем в формате имя_функции().

Как это работает

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

Совет

Давайте функциям понятные имена и описания — это помогает агенту правильно определять, когда их использовать. Например, get_weather(city) с описанием «Получить текущую погоду в указанном городе» лучше, чем func1().

MCP-серверы

MCP (Model Context Protocol) — стандартный протокол для подключения внешних инструментов к LLM. MCP-серверы предоставляют наборы инструментов, которые агент может использовать.

Подключение MCP-сервера

  1. На странице редактирования агента найдите секцию MCP серверы.
  2. Выберите сервер из выпадающего списка. В списке отображается имя сервера и количество доступных инструментов.
  3. Нажмите Добавить.

После добавления сервер появляется в списке подключённых серверов.

Выбор инструментов

По умолчанию агенту доступны все инструменты подключённого MCP-сервера. Для ограничения набора инструментов:

  1. Нажмите на строку сервера для раскрытия списка инструментов.
  2. Снимите галочки с инструментов, которые не нужны агенту.
  3. Используйте кнопку Выбрать все / Снять все для массового управления.

Каждый инструмент отображается с именем и кратким описанием. Рядом с сервером показывается счётчик выбранных инструментов (например, 3/10 tools).

Управление MCP-серверами

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

Процессы (Workflows)

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

Подключение процессов

  1. На странице редактирования агента найдите секцию Процессы.
  2. Выберите один или несколько процессов из выпадающего списка.
  3. Для обновления списка используйте кнопку обновления.
Примечание

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

База знаний (RAG)

Поиск по загруженным документам организации через RAG-систему (Retrieval-Augmented Generation).

Включение

  1. На странице редактирования агента раскройте секцию База знаний (RAG) в настройках.
  2. Включите переключатель Поиск по документам.

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

OpenAI Vector Store

Для поиска по документам, загруженным в OpenAI Vector Store:

  1. В секции База знаний (RAG) найдите поле OpenAI Vector Store.
  2. Введите ID хранилища в формате vs_....
  3. Можно указать несколько ID через запятую или пробел.
Важно

Для работы с OpenAI Vector Store необходим активный API-ключ OpenAI.

Веб-браузер

Агент может взаимодействовать с веб-сайтами: открывать страницы, кликать по элементам, заполнять формы и извлекать данные.

Включение

  1. Раскройте секцию Веб-браузер в настройках.
  2. Включите переключатель.

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

Инструменты памяти

При включении долгосрочной памяти агент автоматически получает набор инструментов для работы с хранилищем:

  • save_memory — сохранить факт.
  • retrieve_memory — получить сохранённый факт.
  • list_memories — список всех сохранённых фактов.
  • delete_memory — удалить факт.

Подробнее — в разделе Память агента.

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

Процесс работы с инструментами:

  1. Агент получает сообщение пользователя.
  2. LLM анализирует запрос и доступные инструменты.
  3. Если нужен инструмент, LLM формирует вызов с аргументами.
  4. Платформа выполняет вызов и возвращает результат.
  5. LLM использует результат для формирования ответа или вызывает следующий инструмент.
  6. Цикл повторяется до 10 раундов или пока LLM не сформирует финальный ответ.
Примечание

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

Формат вывода

Текстовый формат

По умолчанию агент возвращает ответ в виде обычного текста.

JSON формат

Для получения структурированных ответов:

  1. В секции Формат ответа выберите JSON.
  2. Нажмите Настроить JSON Schema.
  3. В боковой панели определите JSON Schema ответа.

Пример JSON Schema

{
"type": "object",
"properties": {
"answer": { "type": "string" },
"confidence": { "type": "number" },
"sources": {
"type": "array",
"items": { "type": "string" }
}
},
"required": ["answer", "confidence"],
"additionalProperties": false
}
Важно

Для работы в строгом режиме OpenAI (strict mode) схема должна содержать "additionalProperties": false. Редактор проверяет это и показывает предупреждение, если поле отсутствует.

Валидация схемы

Редактор автоматически проверяет:

  • Корректность JSON-синтаксиса.
  • Наличие обязательного поля type.
  • Наличие properties для объектных типов.
  • Наличие additionalProperties: false для строгого режима.

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