Claude est capable d’interagir avec des outils et des fonctions, vous permettant d’étendre les capacités de Claude pour effectuer une plus grande variété de tâches.

Apprenez tout ce dont vous avez besoin pour maîtriser l’utilisation d’outils avec Claude via notre nouveau cours complet sur l’utilisation d’outils ! Veuillez continuer à partager vos idées et suggestions en utilisant ce formulaire.

Voici un exemple de comment fournir des outils à Claude en utilisant l’API Messages :

curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-4-20250514",
    "max_tokens": 1024,
    "tools": [
      {
        "name": "get_weather",
        "description": "Get the current weather in a given location",
        "input_schema": {
          "type": "object",
          "properties": {
            "location": {
              "type": "string",
              "description": "The city and state, e.g. San Francisco, CA"
            }
          },
          "required": ["location"]
        }
      }
    ],
    "messages": [
      {
        "role": "user",
        "content": "What is the weather like in San Francisco?"
      }
    ]
  }'

Comment fonctionne l’utilisation d’outils

Claude prend en charge deux types d’outils :

  1. Outils client : Outils qui s’exécutent sur vos systèmes, qui incluent :

  2. Outils serveur : Outils qui s’exécutent sur les serveurs d’Anthropic, comme l’outil de recherche web. Ces outils doivent être spécifiés dans la requête API mais ne nécessitent pas d’implémentation de votre part.

Les outils définis par Anthropic utilisent des types versionnés (par exemple, web_search_20250305, text_editor_20250124) pour assurer la compatibilité entre les versions du modèle.

Outils client

Intégrez les outils client avec Claude en suivant ces étapes :

1

Fournir à Claude des outils et une invite utilisateur

  • Définissez les outils client avec des noms, des descriptions et des schémas d’entrée dans votre requête API.
  • Incluez une invite utilisateur qui pourrait nécessiter ces outils, par exemple, “Quel temps fait-il à San Francisco ?”
2

Claude décide d'utiliser un outil

  • Claude évalue si des outils peuvent aider à répondre à la requête de l’utilisateur.
  • Si oui, Claude construit une demande d’utilisation d’outil correctement formatée.
  • Pour les outils client, la réponse API a un stop_reason de tool_use, signalant l’intention de Claude.
3

Exécuter l'outil et renvoyer les résultats

  • Extrayez le nom de l’outil et l’entrée de la demande de Claude
  • Exécutez le code de l’outil sur votre système
  • Renvoyez les résultats dans un nouveau message user contenant un bloc de contenu tool_result
4

Claude utilise le résultat de l'outil pour formuler une réponse

  • Claude analyse les résultats de l’outil pour élaborer sa réponse finale à l’invite utilisateur originale.

Remarque : Les étapes 3 et 4 sont facultatives. Pour certains flux de travail, la demande d’utilisation d’outil de Claude (étape 2) pourrait être tout ce dont vous avez besoin, sans renvoyer de résultats à Claude.

Outils serveur

Les outils serveur suivent un flux de travail différent :

1

Fournir à Claude des outils et une invite utilisateur

  • Les outils serveur, comme la recherche web, ont leurs propres paramètres.
  • Incluez une invite utilisateur qui pourrait nécessiter ces outils, par exemple, “Recherchez les dernières nouvelles sur l’IA.”
2

Claude exécute l'outil serveur

  • Claude évalue si un outil serveur peut aider à répondre à la requête de l’utilisateur.
  • Si oui, Claude exécute l’outil, et les résultats sont automatiquement incorporés dans la réponse de Claude.
3

Claude utilise le résultat de l'outil serveur pour formuler une réponse

  • Claude analyse les résultats de l’outil serveur pour élaborer sa réponse finale à l’invite utilisateur originale.
  • Aucune interaction utilisateur supplémentaire n’est nécessaire pour l’exécution de l’outil serveur.

Exemples d’utilisation d’outils

Voici quelques exemples de code démontrant divers modèles et techniques d’utilisation d’outils. Par souci de concision, les outils sont simples, et les descriptions d’outils sont plus courtes que ce qui serait idéal pour assurer les meilleures performances.


Tarification

Tool use requests are priced based on:

  1. The total number of input tokens sent to the model (including in the tools parameter)
  2. The number of output tokens generated
  3. For server-side tools, additional usage-based pricing (e.g., web search charges per search performed)

Client-side tools are priced the same as any other Claude API request, while server-side tools may incur additional charges based on their specific usage.

The additional tokens from tool use come from:

  • The tools parameter in API requests (tool names, descriptions, and schemas)
  • tool_use content blocks in API requests and responses
  • tool_result content blocks in API requests

When you use tools, we also automatically include a special system prompt for the model which enables tool use. The number of tool use tokens required for each model are listed below (excluding the additional tokens listed above). Note that the table assumes at least 1 tool is provided. If no tools are provided, then a tool choice of none uses 0 additional system prompt tokens.

ModelTool choiceTool use system prompt token count
Claude Opus 4auto, none
any, tool
346 tokens
313 tokens
Claude Sonnet 4auto, none
any, tool
346 tokens
313 tokens
Claude Sonnet 3.7auto, none
any, tool
346 tokens
313 tokens
Claude Sonnet 3.5 (Oct)auto, none
any, tool
346 tokens
313 tokens
Claude Sonnet 3.5 (June)auto, none
any, tool
294 tokens
261 tokens
Claude Haiku 3.5auto, none
any, tool
264 tokens
340 tokens
Claude Opus 3auto, none
any, tool
530 tokens
281 tokens
Claude Sonnet 3auto, none
any, tool
159 tokens
235 tokens
Claude Haiku 3auto, none
any, tool
264 tokens
340 tokens

These token counts are added to your normal input and output tokens to calculate the total cost of a request.

Consultez notre tableau de présentation des modèles pour les prix actuels par modèle.

Lorsque vous envoyez une invite d’utilisation d’outil, comme pour toute autre requête API, la réponse affichera à la fois les nombres de jetons d’entrée et de sortie dans le cadre des métriques usage rapportées.


Prochaines étapes

Explorez notre répertoire d’exemples de code d’utilisation d’outils prêts à être implémentés dans nos cookbooks :