Function Calling ist die Art, wie ein Sprachmodell (LLM, Large Language Model; ein KI-Modell, das Text erzeugt) statt einer Antwort in Worten einen Auftrag an eine Funktion formuliert: etwa „ruf die Bestell-Datenbank mit der Nummer 4711 auf". Das Modell liefert den Funktionsnamen und die passenden Werte als strukturierten Datensatz (JSON, ein maschinenlesbares Textformat) zurück. Die eigentliche Ausführung übernimmt die Anwendung, die das Modell aufruft; das Modell selbst führt nichts aus.
Was ist Function Calling?
Function Calling entstand aus einer einfachen Erkenntnis: Ein Sprachmodell (LLM) kann nur Text erzeugen. Sobald eine Anfrage aktuelle Daten, exakte Berechnungen oder Zugriff auf ein externes System (zum Beispiel eine Warenwirtschaft oder eine Datenbank) braucht, muss das Modell mit einer Anwendung außerhalb seines eigenen Sprachraums zusammenspielen. OpenAI führte den Mechanismus im Juni 2023 mit dem Modell GPT-4-0613 ein, Google und Anthropic zogen mit vergleichbaren Schnittstellen nach. Der Kern ist bei allen drei Anbietern identisch, die Terminologie unterscheidet sich: OpenAI und Google sprechen von Function Calling, Anthropic von Tool Use.
Der Ablauf umfasst vier Schritte. Erstens registriert die Anwendung im Modell-Aufruf ein oder mehrere Funktions-Schemas mit Name, Beschreibung und JSON-Schema der Parameter. Zweitens entscheidet das Modell auf Basis der Nutzer-Anfrage, ob eine Funktion nötig ist, wählt sie aus und formuliert die Argumente als JSON. Drittens führt die Anwendung die Funktion aus; der Zugriff auf das externe System liegt bei ihr, das Modell selbst hat keine Ausführungsrechte. Viertens geht das Ergebnis zurück ans Modell, das die finale Antwort für den Nutzer formuliert.
Wichtig für das Verständnis: Das JSON entsteht generativ und wird nicht von einem deterministischen Parser erzeugt. Anbieter stellen deshalb Strict-Modi oder harte Schema-Validierung bereit, um syntaktisch korrekten Output zu garantieren. Die semantische Prüfung (ob die Argumente inhaltlich sinnvoll sind) bleibt Sache der aufrufenden Anwendung. Function Calling ist die Grundlage, auf der Agent-Frameworks, Multi-Step-Workflows und Server-Standards wie das Model Context Protocol aufsetzen.
Abgrenzung zu Tool Use, MCP, Agent Frameworks und Structured Output
Der Begriff wird im Alltag mit angrenzenden Konzepten vermischt. Die folgende Tabelle klärt die Rollen im Stack.
| Begriff | Rolle | Ebene |
|---|---|---|
| Function Calling | Modell erzeugt strukturierten Tool-Aufruf als JSON | LLM-API |
| Tool Use | Anthropic-Terminologie für denselben Mechanismus | LLM-API |
| Structured Output | Modell erzeugt JSON-Antwort nach Schema, ohne externe Ausführung | LLM-API |
| Model Context Protocol (MCP) | Anbieterunabhängiger Server-Standard für Tools, Ressourcen, Prompts | Server-Ebene |
| Agent Framework | Bau-Ebene über Function Calling: Zustand, Kontrollfluss, Fehler-Handling | Entwicklungs-Bibliothek |
| A2A-Protokoll | Kommunikations-Standard zwischen mehreren Agenten | Agent-zu-Agent |
Function Calling und Tool Use bezeichnen denselben Mechanismus in unterschiedlicher Anbieter-Sprache. Structured Output erzwingt zwar ebenfalls ein JSON-Schema für die Modell-Antwort, verzichtet aber auf externe Ausführung und dient damit der Extraktion, nicht der Handlung. MCP löst das Verteilungsproblem, indem dieselben Tools über einen Server-Standard für mehrere LLMs und Clients verfügbar werden. Function Calling ist die Client-seitige Mechanik, MCP die Server-Seite. Agent Frameworks setzen eine Ebene darüber an: Sie kapseln Function Calling, ergänzen Zustandsverwaltung, Multi-Step-Loops und Guardrails. Das A2A-Protokoll adressiert eine andere Achse: die Kommunikation zwischen Agenten anstelle der zwischen Modell und Tool.
Beispiel: Support-Assistent mit Order-Status-Funktion
Eine Anwendung registriert im Modell-Aufruf die Funktion getOrderStatus(orderId: string) mit JSON-Schema und Beschreibung. Auf die Nutzer-Anfrage „Wo ist meine Bestellung 4711?" gibt das Modell das strukturierte Objekt {"name": "getOrderStatus", "arguments": {"orderId": "4711"}} aus. Die Anwendung ruft das Order-System auf, erhält den Status („in Zustellung, voraussichtlich Freitag") und schickt das Ergebnis zurück ans Modell. Das Modell formuliert daraus die Nutzer-Antwort in natürlicher Sprache.
Typische Anwendungsfelder sind Retrieval-Augmented Generation mit Tool-Router (Modell entscheidet, ob eine Wissensbasis-Suche nötig ist), agentische Workflows in einem Framework wie LangGraph oder CrewAI, MCP-Server-Anbindung an bestehende Enterprise-Systeme sowie strukturierte Datenbank-Abfragen aus Chat-Interfaces. Die Zuverlässigkeit hängt an drei Faktoren: präzise Feld-Beschreibungen im Schema, Enums für begrenzte Wertebereiche und eine Repair-Schleife für ungültige Argumente.
Function Calling im eigenen Unternehmen umsetzen?
Wir zeigen, wie sich das in deiner Systemlandschaft konkret abbilden lässt.
Ökonomie, Reliability-Patterns, Anbieter-Vergleich
Tool UsePattern-Ebene um Function Calling herum
Model Context ProtocolServer-Standard für anbieterunabhängige Tools
Agent FrameworksBau-Ebene über Function Calling
A2A-ProtokollKommunikation zwischen Agenten
Structured OutputJSON-Antwort ohne externe Ausführung
Agent OrchestrationLaufzeit-Koordination mehrerer Agenten
Agentic AIÜbergeordnetes Operating-Modell