Цели урока
- Понять весь рабочий процесс использования инструментов
- Писать правильно структурированные сообщения tool_result
- Реализовать чат-бота, который использует инструменты
О чём урок
В этом уроке мы реализуем "полный" 4-шаговый рабочий процесс использования инструментов, который мы рассмотрели ранее. До сих пор мы видели, что Claude использовал инструменты, но мы не отправляли Claude последующие запросы, содержащие результат функциональности нашего инструмента. Вот краткий обзор полного 4-шагового процесса: Предоставьте Claude инструменты и пользовательский prompt: (API request) Определите набор инструментов, к которым Claude должен иметь доступ, включая их названия, описания и входные схемы. Предоставьте пользовательский prompt, который может потребовать использования одного или нескольких из этих инструментов для ответа, например, "Сколько акций General Motors я могу купить на $500?" Claude использует инструмент: (API response) Claude оценивает пользовательский prompt и решает, поможет ли какой-либо из доступных инструментов в выполнении запроса или задачи пользователя. Если да, он также решает, какой инструмент(ы) использовать и с какими входными данными. Claude выдает правильно отформатированный запрос на использование инструмента. Ответ API будет иметь stop_reason со значением tool_use, указывающим, что Claude хочет использовать внешний инструмент. Извлеките входные данные инструмента(ов), выполните код и верните результаты: (API request) На стороне клиента вы должны извлечь имя инструмента и входные данные из запроса Claude на использование инструмента. Выполните фактический код инструмента на стороне клиента. Верните результаты Claude, продолжив разговор новым сообщением пользователя, содержащим блок контента tool_result. Claude использует результат инструмента для формирования ответа: (API response) После получения результатов инструмента Claude использует эту информацию для формирования своего окончательного ответа на исходный пользовательский prompt. В этом уроке мы рассмотрим весь процесс. Вот диаграмма с общим обзором процесса: Вот диаграмма, объясняющая, как будет работать наш скрипт: Вот несколько реальных обменов, которые иллюстрируют конечный результат, которого мы надеемся достичь: Пользователь: По состоянию на 2024 год у кого больше Оскаров, у Кристофера Нолана или Бена Стиллера?
План урока
- Полный рабочий процесс использования инструментов
- Создание полного рабочего процесса
- 1. Определение нашей функции поиска в Wikipedia
- 2. Написание определения инструмента
- 3. Предоставьте Claude инструмент и пользовательский prompt
- 4. Claude использует инструмент (ответ API)
- 5. Извлеките входные данные инструмента(ов), выполните код и верните результаты (API request)
- 6. Claude использует результат инструмента для формирования ответа: (API response)
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.