Описываем инструменты схемой

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

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

О чём урок

В мире больших языковых моделей (LLM) таких как Claude, возможность взаимодействовать с внешними инструментами и сервисами открывает безграничные возможности. Представьте, что Claude может не только генерировать текст, но и проверять погоду, искать информацию в базах данных или управлять календарем. Для того чтобы Claude мог эффективно использовать такие "инструменты" (по сути, обычные функции или API-вызовы), ему необходимо четко понимать, что это за инструменты, какие аргументы они принимают и что они делают. Именно здесь на помощь приходят схемы инструментов, основанные на стандарте JSON Schema. После того как вы написали функцию, которую хотите предоставить Claude в качестве инструмента, следующим шагом является создание JSON-схемы. Эта схема служит своего рода документацией, которую Claude читает, чтобы понять, когда и как вызывать ваши инструменты. Она описывает ожидаемые аргументы функции, их типы и назначение, позволяя Claude принимать обоснованные решения о вызове инструмента. Прежде чем углубляться в схемы инструментов, важно понять, что такое JSON Schema. Это не специфическая для AI или вызова инструментов технология. JSON Schema — это широко используемая спецификация для описания и валидации структуры данных в формате JSON. Она существует уже много лет и применяется в самых разных областях, от валидации конфигурационных файлов до описания API. Сообщество AI приняло ее из-за удобства и стандартизации в описании параметров функций и валидации данных. Используя JSON Schema, вы можете определить, какие поля должны присутствовать в JSON-объекте, их типы (строка, число, булево значение, массив, объект), форматы, минимальные/максимальные значения и многое другое. Для Claude это означает, что вы можете точно указать, какой тип данных ожидает ваша функция для каждого аргумента, что значительно снижает вероятность ошибок и улучшает надежность взаимодействия. Полная спецификация инструмента, которую Claude использует для понимания и вызова вашей функции, состоит из трех основных частей: Имя функции (name): Уникальное имя, которое Claude будет использовать для ссылки на ваш инструмент, например, "get_weather" или "send_email".

План урока

  1. Схемы Инструментов: Как Научить Claude Использовать Ваши Функции
  2. Что Такое JSON Schema?
  3. Анатомия Спецификации Инструмента
  4. Создание Эффективных Описаний
  5. Определение Входных Параметров с input_schema
  6. Простой Способ: Позвольте Claude Написать Вашу Схему
  7. Реализация Схемы в Коде
  8. Добавление Типобезопасности (Type Safety)

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

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