Skip to main content
Verwende Tools, wenn ein Agent Anwendungsdaten lesen, einen internen Dienst aufrufen oder eine Aktion ausführen muss. Das Agent SDK validiert Tool-Grenzen und führt den Tool-Code in deiner Anwendung aus.

Ein lokales Tool definieren

defineTool() akzeptiert eine Beschreibung, optionale JSON-Parameter, Laufzeitprüfungen, ein Zeitlimit und eine execute()-Funktion.
Läuft das Zeitlimit ab, bricht die Laufzeit context.signal ab, markiert den Lauf als fehlgeschlagen und gibt den Zeitüberschreitungsfehler erneut aus. Schemas können Funktionen oder Objekte mit parse() oder safeParse() sein. Ungültige Modellargumente und Tool-Ergebnisse schlagen fehl, bevor sie die Tool-Grenze überschreiten.

Arbeit in deiner Anwendung ausführen

Setze execute: false, wenn deine Anwendung statt des SDK-Prozesses die Arbeit ausführt. Setze den pausierten Lauf mit dem Ergebnis in toolOutputs fort. Gib bei einem interaktiven Tool null aus onToolCalled zurück. Nach der Fortsetzung kann onResponseReceived die bereitgestellte Antwort prüfen oder umwandeln.

Fortschritt melden

Ein asynchroner Generator kann vor dem endgültigen Ergebnis vorläufige Ergebnisse zurückgeben:
Der Fortschritt ist über tool.preliminary_result-Ereignisse und preliminaryResults des Schritts verfügbar.

Unabhängige Tools parallel ausführen

Wenn ein Modell-Turn mehrere unabhängige Tools sicher aufrufen kann, konfiguriere eine Parallelitätsgrenze:
Die Laufzeit behält die Reihenfolge der Tool-Ergebnismeldungen bei, auch wenn sich lokale Ausführungen überschneiden.

Weiterführende Anleitungen

Zuletzt geändert am 2. Oktober 2026