раздел 00
Что такое инструмент агента
Обычная нейросеть только пишет текст. Агент умеет больше: он может что-то сделать в реальном мире - найти страницу в интернете, прочитать ваш файл, дёрнуть чужой сервис, отправить письмо. Делает он это через инструменты.
Инструмент (по-английски tool) - это функция, которую агенту разрешили вызывать. У неё есть имя, описание и список аргументов. Самое важное: агент сам решает, когда инструмент позвать и что в него передать. Никто не пишет за него «теперь вызови поиск» - он смотрит на задачу и на описания доступных инструментов и выбирает.
Агент не видит код инструмента. Он видит только имя, описание и параметры. По ним он и решает, звать его или нет.
Несколько примеров
Почему описание решает всё
Раз агент выбирает инструмент только по тексту, который вы к нему приложили, то этот текст и определяет качество работы. Хорошее описание - агент зовёт нужный инструмент в нужный момент с правильными аргументами. Плохое - агент путается.
Получается, дизайн инструмента - это не про код внутри функции, а про то, как вы её агенту представили. Внутри может быть простой запрос к базе, но если снаружи написано do_stuff без объяснений - агент не поймёт, для чего это.
Что разберём дальше
- Раздел 01 - имя и описание: как назвать инструмент и что написать в описании.
- Раздел 02 - параметры и возврат: понятные аргументы и чистый ответ.
- Раздел 03 - ошибки и почему меньше инструментов лучше.
- Раздел 04 - откуда инструменты вообще берутся.
- Раздел 05 - шпаргалка с чек-листом и антипаттернами.