Loading...
  • Разработка
  • Администрирование
  • Модели и цены
  • Клиентские SDK
  • Справочник API
Search...
⌘K
Log in
Строгое использование инструментов
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Разработка/Инструменты

Строгое использование инструментов

Обеспечьте соответствие JSON Schema входным данным инструментов Claude с помощью выборки с ограничениями грамматики.

Установка strict: true в определении инструмента использует выборку с ограничениями грамматики, чтобы гарантировать, что входные данные инструментов Claude соответствуют вашей JSON Schema. На этой странице рассматривается, почему строгий режим важен для агентов, как его включить и типичные варианты использования. Для поддерживаемого подмножества JSON Schema см. Ограничения JSON Schema. Для рекомендаций по нестрогой схеме см. Определение инструментов.

Строгое использование инструментов проверяет параметры инструментов, гарантируя, что Claude вызывает ваши функции с правильно типизированными аргументами. Используйте строгое использование инструментов, когда вам нужно:

  • Проверять параметры инструментов
  • Создавать рабочие процессы на основе агентов
  • Обеспечивать безопасность типов при вызовах функций
  • Обрабатывать сложные инструменты с вложенными свойствами

Почему строгое использование инструментов важно для агентов

Создание надежных систем на основе агентов требует гарантированного соответствия схеме. Без строгого режима Claude может вернуть несовместимые типы ("2" вместо 2) или отсутствующие обязательные поля, что нарушит работу ваших функций и вызовет ошибки во время выполнения.

Строгое использование инструментов гарантирует безопасность типов параметров:

  • Функции получают правильно типизированные аргументы каждый раз
  • Нет необходимости проверять и повторно вызывать инструменты
  • Готовые к производству агенты, которые работают последовательно в масштабе

Например, предположим, что система бронирования требует passengers: int. Без строгого режима Claude может предоставить passengers: "two" или passengers: "2". С strict: true ответ всегда будет содержать passengers: 2.

Быстрый старт

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=1024,
    messages=[{"role": "user", "content": "What's the weather like in San Francisco?"}],
    tools=[
        {
            "name": "get_weather",
            "description": "Get the current weather in a given location",
            "strict": True,  # Enable strict mode
            "input_schema": {
                "type": "object",
                "properties": {
                    "location": {
                        "type": "string",
                        "description": "The city and state, e.g. San Francisco, CA",
                    },
                    "unit": {
                        "type": "string",
                        "enum": ["celsius", "fahrenheit"],
                        "description": "The unit of temperature, either 'celsius' or 'fahrenheit'",
                    },
                },
                "required": ["location"],
                "additionalProperties": False,
            },
        }
    ],
)
print(response.content)

Формат ответа: Блоки использования инструментов с проверенными входными данными в response.content[x].input

Output
{
  "type": "tool_use",
  "name": "get_weather",
  "input": {
    "location": "San Francisco, CA"
  }
}

Гарантии:

  • Инструмент input строго следует input_schema
  • Инструмент name всегда действителен (из предоставленных инструментов или серверных инструментов)

Как это работает

  1. 1

    Определите схему вашего инструмента

    Создайте JSON схему для input_schema вашего инструмента. Схема использует стандартный формат JSON Schema с некоторыми ограничениями (см. Ограничения JSON Schema).

  2. 2

    Добавьте strict: true

    Установите "strict": true как свойство верхнего уровня в определении вашего инструмента, рядом с name, description и input_schema.

  3. 3

    Обработайте вызовы инструментов

    Когда Claude использует инструмент, поле input в блоке tool_use будет строго следовать вашей input_schema, а name всегда будет действительным.

Распространённые варианты использования

Сохранение данных

Строгое использование инструментов компилирует определения input_schema инструментов в грамматики, используя тот же конвейер, что и структурированные выходы. Схемы инструментов временно кэшируются до 24 часов с момента последнего использования. Подсказки и ответы не сохраняются после ответа API.

Строгое использование инструментов соответствует требованиям HIPAA, но PHI не должна включаться в определения схемы инструментов. API кэширует скомпилированные схемы отдельно от содержимого сообщений, и эти кэшированные схемы не получают такую же защиту PHI, как подсказки и ответы. Не включайте PHI в имена свойств input_schema, значения enum, значения const или регулярные выражения pattern. PHI должна появляться только в содержимом сообщений (подсказках и ответах), где она защищена гарантиями безопасности HIPAA.

Для соответствия ZDR и HIPAA по всем функциям см. API и сохранение данных.

Was this page helpful?

  • Почему строгое использование инструментов важно для агентов
  • Быстрый старт
  • Как это работает
  • Распространённые варианты использования
  • Сохранение данных