Урок из полного доступа, первые уроки курса бесплатно Официальный курс Anthropic Academy на русском
Урок 34 · Видео · 12 мин

Запускаем функции-инструменты

Урок 34 из 89 курса «Claude в Amazon Bedrock»: официальный курс Anthropic Academy (Антропик) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

Кадр из видеоурока

О чём урок

Взаимодействие с большими языковыми моделями (LLM), такими как Claude, часто выходит за рамки простого обмена текстовыми сообщениями. Чтобы Claude мог выполнять сложные задачи, требующие доступа к актуальной информации или внешним системам, используется механизм инструментов (tools). Это позволяет модели вызывать определенные функции, которые вы предоставляете, например, для поиска информации в базе данных, отправки электронных писем или выполнения расчетов. Однако, когда Claude решает использовать инструмент, ваша серверная часть должна фактически выполнить запрошенную функцию и отправить результаты обратно. Этот этап является критически важным для успешного выполнения задач, требующих интеграции с внешним миром.

Представьте, что пользователь просит Claude узнать текущую дату и время. Claude, понимая, что у него нет встроенной возможности получить эту информацию в реальном времени, "решает" использовать инструмент. Вот как выглядит типичный цикл взаимодействия:

  • Запрос пользователя: Пользователь отправляет запрос Claude (например, "Какое сейчас время?").
  • Идентификация инструмента Claude: Claude анализирует запрос и определяет, что для его выполнения требуется вызов одной из доступных ему функций-инструментов (например, get_current_datetime). Claude генерирует ответ, который содержит не только текст, но и специальную часть toolUse с описанием инструмента, который он хочет вызвать, и необходимыми аргументами в формате JSON.
  • Получение запроса на сервере: Ваша серверная часть или приложение получает этот ответ от Claude.
  • Извлечение и выполнение инструмента: Ваш код извлекает информацию о запрошенном инструменте (его имя, аргументы) и вызывает соответствующую функцию на вашей стороне.
  • Форматирование и отправка результатов: После выполнения инструмента ваш сервер форматирует полученные данные в специальную часть toolResult и отправляет ее обратно Claude.
  • Финальный ответ Claude: Claude получает результаты выполнения инструмента, обрабатывает их и формирует окончательный, связный ответ для пользователя.

Таким образом, ваша серверная часть выступает в роли "исполнителя", который переводит абстрактные запросы Claude в конкретные действия и возвращает их результаты.

Важно понимать, что Claude может быть достаточно "умным", чтобы запросить выполнение нескольких инструментов в одном ответе.

Ваш код должен быть готов к такой ситуации.

Первый…

План урока

  1. Выполнение функций инструментов
  2. Рабочий процесс использования инструментов
  3. Обработка множественных запросов инструментов
  4. Извлечение запросов на использование инструментов
  5. Выполнение самих инструментов
  6. Форматирование результатов инструментов
  7. Надежная обработка ошибок
  8. Завершение цикла взаимодействия

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Откройте полный доступ

Вы прошли бесплатные уроки. Выберите тариф, чтобы продолжить обучение.

Курсы Anthropic 1 490 ₽ Разовый платёж, навсегда
  • Все курсы от Anthropic (34 шт.)
  • Именной сертификат по каждому пройденному курсу
Оплатить
Полный доступ 4 900 ₽ Разовый платёж, навсегда
  • Все 77 курсов от 11 AI-провайдеров
  • Библиотека промптов и новые курсы
Оплатить

Безопасная оплата через Robokassa: СБП, карты, электронные кошельки. Доступ откроется в этом браузере и придёт письмом. Уже оплатили? Восстановить доступ

Полезные гиды