Diese Seite erklärt die Konzepte hinter der Tool-Nutzung: wo Tools ausgeführt werden, wie die agentische Schleife funktioniert und wann Tool-Nutzung der richtige Ansatz ist. Für praktische Anleitungen beginnen Sie mit dem Tutorial oder dem Implementierungsleitfaden.
Tool-Nutzung ist ein Vertrag zwischen Ihrer Anwendung und dem Modell. Sie legen fest, welche Operationen verfügbar sind und welche Form ihre Ein- und Ausgaben haben; Claude entscheidet, wann und wie sie aufgerufen werden. Das Modell führt niemals selbstständig etwas aus. Es gibt eine strukturierte Anfrage aus, Ihr Code (oder Anthropics Server) führt die Operation aus, und das Ergebnis fließt zurück in das Gespräch.
Dieser Vertrag lässt das Modell weniger wie einen Textgenerator und mehr wie eine Funktion wirken, die Sie aufrufen. Ingenieure mit klassischer API-Erfahrung können Tool-Nutzung genauso integrieren wie jede andere typisierte Schnittstelle: Schema definieren, den Callback verarbeiten, ein Ergebnis zurückgeben. Der Unterschied besteht darin, dass der Aufrufer auf der anderen Seite ein Sprachmodell ist, das basierend auf dem Gespräch entscheidet, welche Funktion aufgerufen werden soll.
Die primäre Achse, entlang derer sich Tools unterscheiden, ist der Ort, an dem der Code ausgeführt wird. Jedes Tool fällt in einen von drei Bereichen, und der Bereich bestimmt, wofür Ihre Anwendung verantwortlich ist.
Sie schreiben das Schema, Sie führen den Code aus, Sie geben die Ergebnisse zurück. Dies ist das Hauptereignis: Die große Mehrheit des Tool-Nutzungsverkehrs sind benutzerdefinierte Tools, die anwendungsspezifische Logik aufrufen.
Wenn Claude entscheidet, eines Ihrer Tools zu verwenden, enthält die API-Antwort einen tool_use-Block mit dem Tool-Namen und einem JSON-Objekt mit Argumenten. Ihre Anwendung extrahiert diese Argumente, führt die Operation aus (eine Datenbankabfrage, ein HTTP-Aufruf, ein Datei-Schreibvorgang, was auch immer das Tool tut) und sendet die Ausgabe in einem -Block in der nächsten Anfrage zurück. Claude sieht niemals Ihre Implementierung; es sieht nur das Schema, das Sie bereitgestellt haben, und das Ergebnis, das Sie zurückgegeben haben.
Was this page helpful?
tool_resultFür eine Handvoll gängiger Operationen (Ausführen von Shell-Befehlen, Bearbeiten von Dateien, Steuern eines Browsers, Verwalten des Scratchpad-Speichers) veröffentlicht Anthropic das Tool-Schema und Ihre Anwendung übernimmt die Ausführung. Die Tools in dieser Kategorie sind bash, text_editor, computer und memory.
Das Ausführungsmodell ist identisch mit benutzerdefinierten Tools: Die Antwort enthält einen tool_use-Block, Ihr Code führt die Operation aus, und Sie senden ein tool_result zurück. Der Grund, ein Anthropic-Schema-Tool anstelle eines eigenen Äquivalents zu verwenden, besteht darin, dass diese Schemas trainiert sind. Claude wurde auf Tausenden erfolgreicher Trajektorien optimiert, die genau diese Tool-Signaturen verwenden, sodass es sie zuverlässiger aufruft und sich eleganter von Fehlern erholt als bei einem benutzerdefinierten Tool, das dasselbe tut. Das Schema ist die Schnittstelle, die das Modell bereits erwartet.
Für web_search, web_fetch, code_execution und tool_search führt Anthropic den Code aus. Sie aktivieren das Tool in Ihrer Anfrage und der Server übernimmt alles andere. Sie konstruieren niemals einen tool_result-Block für diese Tools, da die server-seitige Schleife die Operation ausführt und die Ausgabe zurück an das Modell sendet, bevor die Antwort Sie erreicht.
Die Antwort, die Sie erhalten, enthält server_tool_use-Blöcke, die zeigen, was ausgeführt wurde und was zurückgekommen ist, aber wenn Sie sie sehen, ist die Ausführung bereits abgeschlossen. Die Aufgabe Ihrer Anwendung besteht darin, das Tool zu aktivieren und die endgültige Antwort zu lesen, nicht an der Ausführungsschleife teilzunehmen.
Client-seitig ausgeführte Tools (sowohl benutzerdefinierte als auch Anthropic-Schema) erfordern, dass Ihre Anwendung eine Schleife steuert. Das Modell kann Ihren Code nicht ausführen, daher ist jeder Tool-Aufruf ein Hin- und Rückweg: Das Modell fragt, Sie führen aus, Sie berichten zurück, das Modell fährt fort.
Die kanonische Form ist eine while-Schleife, die auf stop_reason basiert:
tools-Array und der Benutzernachricht.stop_reason: "tool_use" und einem oder mehreren tool_use-Blöcken.tool_result-Blöcke.tool_result-Blöcken enthält.stop_reason "tool_use" ist.In der Praxis liest sich dies so: Solange stop_reason == "tool_use", führen Sie die Tools aus und setzen Sie das Gespräch fort. Die Schleife endet bei jedem anderen Stop-Grund ("end_turn", "max_tokens", "stop_sequence" oder "refusal"), was bedeutet, dass Claude entweder eine endgültige Antwort produziert hat oder aus einem anderen Grund gestoppt hat, den Ihre Anwendung behandeln sollte.
Für die Mechanik des Erstellens von Anfragen, der Verarbeitung paralleler Tool-Aufrufe und der Formatierung von Ergebnissen siehe Tool-Aufrufe verarbeiten.
Server-seitig ausgeführte Tools führen ihre eigene Schleife innerhalb der Infrastruktur von Anthropic aus. Eine einzelne Anfrage Ihrer Anwendung kann mehrere Web-Suchen oder Code-Ausführungen auslösen, bevor eine Antwort zurückkommt. Das Modell sucht, liest Ergebnisse, entscheidet sich erneut zu suchen und iteriert, bis es hat, was es braucht – alles ohne Beteiligung Ihrer Anwendung.
Diese interne Schleife hat ein Iterationslimit. Wenn das Modell noch iteriert, wenn es die Obergrenze erreicht, kommt die Antwort mit stop_reason: "pause_turn" anstelle von "end_turn" zurück. Ein pausierter Turn bedeutet, dass die Arbeit nicht abgeschlossen ist; senden Sie das Gespräch erneut (einschließlich der pausierten Antwort), damit das Modell dort weitermachen kann, wo es aufgehört hat. Siehe Server-Tools für das Fortsetzungsmuster.
Tool-Nutzung passt, wenn die Aufgabe etwas erfordert, das das Modell nicht allein aus Text heraus tun kann:
Das Zeichen, dass Sie Tools verwenden sollten: Wenn Sie einen regulären Ausdruck schreiben, um eine Entscheidung aus der Modellausgabe zu extrahieren, hätte diese Entscheidung ein Tool-Aufruf sein sollen. Das Parsen von Freitext zur Wiederherstellung strukturierter Absicht ist ein Zeichen dafür, dass die Struktur in das Schema gehört.
Tool-Nutzung passt nicht, wenn:
| Ansatz | Wann zu verwenden | Was zu erwarten | Mehr erfahren |
|---|---|---|---|
| Benutzerdefinierte Client-Tools | Benutzerdefinierte Geschäftslogik, interne APIs, proprietäre Daten | Sie übernehmen Ausführung und die agentische Schleife | Tools definieren |
| Anthropic-Schema-Client-Tools | Standard-Entwickleroperationen (bash, Dateibearbeitung, Browser-Steuerung) | Sie übernehmen die Ausführung; Claude ruft das Tool zuverlässig auf, da das Schema trainiert ist | Tool-Referenz |
| Server-seitig ausgeführte Tools | Web-Suche, Code-Sandbox, Web-Abruf | Anthropic übernimmt die Ausführung; Sie erhalten Ergebnisse direkt | Server-Tools |