Das AI Edge Function Calling SDK (FC SDK) ist eine Bibliothek, mit der Entwickler Funktionsaufrufe mit On-Device-LLMs verwenden können. Mit Funktionsaufrufen können Sie Modelle mit externen Tools und APIs verbinden, sodass Modelle bestimmte Funktionen mit den erforderlichen Parametern aufrufen können, um reale Aktionen auszuführen.
Anstatt nur Text zu generieren, kann ein LLM mit dem FC SDK einen strukturierten Aufruf einer Funktion generieren, die eine Aktion ausführt, z. B. die Suche nach aktuellen Informationen, das Stellen von Weckern oder das Reservieren von Tickets.
Das AI Edge FC SDK ist für Android verfügbar und kann mit der LLM Inference API vollständig auf dem Gerät ausgeführt werden. Folgen Sie dem Android-Leitfaden, um mit der Verwendung des SDKs zu beginnen. Dort wird eine grundlegende Implementierung einer Beispielanwendung mit Funktionsaufrufen veranschaulicht.
Pipeline für Funktionsaufrufe
Für die Einrichtung eines On-Device-LLM mit Funktionsaufruffunktionen sind die folgenden wichtigen Schritte erforderlich:
- Funktionsdeklarationen definieren: Die Struktur und Parameter der Funktionen, die der LLM aufrufen kann, müssen im Anwendungscode definiert werden. Dazu gehören auch Funktionsnamen, Parameter und Typen.
- Prompts und Ausgaben formatieren: Eingabe- und Ausgabetext kann natürliche Sprache und Funktionsaufrufe enthalten. Ein Formatierer steuert, wie Datenstrukturen in Strings umgewandelt werden und umgekehrt, damit das LLM Informationen richtig formatieren kann.
- Ausgaben analysieren: Ein Parser erkennt, ob die generierte Antwort einen Funktionsaufruf enthält, und analysiert ihn in einen strukturierten Datentyp, damit die Anwendung den Funktionsaufruf ausführen kann.
- Antworten prüfen: Wenn der Parser einen Funktionsaufruf erkennt, ruft die Anwendung die Funktion mit den entsprechenden Parametern und dem strukturierten Datentyp auf. Andernfalls wird Text in natürlicher Sprache zurückgegeben.
Schlüsselkomponenten
Das FC SDK enthält die folgenden Hauptkomponenten:
- Inferenz-Backend: Eine Schnittstelle zum Ausführen von Inferenzen in einem generativen KI-Modell. Das FC SDK verwendet die LLM Inference API, um Inferenzen auf LiteRT-Modellen (TFLite) auszuführen. Die API verwendet die InferenceBackend-Schnittstelle.
- Prompt-Formatierer: Eine Schnittstelle zum Formatieren von Anfragen und Antworten an und vom generativen KI-Modell. Das FC SDK bietet einen Formatierer, der Funktionsdeklarationen in das vom LLM erforderliche modellspezifische Format konvertiert und in den Systemprompt einfügt. Der Formatierer verarbeitet auch modellspezifische Tokens, um Nutzer- und Modellwechsel anzugeben. Die API verwendet die Schnittstelle ModelFormatter.
- Ausgabeparser: Das FC SDK bietet einen Parser, der erkennt, ob die Ausgabe des Modells einen Funktionsaufruf darstellt, und ihn in eine Datenstruktur für die Anwendung parset. Die API verwendet die Schnittstelle ModelFormatter.
- Eingeschränkte Dekodierung: Eine Benutzeroberfläche zum Erstellen und Verwalten von Einschränkungen, um sicherzustellen, dass die generierte Ausgabe bestimmten Regeln oder Bedingungen entspricht. Bei unterstützten Modellen konfiguriert das FC SDK das Inferenz-Back-End für die eingeschränkte Dekodierung. So wird sichergestellt, dass das Modell nur gültige Funktionsnamen und ‑parameter ausgibt. Die API verwendet die Schnittstelle ConstraintProvider.