Loading...
  • Erstellen
  • Admin
  • Modelle & Preise
  • Client-SDKs
  • API-Referenz
Search...
⌘K
Log in
Tool-Nutzung mit Prompt-Caching
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
Erstellen/Tools

Tool-Verwendung mit Prompt-Caching

Zwischenspeichern Sie Tool-Definitionen über mehrere Durchläufe hinweg und verstehen Sie, was Ihren Cache ungültig macht.

Diese Seite behandelt Prompt-Caching für Tool-Definitionen: wo Sie cache_control-Breakpoints platzieren, wie defer_loading Ihren Cache bewahrt, und was ihn ungültig macht. Für allgemeines Prompt-Caching siehe Prompt-Caching.

cache_control bei Tool-Definitionen

Platzieren Sie cache_control: {"type": "ephemeral"} auf dem letzten Tool in Ihrem tools-Array. Dies speichert das gesamte Tool-Definitions-Präfix zwischen, vom ersten Tool bis zum markierten Breakpoint:

{
  "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" }
    }
  ]
}

Für mcp_toolset landet der cache_control-Breakpoint auf dem letzten Tool im Set. Sie kontrollieren die Tool-Reihenfolge innerhalb eines MCP-Toolsets nicht, daher platzieren Sie den Breakpoint auf dem mcp_toolset-Eintrag selbst und die API wendet ihn auf das final erweiterte Tool an.

defer_loading und Cache-Erhaltung

Aufgeschobene Tools sind nicht im System-Prompt-Präfix enthalten. Wenn das Modell ein aufgeschobenes Tool durch Tool-Suche entdeckt, wird die Definition inline als tool_reference-Block in der Gesprächsverlauf angehängt. Das Präfix bleibt unverändert, daher wird das Prompt-Caching bewahrt.

Dies bedeutet, dass das dynamische Hinzufügen von Tools durch Tool-Suche Ihren Cache nicht bricht. Sie können ein Gespräch mit einem kleinen Satz von immer geladenen Tools (zwischengespeichert) starten, das Modell zusätzliche Tools nach Bedarf entdecken lassen und denselben Cache-Hit über jeden Durchlauf hinweg behalten.

defer_loading funktioniert auch unabhängig von der Grammatikkonstruktion für strikten Modus. Die Grammatik wird aus dem vollständigen Toolset erstellt, unabhängig davon, welche Tools aufgeschoben sind, daher werden sowohl Prompt-Caching als auch Grammatik-Caching bewahrt, wenn Tools dynamisch geladen werden.

Was macht Ihren Cache ungültig

Der Cache folgt einer Präfix-Hierarchie (tools → system → messages), daher macht eine Änderung auf einer Ebene diese Ebene und alles danach ungültig:

ÄnderungMacht ungültig
Ändern von Tool-DefinitionenGesamter Cache (Tools, System, Nachrichten)
Umschalten von Websuche oder ZitatenSystem- und Nachrichten-Caches
Ändern von tool_choiceNachrichten-Cache
Ändern von disable_parallel_tool_useNachrichten-Cache
Umschalten von Bildern vorhanden/abwesendNachrichten-Cache
Ändern von Thinking-ParameternNachrichten-Cache

Wenn Sie tool_choice während eines Gesprächs variieren müssen, erwägen Sie, Cache-Breakpoints vor dem Variationspunkt zu platzieren.

Tabelle für Tool-spezifische Interaktionen

ToolCaching-Überlegungen
WebsucheDas Aktivieren oder Deaktivieren macht die System- und Nachrichten-Caches ungültig
Web-AbrufDas Aktivieren oder Deaktivieren macht die System- und Nachrichten-Caches ungültig
Code-AusführungContainer-Status ist unabhängig vom Prompt-Cache
Tool-SucheEntdeckte Tools werden als tool_reference-Blöcke geladen und bewahren das Präfix-Cache
ComputernutzungScreenshot-Präsenz beeinflusst den Nachrichten-Cache
Text-EditorStandard-Client-Tool, keine spezielle Caching-Interaktion
BashStandard-Client-Tool, keine spezielle Caching-Interaktion
SpeicherStandard-Client-Tool, keine spezielle Caching-Interaktion

Nächste Schritte

Prompt-Caching

Erfahren Sie mehr über das vollständige Prompt-Caching-Modell, einschließlich TTLs und Preisgestaltung.

Tool-Suche

Laden Sie Tools bei Bedarf, ohne Ihren Cache zu unterbrechen.

Tool-Referenz

Durchsuchen Sie alle verfügbaren Tools und ihre Parameter.

Was this page helpful?

  • cache_control bei Tool-Definitionen
  • defer_loading und Cache-Erhaltung
  • Was macht Ihren Cache ungültig
  • Tabelle für Tool-spezifische Interaktionen
  • Nächste Schritte