Описания инструментов оказались самой важной частью кода агента

Агент выбирает инструмент по его описанию — другого источника знаний о вашей системе у модели нет. Поэтому лаконичная строка вроде «получает данные пользователя» на практике оборачивается тем, что функция вызывается не вовремя, с чужими параметрами или не вызывается вообще.

Разработчики постепенно приходят к формату, напоминающему документацию для человека: что инструмент делает, когда его применять, когда не применять, что возвращает и что произойдёт при ошибке. Явное «не используй это для X» помогает не меньше, чем описание назначения.

Ошибки как подсказки

Отдельная находка — текст ошибки. Возврат кода без пояснения приводит к тому, что агент повторяет тот же вызов по кругу. Ошибка, сформулированная как инструкция — какого параметра не хватило и в каком формате он ожидается, — позволяет исправиться со второй попытки.

Есть и вопрос количества. Набор из десятков близких по смыслу инструментов путает модель сильнее, чем помогает; надёжнее оказывается небольшой набор с чёткими границами, где похожие операции объединены одним инструментом и разведены параметром.

Что это значит

Подробности и первичное описание опубликованы на странице «как дорабатывать промпт вместо переписывания», там же собраны условия доступа и ограничения, о которых заявили разработчики.

Похожие материалы и обновления по теме мы собираем в разделе Инструменты для разработчиков — он пополняется по мере выхода новых сообщений.