Tool-Kontext verwalten
Wähle zwischen Tool-Suche, programmatischem Tool-Aufruf, Prompt-Caching und Kontextbearbeitung, um aufgeblähten Kontext in den Griff zu bekommen.
Tool-Definitionen und angesammelte tool_result-Blöcke verbrauchen dein „context window“ (Kontextfenster). Lang laufende Agenten mit vielen Tools oder vielen Gesprächsrunden können den verfügbaren Kontext erschöpfen, bevor die Aufgabe abgeschlossen ist. Vier Ansätze gehen dieses Problem an unterschiedlichen Stellen der Pipeline an.
Die vier Ansätze
Jeder Ansatz zielt auf eine andere Quelle von Kontextdruck ab. Wähle denjenigen, der dazu passt, wohin deine Token fließen.
| Ansatz | Was er reduziert | Wann er passt | Mehr erfahren |
|---|---|---|---|
| Tool-Suche | Vorab geladene Tool-Definitionen | Große Toolsets (20+ Tools), bei denen die meisten Tools nicht in jeder Runde benötigt werden | Tool-Suche-Tool |
| Programmatischer Tool-Aufruf | tool_result-Roundtrips | Ketten von Tool-Aufrufen, die als einzelnes Skript ausgeführt werden können | Programmatischer Tool-Aufruf |
| Prompt-Caching | Token-Kosten wiederholter Tool-Definitionen | Stabile Toolsets über viele Anfragen hinweg | Tool-Nutzung mit Prompt-Caching |
| Kontextbearbeitung | Alte tool_result-Blöcke im Verlauf | Lange Gespräche, in denen frühe Ergebnisse nicht mehr relevant sind | Kontextbearbeitung |
Tool-Suche
„Tool search“ (Tool-Suche) hält Tool-Definitionen aus dem Kontextfenster heraus, bis Claude sie anfordert. Anstatt 50 Tool-Schemas vorab zu senden, sendest du ein einzelnes tool_search-Tool und lässt Claude den Rest bei Bedarf entdecken. Dies tauscht eine geringe Menge an „latency“ (Latenz) – eine zusätzliche Runde, um ein Tool nachzuschlagen – gegen eine große Reduzierung der grundlegenden Kontextnutzung ein.
Programmatischer Tool-Aufruf
„Programmatic tool calling“ (programmatischer Tool-Aufruf) fasst eine Abfolge von Tool-Aufrufen in einem einzigen Codeblock zusammen, den Claude schreibt und den die Code-Ausführungs-Sandbox von Anthropic ausführt. Anstatt fünf Roundtrips mit tool_use und tool_result gibt Claude ein einziges Skript aus, das alle fünf Funktionen innerhalb der Sandbox aufruft. Die Zwischenergebnisse gelangen nie in den Gesprächsverlauf.
Prompt-Caching
„Prompt caching“ (Prompt-Caching) reduziert nicht die Anzahl der Token im Kontext, aber es reduziert, was du bei nachfolgenden Anfragen dafür bezahlst. Wenn deine Tool-Definitionen stabil sind, cache sie einmal und verwende das gecachte Präfix über Tausende von Anfragen hinweg wieder. Dies ist die richtige Wahl, wenn das Toolset groß, aber fest ist.
Kontextbearbeitung
„Context editing“ (Kontextbearbeitung) entfernt alte tool_result-Blöcke aus dem Gesprächsverlauf, sobald sie ihren Zweck erfüllt haben. Eine lange Agentenschleife kann Hunderte von Zwischenergebnissen erzeugen, die zu ihrer Zeit nützlich waren, jetzt aber nur noch Ballast sind. Mit Kontextbearbeitung kannst du sie entfernen, ohne das Gespräch neu zu starten.
Ansätze kombinieren
Diese Ansätze lassen sich kombinieren. Ein lang laufender Agent könnte Tool-Suche verwenden, um das Toolset schlank zu halten, Prompt-Caching, um die Kosten der verbleibenden Definitionen zu amortisieren, und Kontextbearbeitung, um veraltete Ergebnisse zu entfernen, während das Gespräch wächst. Jeder löst einen anderen Teil des Problems, daher gibt es keinen Konflikt, wenn du sie gemeinsam einsetzt.
Ein sinnvoller Ausgangspunkt für einen Agenten mit hohem Volumen:
- Aktiviere Prompt-Caching für deine Tool-Definitionen vom ersten Tag an. Cache-Schreibvorgänge haben einen Aufschlag von 25 % auf den Basispreis für Eingaben, der sich bereits bei der zweiten Anfrage, die den Cache trifft, auszahlt.
- Füge Tool-Suche hinzu, sobald dein Toolset auf mehr als etwa 20 Tools anwächst oder deine grundlegende Kontextnutzung spürbar wird.
- Füge Kontextbearbeitung hinzu, sobald einzelne Gespräche so lang werden, dass frühe Ergebnisse irrelevant werden.
- Ziehe programmatischen Tool-Aufruf in Betracht, wenn du sich wiederholende Ketten kleiner Tool-Aufrufe bemerkst, die als einzelner Batch ausgeführt werden könnten.
Nächste Schritte
Lade Tool-Definitionen bei Bedarf statt vorab.
Fasse Ketten von Tool-Aufrufen in einem einzigen ausführbaren Skript zusammen.
Cache Tool-Definitionen über Anfragen hinweg, um Token-Kosten zu senken.
Entferne veraltete Tool-Ergebnisse aus lang laufenden Gesprächen.
Was this page helpful?