Leitfaden für KI-Edge-Funktionsaufrufe

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. So können Modelle bestimmte Funktionen mit den erforderlichen Parametern aufrufen, um reale Aktionen auszuführen.

Anstatt nur Text zu generieren, kann ein LLM, das das FC SDK verwendet, einen strukturierten Aufruf einer Funktion generieren, die eine Aktion ausführt, z. B. nach aktuellen Informationen suchen, Alarme einstellen oder Reservierungen vornehmen.

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. Hier finden Sie eine Anleitung für Android, die Sie durch eine einfache Implementierung einer Beispielanwendung mit Funktionsaufrufen führt.

Pipeline für Funktionsaufrufe

Für die Einrichtung eines On-Device-LLM mit Funktionsaufruffunktionen sind die folgenden wichtigen Schritte erforderlich:

  1. Funktionsdeklarationen definieren: Die Struktur und die Parameter der Funktionen, die das LLM aufrufen kann, müssen in Ihrem Anwendungscode definiert werden. Dazu gehört die Angabe von Funktionsnamen, Parametern und Typen.
  2. Prompts und Ausgaben formatieren: Eingabe- und Ausgabetext können natürliche Sprache und Funktionsaufrufe enthalten. Ein Formatierer steuert, wie Datenstrukturen in Strings konvertiert werden und umgekehrt. So kann das LLM Informationen richtig formatieren.
  3. Ausgaben parsen: Ein Parser erkennt, ob die generierte Antwort einen Funktionsaufruf enthält, und parst sie in einen strukturierten Datentyp, damit die Anwendung den Funktionsaufruf ausführen kann.
  4. 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:

  • Inference Backend: Eine Schnittstelle zum Ausführen von Inferenzen für ein generatives KI-Modell. Das FC SDK verwendet die LLM Inference API, um Inferenzen für LiteRT-Modelle (TFLite) auszuführen. Die API verwendet die InferenceBackend-Schnittstelle.
  • Prompt Formatter: Eine Schnittstelle zum Formatieren von Anfragen und Antworten an und von dem Modell für generative KI. Das FC SDK bietet einen Formatierer, der Funktionsdeklarationen in das modellspezifische Format konvertiert, das vom LLM benötigt wird, und sie in den System-Prompt einfügt. Der Formatierer verarbeitet auch modellspezifische Tokens, um Nutzer- und Modellrunden anzugeben. Die API verwendet die Schnittstelle ModelFormatter.
  • Output Parser: Das FC SDK bietet einen Parser, der erkennt, ob die Ausgabe des Modells einen Funktionsaufruf darstellt, und ihn in eine Datenstruktur für die Verwendung durch die Anwendung parst. Die API verwendet die Schnittstelle ModelFormatter.
  • Eingeschränktes Decodieren: Eine Schnittstelle 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-Backend so, dass es eingeschränktes Decodieren verwendet. Dadurch wird sichergestellt, dass das Modell nur gültige Funktionsnamen und Parameter ausgibt. Die API verwendet die ConstraintProvider-Schnittstelle.