Как агент решает, какой инструмент вызвать?
12 часов назад
Никита Вихров
Ответы
Как агент решает, какой инструмент вызвать
Агент не выбирает инструмент по коду — он выбирает по описанию. Модель читает description каждого инструмента и на основе задачи решает, что вызвать. Это значит: плохое описание — плохой выбор.
Как модель видит инструменты
При каждом запросе модели передаётся список инструментов в виде JSON-схем:
Модель получает этот список и задачу — например, «найди все места где используется функция parseUser». Она рассуждает: нужен поиск по кодовой базе → вызывает search_codebase.
Почему описание важнее кода
Вот два варианта описания одного инструмента:
С плохим описанием модель может вызвать инструмент не к месту или не вызвать там, где нужно. С хорошим — понимает контекст и ограничения.
Что делать когда агент выбирает не тот инструмент
Сначала смотри на описания. Чаще всего проблема там.
Если два инструмента похожи — явно укажи разницу в описании:
Если это не помогает — добавь в system prompt явное правило: «Для поиска по содержимому файлов всегда используй search_content, не search_files».
Ещё один приём — уменьшить количество инструментов. Чем их больше, тем сложнее модели выбрать правильный. Если инструмент используется редко — убери его из дефолтного набора.
12 часов назад
Никита Вихров





