глоссарий

Function calling

Function calling

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

Без этого большая модель ограничена памятью и текстом: не знает погоду, не считает сложные формулы, не имеет доступа к базе клиентов. Раньше приходилось грубо извлекать структурированные данные из текста. С function calling модель сама понимает, когда нужен инструмент, и формирует формальный запрос с параметрами.

Представьте секретаря со справочником и калькулятором. На вопрос «Сколько будет 17 умножить на 19?» он не угадывает, а достаёт калькулятор и даёт точный ответ. В ИИ это выглядит так: разработчик описывает функции, их параметры и назначение. Модель, получив вопрос, решает, стоит ли вызывать функцию, выбирает её и возвращает структурированный вызов (имя и аргументы). Внешний код выполняет функцию, а результат отправляется обратно модели для финального ответа.

Пример: голосовой ассистент в банке. Клиент говорит: «Переведите 5000 рублей на счёт Иванова». Модель вызывает функцию `перевести_деньги(сумма=5000, получатель="Иванов")`. Бэкенд выполняет перевод и возвращает подтверждение или ошибку, например «недостаточно средств». Модель превращает это в вежливый ответ: «К сожалению, на вашем счёте недостаточно средств». Так ассистент становится полезным безопасным инструментом, а не болталкой.

Кратко: function calling превращает модель из генератора текста в полноценного агента, способного действовать. Это ключ к созданию умных ботов и автоматизации бизнес-процессов. Главное — правильно описать границы вызовов и проверять результат.