Toolaufruf umfasst mehrere Schlüsselkomponenten, die zusammenarbeiten, um die Interaktion der KI mit externen Tools zu erleichtern. Moderne LLMs wie Claude von Anthropic, Llama 3 von Meta, Mistral und IBM® Granite™ verfügen alle über Funktionen zum Aufrufen von Tools, gehen aber mit jedem etwas anders um.
Die erste Komponente ist das KI-Modell selbst, das erkennt, wenn es nicht über ausreichende Kenntnisse verfügt oder eine externe Funktion benötigt, um eine Anfrage zu erledigen.
Als Nächstes identifiziert der Mechanismus zur Werkzeugauswahl die geeigneten Abhängigkeiten zur Bewältigung der spezifischen Aufgabe, unabhängig davon, ob es sich um eine Suchmaschine, eine Datenbank oder eine Rechenressource handelt.
Bei Auswahl eines Tools kommt die API-Schnittstelle ins Spiel, über die KI strukturierte Abfragen senden und Antworten in einem maschinenlesbaren Format empfangen kann.
Schließlich sorgt das Antwortverarbeitungssystem dafür, dass die abgerufenen Daten korrekt formatiert und dem Benutzer auf sinnvolle Weise präsentiert werden.
Schritt 1. Erkennen der Notwendigkeit eines Tools
Nehmen wir an, ein Benutzer fragt ein LLM: „Wie ist das Wetter gerade in San Francisco?“ Die KI nutzt Natural Language Understanding, um zu erkennen, dass Echtzeit-Wetterdaten benötigt werden, die nicht aus ihrer statischen Wissensbasis abgeleitet werden können.
Einer von einem Modell gestellten Anfrage zur Verwendung eines Tools wird automatisch eine eindeutige Tool-Aufruf-ID zugewiesen, die als Trackingnummer dient, um die Anfrage mit dem entsprechenden Ergebnis zu verknüpfen.
Schritt 2. Auswahl des Werkzeugs
Die KI identifiziert das beste Tool für die Aufgabe, in diesem Fall die Überprüfung einer aktuellen Wetterdatenbank. Dieser Schritt trägt dazu bei, dass die abgerufenen Informationen korrekt und relevant sind.
Jedes Tool enthält Metadaten und strukturierte Informationen wie einen eindeutigen Toolnamen (oder Funktionsnamen), der dem Modell und System hilft, es korrekt zu identifizieren. Weitere Metadaten sind Beschreibungen, Werkzeugparameter und erforderliche Eingabe- und Ausgabetypen.
Das Modell trifft eine Toolauswahl, nachdem es festgestellt hat, dass die Daten aus einer Auswahl verfügbarer Tools abgerufen werden müssen.
Vorlagen sind strukturierte Promptformate, die dem Modell mitteilen, welches Tool verwendet werden soll und welche Argumente (oder „Argumente“) bereitgestellt werden müssen, was eine kontrolliertere und strukturiertere Interaktion mit APIs ermöglicht.
Im Kontext des Toolaufrufs beziehen sich Argumente auf die strukturierten Eingaben, die an ein Tool oder eine Funktion übergeben werden, wenn es von einem generativen Modell gestartet wird. Diese Argumente definieren die Parameter, die das Tool zur ordnungsgemäßen Ausführung benötigt.
Die Kombination von Tool-Calling mit Retrieval-Augmented Generation (RAG) verbessert die KI-Funktionen, indem Systeme sowohl strukturierte als auch unstrukturierte Daten abrufen können, bevor strukturierte Ausgaben generiert werden.
Dieser Ansatz verbessert die kontextuelle Relevanz, indem die relevantesten Daten abgerufen werden, bevor eine Antwort generiert wird, was zu fundierteren und genaueren Ausgaben führt.
Außerdem minimiert es den API-Overhead, indem mehrere Abrufe in einem einzigen Schritt zusammengefasst werden, wodurch Latenz und Kosten reduziert werden. RAG ist flexibler als herkömmliche Tools und ermöglicht es, Modelle aus verschiedenen Quellen zu beziehen, was es für unterschiedliche Bereiche äußerst anpassungsfähig macht.
Im Gegensatz zur starren Struktur herkömmlicher Werkzeuge ermöglicht RAG eine fließendere Integration des abgerufenen Wissens mit Argumentation und Generierung, was zu dynamischeren und einfühlsameren Antworten führt.
Schritt 3. Erstellen und Senden einer Abfrage
Die KI formuliert dann eine strukturierte Anfrage, die das Tool oder die API verstehen kann.
Jedes Tool ist mit bestimmten Toolfunktionen verknüpft, die bestimmen, was das Tool tut. Diese Funktionen basieren auf einer API-Referenz, die eine Dokumentation zur Interaktion mit der API des Tools enthält, einschließlich Endgerät-URLs, Anforderungsmethoden und Antwortformate.
Für den Zugriff auf eine externe API benötigen viele Dienste einen API-Schlüssel, eine eindeutige Kennung, die die Berechtigung zum Senden von Anforderungen gewährt. Wenn das Werkzeug ausgewählt und die Parameter festgelegt sind, wird ein API-Aufruf ausgeführt, um die angeforderten Daten abzurufen. Diese Anforderung wird in der Regel über HTTP an einen externen Server gesendet.
Schritt 4. Empfangen und Verarbeiten der Antwort
Das externe Tool gibt Daten zurück. Die KI muss dann die Tool-Ergebnisse analysieren. Bei einer Wetteranfrage kann die API mit einem JSON-Schemaobjekt antworten, das Temperatur, Luftfeuchtigkeit und Windgeschwindigkeit enthält. Die KI filtert und strukturiert diese Daten, um eine für den Nutzer sinnvolle Antwort zusammenzufassen.
Schritt 5: Präsentation der Informationen oder Ergreifen von Maßnahmen
Die KI liefert die verarbeiteten Informationen auf intuitive Weise. Wenn die Anfrage eine Automatisierung beinhaltet, z. B. das Festlegen einer Erinnerung, würde die KI bestätigen, dass eine Aktion geplant wurde.
Schritt 6. Verfeinerung der Suche
Wenn der Benutzer weitere Details oder Änderungen anfordert, kann die KI den Vorgang mit einer angepassten Abfrage wiederholen und so sicherstellen, dass sie ihre Antwort auf der Grundlage der Benutzeranforderungen fortlaufend weiter verfeinert.
LangChain wird häufig beim Toolaufruf verwendet, indem es ein Open-Source-Framework für die Integration externer Tools, APIs und Funktionen mit LLMs bietet. Es hilft bei der Verwaltung der Toolausführung, der Eingabe- oder Ausgabeverarbeitung und der kontextbezogenen Entscheidungsfindung.
Zum Beispiel verarbeitet LangChain Funktionsargumente mit einem Parser für Benutzerabfragen, extrahiert relevante Parameter und formatiert sie korrekt für das Tool. Im Gegensatz zum einfachen Werkzeugaufruf kann LangChain frühere Ausgaben speichern und abrufen, was bessere Multiturn-Interaktionen ermöglicht.
LangChain ermöglicht die Kombination mehrerer Tools in einer Sequenz und ermöglicht so komplexere Workflows. So kann es beispielsweise zunächst Daten aus der Wetter-API abrufen und dann ein separates Tool verwenden, um Kleidung auf Basis der Vorhersage zu empfehlen.