Evaluation von Tool-Nutzung und Function Calling
Wie du die Tool-Aufrufe eines Agenten über Trace-Formate hinweg annotierst und beurteilst (OpenAI, Anthropic, ReAct, LangChain), mit Bewertungen je Schritt in Potato.
Ruft ein Agent ein Tool auf, eine Suche, einen Taschenrechner, eine API, eine Datenbank, dann steckt in jedem Aufruf eine Entscheidung, die sich beurteilen lässt: War das das richtige Tool? Stimmten die Argumente? Wurde das Ergebnis richtig weiterverwendet? Die Evaluation der Tool-Nutzung macht aus diesen Entscheidungen Labels je Schritt entlang eines Agenten-Traces.
Das ist die Ergänzung durch menschliches Urteil zu automatischen Benchmarks für Function Calling: Ein Aufruf kann syntaktisch einwandfrei und für die Aufgabe trotzdem falsch sein.
Was du bei jedem Tool-Aufruf beurteilst
- Tool-Wahl: War das das passende Tool, oder wäre ein anderes (oder gar keines) richtig gewesen?
- Argumente: Waren die Parameter korrekt und vollständig?
- Notwendigkeit: Brauchte es den Aufruf überhaupt, oder war er redundant?
- Umgang mit dem Ergebnis: Hat der Agent die Ausgabe richtig gelesen und genutzt?
Traces aus beliebigen Frameworks lesen
Potato überführt 15 Trace-Formate in eine gemeinsame Schrittansicht. Du kannst die Tool-Nutzung also unabhängig davon beurteilen, womit der Agent gebaut wurde: Tool- und Funktionsaufrufe von OpenAI und Anthropic, ReAct-Traces aus Gedanke, Aktion und Beobachtung, LangChain, LangFuse und weitere. Siehe Agentische Annotation.
Bewertung je Schritt einrichten
Häng an jeden Schritt (also an jeden Tool-Aufruf) eine Bewertung, mit einer bedingten Nachfrage für die Fehlschläge:
annotation_schemes:
- annotation_type: trajectory_eval
name: tool_call_correctness
description: "For each tool call, judge whether it was the right call."
steps_key: agentic_steps
correctness_options: ["Correct", "Wrong tool", "Wrong arguments", "Unnecessary"]
- annotation_type: text
name: notes
description: "If not correct, what should it have done?"
label_requirement:
required: falseWorauf du bei der Qualität achtest
- Zeig die Ausgabe des Tools, nicht nur den Aufruf; sonst kann niemand beurteilen, was der Agent mit dem Ergebnis gemacht hat.
- Gib JSON-Argumente und -Antworten formatiert aus, damit sie lesbar bleiben (in der Agenten-Trace-Anzeige macht Potato das von selbst).
- Trenn falsches Tool von richtigem Tool mit falschen Argumenten, dahinter stecken verschiedene Probleme im Modell.
Weiterführende Lektüre
- Wie man verlässliche Labels für Agenten-Trajektorien bekommt, über das Messen von Übereinstimmung auf mehrschrittigen Traces.
- Wie man KI-Agenten evaluiert
- Annotieren von Agenten-Trajektorien
- Referenz zum Feature Agentische Annotation