Le SDK AI Edge Function Calling (FC SDK) 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 API externes. Les modèles peuvent ainsi appeler des fonctions spécifiques avec les paramètres nécessaires pour exécuter des actions réelles.
Plutôt que de simplement générer 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 AI Edge FC est disponible pour Android et peut être exécuté entièrement sur l'appareil avec l'API LLM Inference. Commencez à utiliser le SDK en suivant le guide Android, qui vous explique comment implémenter une application exemple de base à l'aide de l'appel de fonction.
Pipeline d'appel de fonction
Pour configurer un LLM sur l'appareil avec des fonctionnalités d'appel de fonction, vous devez suivre les étapes clés suivantes :
- Définissez les 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.
- Mise en forme des requêtes et des résultats : 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 inversement, 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ées 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ées appropriés. Sinon, il renvoie du texte en langage naturel.
Composants clés
Le SDK FC contient les principaux composants suivants :
- Backend d'inférence : interface permettant d'exécuter l'inférence sur un modèle d'IA générative. Le SDK FC utilise l'API LLM Inference pour exécuter l'inférence sur les modèles LiteRT (TFLite). L'API utilise l'interface InferenceBackend.
- Formateur de 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 dans 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 le résultat généré 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 génère que des noms et des paramètres de fonction valides. L'API utilise l'interface ConstraintProvider.