Гайд · TNWS AI

Как настроить function calling в YandexGPT через tools и JSON Schema

WindowsmacOSLinuxYandexGPT#YandexGPT#function calling#JSON Schema
2 мин

Вызов функций YandexGPT: поле tools, JSON Schema, ToolCallList, ToolResultList, серверная проверка аргументов и прав.

Передайте функции в поле tools. Если модель решит вызвать инструмент, ответ содержит ToolCallList; выполните функцию на своём сервере и верните ToolResultList. YandexGPT не обращается к вашей CRM или устройству самостоятельно — она формирует структурированный запрос.

Рабочий пример

"tools":[{
 "function":{
  "name":"weatherTool",
  "description":"Возвращает прогноз для указанного города",
  "parameters":{
   "type":"object",
   "properties":{
    "city":{"type":"string"},
    "days":{"type":"integer","minimum":1,"maximum":5},
    "units":{"type":"string","enum":["metric","imperial"]}
   },
   "required":["city"]
  }
 }
}]

Проверенные факты

  • required определяет обязательные аргументы; minimum/maximum и enum ограничивают базовые значения.
  • Наличие tools не заставляет модель вызывать функцию: она может сразу вернуть текст.
  • ToolCallList является предложением вызова, не доказательством безопасности операции.
  • Результат отправляется как ToolResultList, после чего модель формирует финальный ответ.

Порядок действий

  1. Опишите функцию так, чтобы назначение не пересекалось с другими инструментами.
  2. Разберите ToolCallList и проверьте JSON Schema на сервере.
  3. Примените авторизацию, allowlist городов/объектов и таймаут.
  4. Верните точный результат либо структурированную ошибку через ToolResultList.
  5. Сравните финальный текст с фактическими данными инструмента.

Как проверить результат

Запросите 3 дня, затем 100 дней: второй аргумент должен быть отклонён диапазоном или backend. Попробуйте инструмент изменения с чужим объектом — авторизация обязана сработать после схемы.

Ограничения

По документации вызовы функций доступны не для всех моделей; официально перечислены поддерживаемые варианты, включая YandexGPT Pro в соответствующем API. Матрица может меняться.

Чего не делать

  • Не запускайте произвольную команду из аргументов.
  • Не считайте enum проверкой прав.
  • Не скрывайте ошибку функции выдуманным успехом.

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

Что возвращает модель?

ToolCallList с именем и аргументами.

Кто вызывает API погоды?

Ваше приложение.

Как вернуть результат?

Через ToolResultList по схеме API.

Модель всегда вызывает функцию?

Нет.

Официальный источник

Проверено 12 сентября 2026 года: https://yandex.cloud/ru/docs/foundation-models/concepts/yandexgpt/function-call

Читайте также

Комментарии

Пока тихо. Скажите первое слово