Вызов функций (function calling)
Function calling — режим вывода ИИ-модели, при котором вместо произвольного текста она генерирует структурированный JSON-запрос на исполнение заранее определённой функции с конкретными аргументами. Это надёжный способ интеграции языковых моделей с внешним кодом и API.
Function calling (вызов функций) — режим вывода языковой модели, при котором вместо текстового ответа модель генерирует машиночитаемый вызов функции: её название и аргументы в формате JSON, строго соответствующем заранее переданной схеме. Концепция получила широкое распространение после того, как OpenAI добавила нативную поддержку function calling в GPT-3.5 и GPT-4 в июне 2023 года, что позволило надёжно подключать языковые модели к внешнему коду.
Разработчик передаёт модели список доступных функций вместе с промптом. Модель анализирует запрос, выбирает подходящую функцию и формирует JSON-объект с аргументами. Приложение исполняет функцию, результат возвращается модели, которая включает его в финальный ответ. Ряд API поддерживает parallel function calling — одновременный вызов нескольких функций за один шаг, что сокращает задержку в агентных пайплайнах.
Function calling резко повысил надёжность интеграции языковых моделей с существующими программными системами: вместо разбора неструктурированного текста приложение получает гарантированно корректный JSON. Это открыло путь к надёжному извлечению структурированных данных, автоматическому заполнению форм, управлению внешними сервисами и построению агентных пайплайнов.
К 2026 году function calling поддерживается всеми крупными провайдерами языковых моделей и фактически стал синонимом или составной частью более широкого понятия tool use. Открытые спецификации — OpenAPI tool schemas и MCP (Model Context Protocol) — обеспечивают совместимость инструментов между разными провайдерами и фреймворками.