Le SDK d'appel de fonction Edge AI (SDK FC) est une bibliothèque qui permet aux développeurs d'utiliser l'appel de fonction avec des LLM sur l'appareil. L'appel de fonction vous permet de connecter des modèles à des outils et des API externes, ce qui leur permet d'appeler des fonctions spécifiques avec les paramètres nécessaires pour exécuter des actions réelles.
Plutôt que de générer simplement du texte, un LLM utilisant le SDK FC peut générer un appel structuré à une fonction qui exécute une action, comme rechercher des informations à jour, définir des alarmes ou effectuer des réservations.
Le SDK FC AI Edge est disponible pour Android et peut être entièrement exécuté sur l'appareil avec l'API d'inférence LLM. Commencez à utiliser le SDK en suivant le guide Android, qui vous explique comment implémenter de manière basique un exemple d'application à l'aide d'un appel de fonction.
Pipeline d'appel de fonction
Pour configurer un LLM sur l'appareil avec des fonctionnalités d'appel de fonction, procédez comme suit:
- Définir des déclarations de fonction: la structure et les paramètres des fonctions que le LLM peut appeler doivent être définis dans le code de votre application. Cela inclut la spécification des noms, des paramètres et des types de fonctions.
- Mettre en forme les requêtes et les sorties: le texte d'entrée et de sortie peut contenir du langage naturel et des appels de fonction. Un formateur contrôle la manière dont les structures de données sont converties en chaînes et à partir de chaînes, ce qui permet au LLM de mettre en forme les informations de manière appropriée.
- Analyser les sorties: un analyseur détecte si la réponse générée contient un appel de fonction et l'analyse en un type de données structuré afin que l'application puisse exécuter l'appel de fonction.
- Examiner les réponses: si l'analyseur détecte un appel de fonction, l'application appelle la fonction avec les paramètres et le type de données structurés appropriés. Sinon, il renvoie un texte en langage naturel.
Composants clés
Le SDK FC contient les composants clés suivants:
- Backend d'inférence: interface permettant d'exécuter une inférence sur un modèle d'IA générative. Le SDK FC utilise l'API d'inférence LLM pour exécuter des inférences sur les modèles LiteRT (TFLite). L'API utilise l'interface InferenceBackend.
- Outil de formatage des requêtes: interface permettant de mettre en forme les requêtes et les réponses envoyées au modèle d'IA générative et reçues de celui-ci. Le SDK FC fournit un formateur qui convertit les déclarations de fonction au format spécifique au modèle requis par le LLM et les insère dans l'invite système. Le formateur gère également les jetons spécifiques au modèle pour indiquer les tours de l'utilisateur et du modèle. L'API utilise l'interface ModelFormatter.
- Analyseur de sortie: le SDK FC fournit un analyseur qui détecte si la sortie du modèle représente un appel de fonction et l'analyse en une structure de données à utiliser par l'application. L'API utilise l'interface ModelFormatter.
- Décodage contraint: interface permettant de créer et de gérer des contraintes pour s'assurer que la sortie générée respecte des règles ou des conditions spécifiques. Pour les modèles compatibles, le SDK FC configure le backend d'inférence pour utiliser le décodage contraint, ce qui garantit que le modèle ne renvoie que des noms et des paramètres de fonction valides. L'API utilise l'interface ConstraintProvider.