Комментарии 8
Спасибо, еще одна статья, из которой я ничего не понял :P
Всё хорошо объяснили, благодарю. Когда кому-то объясняешь, начинаешь и сам лучше понимать, это да.:)
Интересен вариант коллекции тулзов::
Допустим, имею несколько разных tool-ов - один, например, как у Вас - найдет погоду и температуру на Мальдивах. Второй - умеет искать среднюю цену на путевку в заданное время. А третий по команде "отформатируй флешку и запиши туда результаты поиска" умеет вызвать системную команду "format D:" с последующей записью на нее.
Как LLM поймет, что из них и в каком порядке вызвать в ответ на мой промт "собери на флешку 5 самых дешевых вариантов поездки на Мальдивы, и чтоб без дождей, пожалуйста" ?
Верно ли понимаю, что description - как раз для этого ? чтобы LLM догадалась куда и на каком этапе бежать. И достаточно ли его, или существуют какие-то более тонкие настройки?
Спасибо на добром слове!
Да, у tools есть поле description. Да, LLM-ка читает описания и на их основе понимает, что умеет делать инструмент. Ну и в обычным промпте (неважно системном или пользовательском) можно дать пояснения: для таких-то целей и в таких-то ситуациях используй такие-то инструменты.
Например, вот часть реального системного промпта чата GPT 4.5:
https://github.com/asgeirtj/system_prompts_leaks/blob/main/OpenAI/GPT-4.5.md
Там, например видно:
Tools
bio
И описание для чего применять.
Вообще вот здесь много честно слитых программистами системных промптов всемирно известных инструментов: https://github.com/asgeirtj/system_prompts_leaks
Но! Модель могла бы поступить как в еврейском анекдоте — ответить вопросом на вопрос.
Кому нибудь модель задавала вопросы? Мне вот нет...
С какой стати модель доверяет тулзам? Достоверность источника(тулзы) чем нибудь подтверждается? Может хоть сертификаты какие)))
Нуу, физически вы как разработчик даёте либо не даёте доступ к MCP серверу. Доступ дали. MCP-сервер взломали. И вуаля, вместо , например, web -поиска или калькулятора код по просьбе LLM вызовет что-то очеееень неожиданное.
Кстати. Первый инструмент, который прописан в Claude Code так и называется: "Задай пользователю вопросы". А второй в списке инструмент: "Вызов командной строки".
https://github.com/asgeirtj/system_prompts_leaks/blob/main/Anthropic/claude-code.md
Tools
AskUserQuestion
Use this tool when you need to ask the user questions during execution. This allows you to...:
Bash
Executes a given bash command with optional timeout...
Что касается ключа идемпотентности, можно же использовать уникальную строчку, которую генерит сама LLM типа этой"tool_call_id": "chatcmpl-tool-abac20964c6ac906".
По конкурентности и observability, таков наш мир и все вот эти микросервисы. Упростили себе жизнь в одном, усложнили в другом. Чудес не бывает. По инструментам не подскажу каким-то специфических именно для MCP. Только mcp inspector в чем-то дополнительно помогает.

Model Context Protocol (MCP): как ИИ-агенты «разговаривают» с внешним миром