Loading...
  • Construire
  • Admin
  • Modèles & tarification
  • SDKs clients
  • Référence API
Search...
⌘K
Log in
Utilisation des outils avec mise en cache des prompts
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
Construire/Outils

Utilisation d'outils avec mise en cache des invites

Mettez en cache les définitions d'outils entre les tours et comprenez ce qui invalide votre cache.

Was this page helpful?

  • cache_control sur les définitions d'outils
  • defer_loading et préservation du cache
  • Ce qui invalide votre cache
  • Tableau d'interaction par outil
  • Étapes suivantes

Cette page couvre la mise en cache des invites pour les définitions d'outils : où placer les points d'arrêt cache_control, comment defer_loading préserve votre cache, et ce qui l'invalide. Pour la mise en cache générale des invites, consultez Mise en cache des invites.

cache_control sur les définitions d'outils

Placez cache_control: {"type": "ephemeral"} sur le dernier outil de votre tableau tools. Cela met en cache l'intégralité du préfixe des définitions d'outils, du premier outil jusqu'au point d'arrêt marqué :

{
  "tools": [
    {
      "name": "get_weather",
      "description": "Get the current weather in a given location",
      "input_schema": {
        "type": "object",
        "properties": {
          "location": { "type": "string" }
        },
        "required": ["location"]
      }
    },
    {
      "name": "get_time",
      "description": "Get the current time in a given time zone",
      "input_schema": {
        "type": "object",
        "properties": {
          "timezone": { "type": "string" }
        },
        "required": ["timezone"]
      },
      "cache_control": { "type": "ephemeral" }
    }
  ]
}

Pour mcp_toolset, le point d'arrêt cache_control se place sur le dernier outil de l'ensemble. Vous ne contrôlez pas l'ordre des outils dans un ensemble MCP, donc placez le point d'arrêt sur l'entrée mcp_toolset elle-même et l'API l'applique à l'outil final développé.

defer_loading et préservation du cache

Les outils différés ne sont pas inclus dans le préfixe de l'invite système. Lorsque le modèle découvre un outil différé via recherche d'outils, la définition est ajoutée en ligne sous forme de bloc tool_reference dans l'historique de la conversation. Le préfixe reste inchangé, donc la mise en cache des invites est préservée.

Cela signifie que l'ajout d'outils de manière dynamique via la recherche d'outils ne casse pas votre cache. Vous pouvez commencer une conversation avec un petit ensemble d'outils toujours chargés (mis en cache), laisser le modèle découvrir des outils supplémentaires selon les besoins, et conserver le même accès au cache à chaque tour.

defer_loading agit également indépendamment de la construction de la grammaire pour le mode strict. La grammaire est construite à partir de l'ensemble complet des outils, quel que soit le nombre d'outils différés, donc la mise en cache des invites et la mise en cache de la grammaire sont toutes deux préservées lorsque les outils se chargent dynamiquement.

Ce qui invalide votre cache

Le cache suit une hiérarchie de préfixes (tools → system → messages), donc une modification à un niveau invalide ce niveau et tout ce qui suit :

ModificationInvalide
Modification des définitions d'outilsCache entier (outils, système, messages)
Activation/désactivation de la recherche web ou des citationsCaches système et messages
Modification de tool_choiceCache des messages
Modification de disable_parallel_tool_useCache des messages
Activation/désactivation de la présence d'imagesCache des messages
Modification des paramètres de réflexionCache des messages

Si vous devez varier tool_choice au milieu d'une conversation, envisagez de placer des points d'arrêt de cache avant le point de variation.

Tableau d'interaction par outil

OutilConsidérations de mise en cache
Recherche webL'activation ou la désactivation invalide les caches système et messages
Récupération webL'activation ou la désactivation invalide les caches système et messages
Exécution de codeL'état du conteneur est indépendant du cache d'invite
Recherche d'outilsLes outils découverts se chargent sous forme de blocs tool_reference, préservant le cache de préfixe
Utilisation d'ordinateurLa présence de captures d'écran affecte le cache des messages
Éditeur de texteOutil client standard, aucune interaction de mise en cache spéciale
BashOutil client standard, aucune interaction de mise en cache spéciale

Étapes suivantes

Mise en cache des invites

Découvrez le modèle complet de mise en cache des invites, y compris les TTL et la tarification.

Recherche d'outils

Chargez les outils à la demande sans casser votre cache.

MémoireOutil client standard, aucune interaction de mise en cache spéciale
Référence d'outils

Parcourez tous les outils disponibles et leurs paramètres.