Wird geladen

Tools erstellen, die Claude auswählt

Lektion 19 Min.
Wird geladen

Tools erstellen, die Claude auswählt

ZusammenfassungTranskript

Wenn Claude das falsche Tool wählt, schau zuerst auf die Definition des Tools. Das Video begleitet Meridian, eine fiktive Engineering-Beratung. Meridian schreibt seine Tool-Definitionen um und lässt dieselben 30 Fragen vor und nach der Überarbeitung laufen.

Die Demo in diesem Video wurde im September 2026 aufgezeichnet. Sie lief auf Claude Sonnet 5 (claude-sonnet-5). Die Ergebnisse können bei neueren Modellen abweichen.

Angenommen, dein Tool-Loop funktioniert, und dann passiert eines davon:

  • Claude ruft das falsche Tool auf.
  • Es macht drei Tool-Aufrufe für eine einzige Tatsache.
  • Es übergibt 0142, wo dein Code MEG-2026-0142 erwartet.

Claude erhält niemals die Funktion, die dein Tool ausführt. Es sieht nur die Definition, die du sendest, und die Ergebnisse, die du zurückgibst. Wenn Claude also ein Tool falsch nutzt, schau zuerst auf die Definition.

Meridian hat einen internen Assistenten für Mitarbeiterfragen zu Projekten, Genehmigungen und Abrechnungen. Das Überarbeiten seiner Tool-Definitionen hob den Score von 14 auf 26 von 30 Testfragen, beim selben Modell.

Was Claude von deinem Tool sieht

Eine Tool-Definition ist ein Block aus JSON, der Claude mitteilt, dass ein Tool existiert. Du sendest sie in der tools-Liste jeder Anfrage.

Hier ist die überarbeitete Definition von Meridians Projekt-Tool. Sie hat vier Teile.

json
{
  "name": "lookup_project_status",
  "description": "Returns current facts about a single Meridian …",
  "input_schema": {
    "type": "object",
    "properties": {
      "project_id": {
        "type": "string",
        "description": "Full Meridian job number in the format MEG-YYYY-NNNN, e.g. MEG-2026-0142."
      },
      "fields": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": ["phase", "status", "lead", "hours", "deadline", "site", "client"]
        },
        "description": "Which fields to return. Omit to return everything."
      }
    },
    "required": ["project_id"]
  },
  "input_examples": [
    {"project_id": "MEG-2026-0142", "fields": ["phase", "status"]},
    {"project_id": "MEG-2025-0417", "fields": ["lead", "hours"]},
    {"project_id": "MEG-2024-0233"}
  ]
}
  • name ist die Bezeichnung, mit der Claude das Tool aufruft.
  • description ist einfacher Text, den du schreibst und den Claude liest. Er ist hier gekürzt und wird im nächsten Abschnitt vollständig gezeigt.
  • input_schema listet die Parameter des Tools in JSON Schema auf, jeweils mit einem Namen, einem Typ und einer eigenen Beschreibung. required gibt an, welche angegeben werden müssen.
  • input_examples ist optional. Es zeigt Claude, wie eine gute Eingabe aussieht, etwa eine vollständige Auftragsnummer. Jedes Beispiel muss gegen input_schema gültig sein, sonst gibt die API einen 400-Fehler zurück.

Claude entscheidet, ob es einen Tool-Aufruf macht, indem es die Anfrage des Nutzers und die Beschreibung jedes Tools liest.

Schreibe eine ausführliche Beschreibung

Von den vier Teilen leistet die Beschreibung am meisten.

Strebe mindestens drei bis vier Sätze an, mehr, wenn das Tool komplex ist. Decke vier Dinge ab:

  1. Was das Tool tut
  2. Wann es zu verwenden ist und wann nicht
  3. Was jeder Parameter bedeutet
  4. Was es nicht zurückgibt

Hier ist Meridians vollständige Beschreibung:

text
Returns current facts about a single Meridian project: phase,
schedule status, project lead, hours budgeted and consumed,
deadline, site city, and client. Use this only when the user asks
about a specific project by name or job number; if only a partial
number is given (e.g. 'the 0142 job'), normalize it to the full
MEG-YYYY-NNNN format before calling. Pass the fields parameter to
fetch just the fields the question needs instead of the whole
record. This tool does not return permit or invoicing information.
Use get_permit_status or get_billing_summary for those.
Meridians Tool-Beschreibung, wobei jeder Abschnitt danach eingefärbt ist, welches der vier Dinge er abdeckt.

Meridians Beschreibung deckt alle vier Dinge ab, die eine gute Beschreibung braucht.

Anzugeben, wann das Tool zu verwenden ist und wann nicht, hilft Claude, den Aufruf des falschen Tools zu vermeiden. Meridians Beschreibung beschränkt das Tool auf Fragen zu einem Projekt. Für Genehmigungen und Abrechnungen nennt sie die zu verwendenden Tools.

Überlappende Tools zu einem zusammenfassen

Eine gute Beschreibung hilft nicht viel, wenn mehrere Tools fast die gleiche Aufgabe erledigen.

Meridians erster Satz hatte sechs dünne Tools, jedes mit einer einzeiligen Beschreibung. Vier davon gaben jeweils eine einzelne Projekttatsache zurück. Diese vier überlappten sich, sodass Claude raten musste, welche eine Frage benötigte.

Die Lösung besteht darin, die vier zu einem Tool zusammenzufassen, lookup_project_status, mit einem fields-Parameter, der angibt, welche Fakten zurückgegeben werden sollen. Die anderen beiden, für Genehmigungen und Abrechnungen, erledigen unterschiedliche Aufgaben und bleiben bestehen. Aus sechs Tools werden drei.

Die Änderung mit einem Eval messen

Ein Eval ist ein fester Satz von Testfragen mit bekannten richtigen Antworten, der gegen Claude ausgeführt und bewertet wird. Er zeigt, ob die neuen Definitionen besser sind.

Meridians Eval prüft, ob Claude die richtigen Tools aufruft. Er hat 30 Fragen, die ein Mitarbeiter stellen würde, jede mit den richtigen Tool-Aufrufen gekennzeichnet. Meridian führte die 30 Fragen zweimal auf claude-sonnet-5 aus, einmal mit jedem Satz von Tools.

Satz von ToolsAnzahl der ToolsScore
Dünn614/30 (47 %)
Konsolidiert326/30 (87 %)

Nur den fehlerhaften Teil beheben

Um einen einzelnen Fehler zu beheben, finde den Teil der Definition, der dafür verantwortlich ist, ändere nur diesen Teil und führe dein Eval erneut aus.

Was Claude falsch machtZu ändernder TeilWas zu tun ist
Ruft das falsche Tool auf oder mehr Tools, als die Frage brauchtDie BeschreibungSage, was jedes Tool tut und wann es zu verwenden ist. Kombiniere überlappende Tools.
Übergibt einen Wert des falschen Typs oder FormatsDas Schema und die BeispieleGib das Format in der eigenen description des Parameters an. Füge input_examples hinzu.

Fehlerbehebung bei der Tool-Nutzung listet weitere Symptome und Lösungen auf.

Wichtigste Erkenntnisse

  • Schreibe Beschreibungen von mindestens drei bis vier Sätzen und sage, wann das Tool nicht zu verwenden ist.
  • Fasse überlappende Tools zu einem Tool mit Parametern zusammen.
  • Miss Änderungen mit einem Eval.
  • Um einen einzelnen Fehler zu beheben, ändere nur den fehlerhaften Teil.