Tool-GranularitÀt bei LLM-Agenten: Was uns 20 Workflow-Konfigurationen gelehrt haben
Die Faustregeln rund um Tools fĂŒr LLM-Agenten laufen meist auf eine von zwei Parolen hinaus: âGib dem Modell weniger Tools, damit es nicht durcheinanderkommtâ, oder âMache jede Operation als Tool verfĂŒgbar, damit das Modell frei komponieren kannâ. Beide liegen auf interessante Weise daneben. Wir haben AgentDoc gebaut â einen MCP-gesteuerten Dokumenten-Editor â unter anderem, um einen glaubwĂŒrdigen PrĂŒfstand fĂŒr diese Frage zu haben, und wir haben 20 Workflow-Konfigurationen (AâT) ĂŒber 13 Benchmark-Szenarien laufen lassen, um zu sehen, was wirklich etwas bewegt.
Dieser Beitrag fasst zusammen, was wir herausgefunden haben; hier konzentrieren wir uns auf die praktischen Erkenntnisse fĂŒr alle, die Tools fĂŒr LLM-Agenten entwerfen â ob fĂŒr einen MCP-Server, eine Function-Calling-API oder einen eigenen Orchestrator.
Der Aufbau, kurz gefasst
Jede Konfiguration ist eine andere Kombination aus (a) Tool-OberflĂ€che â atomar vs.
zusammengesetzt vs. gemischt; (b) Workflow-Steuerung â reines ReAct-Prompting vs.
zustandsbeschrĂ€nkter ReAct-FSM; und (c) Verifizierungsrichtlinie â optionaler vs.
verpflichtender get_document_context-Aufruf nach jeder Mutation. Die Konfigurationen
reichen von einer monolithischen Zero-Shot-Baseline (ein riesiges edit_document-Tool,
keine FSM) bis hin zu einer streng kontrollierten FSM mit 35 atomaren Primitiven.
Die Bewertung verwendet die Levenshtein-Distanz auf dem finalen Dokument, plus Token-Verbrauch und explizite Halluzinations-ZĂ€hlungen (Tool-Aufrufe, die auf Indizes verweisen, die nicht existieren).
Erkenntnis 1: âweniger Toolsâ gewinnt bei Tokens, verliert bei Genauigkeit
Die monolithische edit_document-Baseline ist bei den Tokens mit Abstand am
gĂŒnstigsten â das Modell gibt einen groĂen Aufruf aus und wir sind fertig. Aber ihre
Levenshtein-Werte sind bei mehrstufigen Aufgaben rund 3Ă schlechter als die der atomaren
Tool-Konfigurationen, weil das Modell die gesamte Mutation in einem einzigen VorwÀrtsdurchlauf
planen muss, ohne die Möglichkeit, ZwischenzustÀnde zu verifizieren.
Bei langen Dokumenten scheitert dieses Vorgehen völlig: Das Modell gibt eine Bearbeitung aus, die auf eine Ăberschrift verweist, die am angenommenen Offset nicht mehr existiert (weil frĂŒhere hypothetische Bearbeitungen âim selben Planâ die Indizes verschoben haben), und das Ergebnis ist ein beschĂ€digtes Dokument, das selbst fĂŒr den nĂ€chsten Agenten-Zug schwer nachvollziehbar ist.
Erkenntnis 2: âjede Operation als Toolâ gewinnt bei Genauigkeit, verliert bei Tokens â und an Klippen
Rein atomare Tools (separate find, delete_substring,
insert_string usw.) verlagern die Verifizierung in die Reasoning-Schleife des
Modells. Bei instruktions-getunten Frontier-Modellen ist die Genauigkeit hoch â aber die
Token-Zahlen explodieren, und wir beobachten eine scharfe Klippe bei rund 25 Tools an der
OberflĂ€che: darĂŒber beginnt das Modell, zwischen nahezu synonymen Tools falsch zu wĂ€hlen
(insert_paragraph vs. insert_text vs. append_text), was
ein eigener Fehlermodus ist, der in den 8-Tool-Konfigurationen nicht auftritt.
Die Anzahl der Tools interagiert mit der Benennungs-Entropie. Zwanzig Tools, deren Namen sich semantisch ballen (insert_*,append_*,prepend_*), sind fĂŒr das Modell schwieriger als dreiĂig Tools, die offensichtlich verschiedene Verben abdecken.
Erkenntnis 3: ein kleiner Satz gut benannter Makros ist der Sweet Spot
Die Konfigurationen, die im gemeinsamen Genauigkeits-/Token-Score am höchsten abschnitten, teilen
eine Struktur: atomare Primitive fĂŒr den Long Tail, plus drei bis fĂŒnf gut benannte Makros fĂŒr
die offensichtlichen, hÀufigen Pfade (replace_all, format_all_matches,
convert_paragraph_to_heading). Die Makros eliminieren die hÀufigsten mehrstufigen
Sequenzen â sie kĂŒrzen 4 Round-Trips auf 1 â ohne das Modell zu zwingen, sie von Grund auf
zusammenzusetzen.
Der Clou ist nicht die Anzahl der Makros; es ist, dass jedes Makro einer natĂŒrlichsprachlichen Anfrage entsprechen muss, die Nutzer tatsĂ€chlich stellen. Makros, die aus GrĂŒnden der Code-Eleganz erfunden wurden (âcomposeFormatBatchâ), werden vom Modell zugunsten der atomaren Primitive ignoriert. Makros, die nach hĂ€ufigen Anfragen benannt sind (âersetze alle X durch Yâ), werden sofort und korrekt verwendet.
Erkenntnis 4: strukturelle Verifizierung schlÀgt geprompte Verifizierung
Dem Modell zu sagen âlies das Dokument vor jeder Mutation erneutâ funktioniert manchmal. Eine
zustandsbeschrÀnkte ReAct-FSM, die die Schreib-Tools sperrt, bis ein
get_document_context-Aufruf abgeschlossen ist, funktioniert immer. Die
FSM-Konfigurationen senkten halluzinierte Index-Fehler von ~14 % in der reinen Prompt-Bedingung
auf unter 2 % â und die Kosten sind ein einziger zusĂ€tzlicher Round-Trip alle paar ZĂŒge, was
gegenĂŒber einer beschĂ€digten Bearbeitung billig ist.
Das ist die stÀrkste praktische Erkenntnis der gesamten Studie: Wenn dein Agent gegen index-sensitiven Zustand arbeitet (ein Dokument, einen Puffer, einen Syntaxbaum), verlasse dich nicht allein auf Prompts. Mache die Verifizierung in der Tool-OberflÀche selbst strukturell unvermeidlich.
Erkenntnis 5: Index-Drift ist ein Tool-Design-Bug, kein Modell-Bug
Wir haben immer wieder gesehen, dass die schlechtesten Konfigurationen nach keiner FĂ€higkeits-Metrik âschwachâ waren â sie stellten lediglich Tools bereit, deren VertrĂ€ge es dem Modell erlaubten, lokal zu gelingen und global zu scheitern. Ein Tool, das einen Zeichenindex entgegennimmt und Erfolg zurĂŒckmeldet, ohne dem Modell mitzuteilen, dass sich alles nach diesem Index verschoben hat, ist der Bug. Frontier-Modelle lernen mit der Zeit, das auszugleichen. Deine Tool-OberflĂ€che sollte es nicht von ihnen verlangen.
Konkret: Jedes Mutations-Tool in AgentDoc gibt eine strukturierte Payload zurĂŒck, die einen
Dirty-Range-Deskriptor enthÀlt ({shifted_after: 412, delta: -23}). Der nÀchste
Tool-Aufruf sieht das, und die FSM erzwingt ein erneutes Einlesen. Halluzinationen sanken
dadurch nahezu auf den Boden.
Was das bedeutet, wenn du einen Agenten baust
Drei Faustregeln, die mehr wert sind als jede konkrete Zahl oben:
- StandardmĂ€Ăig atomare Primitive, ergĂ€nzt um Makros fĂŒr natĂŒrlichsprachliche Pfade. Optimiere nicht vorzeitig auf Token-Kosten; sie sind billiger als eine beschĂ€digte Bearbeitung.
- Halte die Tool-OberflÀche unter 25 Tools, oder teile sie in namentlich klar unterscheidbare Familien auf. Cluster-Mehrdeutigkeit ist ein echter Fehlermodus.
- Mache die Verifizierung strukturell. Eine FSM, die Schreib-Tools hinter einem kĂŒrzlichen erneuten Einlesen sperrt, kostet fast nichts und eliminiert die gesamte Klasse von Index-Drift-Bugs.
Der nĂ€chste Beitrag dieser Reihe behandelt die Voice-First-Architektur â einschlieĂlich der GrĂŒnde, warum wir Gemini Live direkt an die MCP-OberflĂ€che angebunden haben statt ĂŒber einen Transkriptions-Proxy. Die Entscheidung ergibt sich direkt aus genau den obigen Erkenntnissen.