Сама по себе модель умеет одно — генерировать текст. Она не может посмотреть в базу, запустить код, найти актуальную информацию или изменить файл. Вызов инструментов (tool calling, function calling) — это механизм, который снимает это ограничение: модель получает возможность запрашивать действия во внешнем мире. Именно он превращает «умного собеседника» в «исполнителя».
Как это работает
Идея проста. Модели заранее описывают набор доступных инструментов — что каждый делает и какие параметры принимает (например: «get_order(id) — вернуть заказ по номеру»). Дальше цикл:
- Вы даёте задачу: «покажи статус заказа 4521».
- Модель понимает, что сама ответить не может, и вместо текста выдаёт структурированный запрос на вызов:
get_order(id=4521). - Ваша программа (не модель!) выполняет этот вызов — лезет в базу, получает данные.
- Результат возвращают модели в контекст, и она формулирует ответ уже на реальных данных.
Ключевой момент: модель не выполняет инструмент сама — она только просит его вызвать, а исполняет ваша система. Модель решает «что и когда вызвать», код решает «как и можно ли».
Почему это важно
Вызов инструментов закрывает главные слабости чистой модели:
- Актуальность. Модель не знает свежих данных и вашего приватного контекста. Инструмент (поиск, запрос к базе, чтение файла) даёт ей настоящие данные вместо выдуманных.
- Действие, а не только совет. С инструментами модель не просто советует «сделай X» — она может создать запись, отправить письмо, изменить файл, запустить тест.
- Экономия контекста. Вместо того чтобы заливать в модель весь репозиторий, вы даёте ей инструмент «найди по коду» — она достаёт нужное по требованию, экономя токены.
По сути инструменты — это заземление на реальность: модель перестаёт полагаться только на «память из обучения» и работает с настоящим миром.
Стандартизация: MCP
Раньше каждый инструмент подключали к модели по-своему. Сейчас появляются стандарты — в частности MCP (Model Context Protocol): единый способ описывать инструменты и источники данных, чтобы модель могла подключаться к ним единообразно. Для продукт-инженера это значит, что оснастить агента доступом к своим системам становится проще и переносимо. Подробнее — в статье про MCP.
Об осторожности
Инструменты дают модели силу действовать — а значит, и возможность навредить. Разумные границы обязательны:
- Читать безопаснее, чем менять. Дать модели читать базу — одно; дать удалять из неё — совсем другое.
- Опасные действия — через подтверждение. Необратимое (удаление, оплата, отправка наружу) стоит проводить через явное согласие человека.
- Права минимальны. Инструмент должен уметь ровно то, что нужно для задачи, не больше.
Что это значит на практике
Вызов инструментов — это то, что превращает модель из «болталки» в рабочего исполнителя внутри ваших систем. Продукт-инженер проектирует, какие инструменты дать модели и с какими границами: что она может прочитать, что изменить, а что — только предложить человеку. Хорошо подобранный набор инструментов часто важнее, чем «умность» самой модели.
Дальше
Когда модель в цикле сама решает, какие инструменты и в каком порядке вызывать, чтобы дойти до цели, — это уже агенты. Про единый протокол подключения инструментов — MCP.