Loading...
    • Construir
    • Admin
    • Modelos e preços
    • SDKs do cliente
    • Referência da API
    Search...
    ⌘K
    Primeiros passos
    Introdução ao ClaudeInício rápido
    Construindo com Claude
    Visão geral de recursosUsando a API de MensagensHabilidade da API ClaudeGerenciando motivos de parada
    Capacidades do modelo
    Pensamento estendidoPensamento adaptativoEsforçoOrçamentos de tarefas (beta)Modo rápido (beta: prévia de pesquisa)Saídas estruturadasCitaçõesMensagens em streamingProcessamento em loteResultados de pesquisaRecusas em streamingSuporte multilíngueEmbeddings
    Ferramentas
    Visão geralComo o uso de ferramentas funcionaTutorial: Construir um agente com ferramentasDefinir ferramentasGerenciar chamadas de ferramentasUso paralelo de ferramentasTool Runner (SDK)Uso estrito de ferramentasUso de ferramentas com cache de promptFerramentas do servidorSolução de problemasFerramenta de pesquisa na webFerramenta de busca na webFerramenta de execução de códigoFerramenta de assessoriaFerramenta de memóriaFerramenta BashFerramenta de uso do computadorFerramenta de edição de texto
    Infraestrutura de ferramentas
    Referência de ferramentasGerenciar contexto de ferramentasCombinações de ferramentasBusca de ferramentasChamada programática de ferramentasStreaming granular de ferramentas
    Gerenciamento de contexto
    Janelas de contextoCompactaçãoEdição de contextoCache de promptContagem de tokens
    Trabalhando com arquivos
    Files APISuporte a PDFImagens e visão
    Skills
    Visão geralInício rápidoMelhores práticasSkills para empresasSkills na API
    MCP
    Servidores MCP remotosConector MCP
    Engenharia de prompt
    Visão geralMelhores práticas de promptingFerramentas de prompting no Console
    Testar e avaliar
    Definir sucesso e criar avaliaçõesUsando a Ferramenta de Avaliação no ConsoleReduzindo latência
    Fortalecer guardrails
    Reduzir alucinaçõesAumentar consistência de saídaMitigar jailbreaksReduzir vazamento de prompt
    Recursos
    Glossário
    Notas de versão
    Claude Platform
    Console
    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
    Ferramentas

    Uso rigoroso de ferramentas

    Aplique conformidade com JSON Schema nas entradas de ferramentas do Claude com amostragem restrita por gramática.

    Definir strict: true em uma definição de ferramenta usa amostragem restrita por gramática para garantir que as entradas de ferramentas do Claude correspondam ao seu JSON Schema. Esta página aborda por que o modo rigoroso é importante para agentes, como ativá-lo e casos de uso comuns. Para o subconjunto de JSON Schema suportado, consulte Limitações de JSON Schema. Para orientação de schema não rigorosa, consulte Definir ferramentas.

    O uso rigoroso de ferramentas valida parâmetros de ferramentas, garantindo que Claude chame suas funções com argumentos corretamente tipados. Use o uso rigoroso de ferramentas quando você precisar:

    • Validar parâmetros de ferramentas
    • Construir fluxos de trabalho com agentes
    • Garantir chamadas de função type-safe
    • Lidar com ferramentas complexas com propriedades aninhadas

    Por que o uso rigoroso de ferramentas é importante para agentes

    Construir sistemas com agentes confiáveis requer conformidade de schema garantida. Sem o modo rigoroso, Claude pode retornar tipos incompatíveis ("2" em vez de 2) ou campos obrigatórios ausentes, quebrando suas funções e causando erros em tempo de execução.

    O uso rigoroso de ferramentas garante parâmetros type-safe:

    • As funções recebem argumentos corretamente tipados todas as vezes
    • Sem necessidade de validar e repetir chamadas de ferramentas
    • Agentes prontos para produção que funcionam consistentemente em escala

    Por exemplo, suponha que um sistema de reservas precise de passengers: int. Sem o modo rigoroso, Claude pode fornecer passengers: "two" ou passengers: "2". Com strict: true, a resposta sempre conterá passengers: 2.

    Início rápido

    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)

    Formato de resposta: Blocos de uso de ferramentas com entradas validadas em response.content[x].input

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

    Garantias:

    • A input da ferramenta segue rigorosamente o input_schema
    • O name da ferramenta é sempre válido (de ferramentas fornecidas ou ferramentas do servidor)

    Como funciona

    1. 1

      Defina seu schema de ferramenta

      Crie um schema JSON para o input_schema de sua ferramenta. O schema usa o formato padrão de JSON Schema com algumas limitações (consulte Limitações de JSON Schema).

    2. 2

      Adicione strict: true

      Defina "strict": true como uma propriedade de nível superior em sua definição de ferramenta, junto com name, description e input_schema.

    3. 3

      Manipule chamadas de ferramentas

      Quando Claude usa a ferramenta, o campo input no bloco tool_use seguirá rigorosamente seu input_schema, e o name sempre será válido.

    Casos de uso comuns

    Retenção de dados

    O uso rigoroso de ferramentas compila definições de input_schema de ferramentas em gramáticas usando o mesmo pipeline que saídas estruturadas. Os esquemas de ferramentas são temporariamente armazenados em cache por até 24 horas desde o último uso. Prompts e respostas não são retidos além da resposta da API.

    O uso rigoroso de ferramentas é elegível para HIPAA, mas PHI não deve ser incluído em definições de esquema de ferramentas. A API armazena esquemas compilados em cache separadamente do conteúdo da mensagem, e esses esquemas em cache não recebem as mesmas proteções de PHI que prompts e respostas. Não inclua PHI em nomes de propriedade input_schema, valores enum, valores const ou expressões regulares pattern. PHI deve aparecer apenas no conteúdo da mensagem (prompts e respostas), onde é protegido sob salvaguardas HIPAA.

    Para elegibilidade de ZDR e HIPAA em todos os recursos, consulte Retenção de API e dados.

    Was this page helpful?

    • Por que o uso rigoroso de ferramentas é importante para agentes
    • Início rápido
    • Como funciona
    • Casos de uso comuns
    • Retenção de dados