Lektion 2 von 6·12 Min Lesezeit

Tool-Use und Function Calling

Tools machen den Unterschied zwischen einem „schlauen Texter" und einem „handlungsfähigen Agenten". Durch Tool-Use kann ein AI-Agent mit der realen Welt interagieren: Datenbanken abfragen, APIs aufrufen, Dateien erstellen, E-Mails senden.

Wie funktioniert Function Calling?

Moderne LLMs (Claude, GPT-5, Gemini) unterstützen natives Function Calling:

  1. Tool-Definitionen: Sie beschreiben verfügbare Tools als JSON-Schema
  2. LLM-Entscheidung: Das Modell entscheidet, welches Tool mit welchen Parametern aufgerufen wird
  3. Execution: Ihr Code führt den Tool-Call aus
  4. Result: Das Ergebnis wird dem LLM zurückgegeben
const tools = [{
  name: "search_customers",
  description: "Sucht Kunden nach Name oder E-Mail",
  parameters: {
    type: "object",
    properties: {
      query: { type: "string", description: "Suchbegriff" },
      limit: { type: "number", description: "Max Ergebnisse", default: 10 }
    },
    required: ["query"]
  }
}]

Tool-Kategorien

Datenbank-Tools

  • SQL-Abfragen (read-only für Sicherheit)
  • CRUD-Operationen mit Validierung
  • Aggregationen und Reports

API-Tools

  • REST/GraphQL-Endpunkte aufrufen
  • Webhooks triggern
  • Third-Party-Integrationen (Slack, Jira, HubSpot)

Datei-Tools

  • Dateien lesen und schreiben
  • Dokumente generieren (PDF, Excel, CSV)
  • Bilder und Screenshots verarbeiten

System-Tools

  • Shell-Befehle ausführen (sandboxed!)
  • Container starten/stoppen
  • Monitoring-Daten abrufen

Best Practices für Tool-Design

PrinzipBeschreibung
Single ResponsibilityEin Tool = eine klar definierte Aufgabe
Klare BeschreibungDas LLM muss verstehen, wann welches Tool passt
ValidierungInput-Parameter validieren, bevor die Aktion ausgeführt wird
IdempotenzGleicher Input → gleiches Ergebnis (wo möglich)
FehlerbehandlungKlare Fehlermeldungen, die das LLM verarbeiten kann

Sicherheitsaspekte

  • Read vs. Write: Nur Lese-Tools als Default, Schreib-Tools explizit freigeben
  • Sandboxing: Shell-Befehle nur in isolierten Containern ausführen
  • Rate-Limiting: Maximale Tool-Calls pro Session begrenzen
  • Approval-Flow: Kritische Aktionen (Löschen, Senden) erfordern menschliche Genehmigung

Praxis-Tipp: Beginnen Sie mit 3–5 gut definierten Tools. Mehr Tools = mehr Verwirrung für das LLM. Wenn die Accuracy sinkt, haben Sie wahrscheinlich zu viele ähnliche Tools.