Термин AI-агенты и интеграции Начальный

Function calling

Function calling — способ, при котором модель выбирает функцию и возвращает структурированные аргументы, а код приложения выполняет действие.

function call вызов функции LLM function calling model function call structured function call вызов инструмента
Function calling — это механизм, который позволяет модели не просто отвечать текстом, а выбрать заранее описанную функцию и подготовить для нее аргументы в структурированном виде.

Проще говоря, модель говорит приложению: “нужно вызвать вот эту функцию с такими параметрами”. Например, `create_ticket` с темой, описанием и приоритетом; `search_orders` с номером телефона; `send_email` с адресом, темой и текстом. Важно: обычно сама модель не выполняет действие напрямую. Она предлагает вызов, а backend проверяет аргументы и вызывает реальный код или API.

Function calling полезен, когда AI должен работать с внешними системами: CRM, календарем, почтой, базой данных, платежами, таблицами, helpdesk или внутренним API. Вместо хрупкого разбора текста приложение получает предсказуемую структуру: имя функции, JSON-аргументы, типы полей и результат выполнения.

Но function calling требует контроля. Нужно описывать schema, валидировать аргументы, ограничивать опасные функции, проверять права пользователя, логировать вызовы и отправлять рискованные действия на human approval. Иначе модель может выбрать неверный инструмент или передать некорректные параметры.

Примеры

  • Модель выбирает функцию `get_weather` и передает город в JSON-аргументах.
  • AI-агент поддержки вызывает `create_ticket`, если вопрос клиента требует второй линии.
  • Функция `search_crm_deal` получает `email` и возвращает данные сделки из CRM.
  • Перед отправкой письма backend показывает function call человеку на approval.
  • Если аргументы не проходят JSON Schema, приложение не вызывает функцию и просит модель исправить формат.

Где используется

  • Подключение LLM к API, CRM, helpdesk и внутренним системам
  • Создание AI-агентов, которые могут выполнять действия
  • Структурированное извлечение параметров из пользовательского запроса
  • Поиск данных, создание тикетов, отправка сообщений и обновление статусов
  • No-code и low-code автоматизации с LLM
  • Контроль write-действий через approval workflow
  • Логирование tool calls, отладка и evals агентских сценариев

Связанные термины

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

Function calling и tool calling — это одно и то же?

Термины близкие. Function calling чаще описывает вызов конкретной функции с аргументами. Tool calling шире: инструментом может быть API, поиск, браузер, база данных, кодовый интерпретатор или другой сервис.

Модель сама выполняет функцию?

Обычно нет. Модель выбирает функцию и формирует аргументы. Реальное выполнение делает приложение или backend после валидации, проверки прав и политики безопасности.

Зачем нужна schema для function calling?

Schema описывает доступные поля, типы, обязательные параметры и допустимые значения. Она снижает хаос и помогает backend безопасно проверить аргументы перед выполнением.

Какие риски есть у function calling?

Неверный выбор функции, неправильные аргументы, prompt injection, доступ к лишним данным, повторные write-действия, отсутствие idempotency и выполнение опасной операции без approval.

Где читать дальше

Статьи по теме

Инструменты

Связанные инструменты