Werkzeugnutzung (Funktionsaufrufe)
Claude ist in der Lage, mit externen clientseitigen Werkzeugen und Funktionen zu interagieren, wodurch Sie Claude mit Ihren eigenen benutzerdefinierten Werkzeugen ausstatten können, um eine größere Vielfalt an Aufgaben auszuführen.
Lernen Sie alles, was Sie für die Beherrschung der Werkzeugnutzung mit Claude benötigen, in unserem neuen umfassenden Werkzeugnutzungskurs! Bitte teilen Sie weiterhin Ihre Ideen und Vorschläge über dieses Formular mit.
Hier ist ein Beispiel, wie Sie Claude über die Messages API Werkzeuge zur Verfügung stellen können:
Wie die Werkzeugnutzung funktioniert
Integrieren Sie externe Werkzeuge mit Claude in diesen Schritten:
Stellen Sie Claude Werkzeuge und eine Benutzeranfrage zur Verfügung
- Definieren Sie Werkzeuge mit Namen, Beschreibungen und Eingabeschemata in Ihrer API-Anfrage.
- Fügen Sie eine Benutzeranfrage hinzu, die diese Werkzeuge benötigen könnte, z.B. “Wie ist das Wetter in San Francisco?”
Claude entscheidet sich für die Verwendung eines Werkzeugs
- Claude bewertet, ob Werkzeuge bei der Anfrage des Benutzers helfen können.
- Falls ja, erstellt Claude eine korrekt formatierte Werkzeugnutzungsanfrage.
- Die API-Antwort hat einen
stop_reason
vontool_use
, der Claudes Absicht signalisiert.
Extrahieren Sie die Werkzeugeingabe, führen Sie Code aus und geben Sie Ergebnisse zurück
- Extrahieren Sie auf Ihrer Seite den Werkzeugnamen und die Eingabe aus Claudes Anfrage.
- Führen Sie den eigentlichen Werkzeugcode clientseitig aus.
- Setzen Sie das Gespräch mit einer neuen
user
-Nachricht fort, die einentool_result
-Inhaltsblock enthält.
Claude verwendet das Werkzeugergebnis zur Formulierung einer Antwort
- Claude analysiert die Werkzeugergebnisse, um seine endgültige Antwort auf die ursprüngliche Benutzeranfrage zu erstellen.
Hinweis: Die Schritte 3 und 4 sind optional. Für einige Arbeitsabläufe könnte Claudes Werkzeugnutzungsanfrage (Schritt 2) alles sein, was Sie benötigen, ohne Ergebnisse an Claude zurückzusenden.
Werkzeuge werden vom Benutzer bereitgestellt
Es ist wichtig zu beachten, dass Claude keinen Zugriff auf eingebaute serverseitige Werkzeuge hat. Alle Werkzeuge müssen explizit von Ihnen, dem Benutzer, in jeder API-Anfrage bereitgestellt werden. Dies gibt Ihnen volle Kontrolle und Flexibilität über die Werkzeuge, die Claude verwenden kann.
Die Computernutzung (Beta) Funktionalität ist eine Ausnahme - sie führt Werkzeuge ein, die von Anthropic bereitgestellt, aber von Ihnen, dem Benutzer, implementiert werden.
Wie man die Werkzeugnutzung implementiert
Auswahl eines Modells
Verwenden Sie im Allgemeinen Claude 3.5 Sonnet oder Claude 3 Opus für komplexe Werkzeuge und mehrdeutige Anfragen; sie handhaben mehrere Werkzeuge besser und suchen bei Bedarf nach Klärung.
Verwenden Sie Claude 3 Haiku für unkomplizierte Werkzeuge, beachten Sie aber, dass es fehlende Parameter erschließen kann.
Spezifizierung von Werkzeugen
Werkzeuge werden im tools
Top-Level-Parameter der API-Anfrage spezifiziert. Jede Werkzeugdefinition enthält:
Parameter | Beschreibung |
---|---|
name | Der Name des Werkzeugs. Muss dem Regex ^[a-zA-Z0-9_-]{1,64}$ entsprechen. |
description | Eine detaillierte Klartextbeschreibung dessen, was das Werkzeug tut, wann es verwendet werden sollte und wie es sich verhält. |
input_schema | Ein JSON Schema Objekt, das die erwarteten Parameter für das Werkzeug definiert. |
Werkzeugnutzungs-Systemprompt
Wenn Sie die Anthropic API mit dem tools
Parameter aufrufen, erstellen wir einen speziellen Systemprompt aus den Werkzeugdefinitionen, der Werkzeugkonfiguration und jedem benutzerspezifischen Systemprompt. Der erstellte Prompt ist darauf ausgelegt, das Modell anzuweisen, das angegebene Werkzeug zu verwenden und den notwendigen Kontext für das ordnungsgemäße Funktionieren des Werkzeugs bereitzustellen:
[Fortsetzung folgt…]