Ce guide vous aide à trouver la solution d'IA/de ML adaptée à votre cas d'utilisation. Il fournit des conseils pour vous aider à parcourir les différentes solutions disponibles et à choisir celle qui correspond le mieux à vos besoins, compte tenu des exigences de la fonctionnalité que vous souhaitez implémenter.
En général, lorsque vous choisissez des outils et des modèles pour implémenter votre fonctionnalité d'IA/ML, vous devez utiliser le modèle le plus simple qui répond à vos besoins. Pour identifier la solution optimale, vous devez réfléchir aux points suivants :
- La fonctionnalité doit-elle générer du nouveau contenu (IA générative) ou prédire/catégoriser de manière déterministe (ML traditionnel) ?
- Portée de la fonctionnalité : la tâche peut-elle être effectuée entièrement dans votre application (intelligence intégrée) ou nécessite-t-elle plusieurs applications (intelligence au niveau du système) ?
- Emplacement du modèle : la tâche peut-elle être effectuée hors connexion (modèle sur l'appareil) ou nécessite-t-elle une interaction avec un serveur (modèle dans le cloud) ?
- Version du kit d'outils ou du modèle : quel est le niveau de complexité de la tâche, des tâches d'inférence simples aux orchestrations multi-agents ?
L'organigramme suivant illustre le processus de décision à un niveau général :
Pour vous aider à prendre une décision à chaque étape, reportez-vous aux sections du reste de ce document.
IA générative et ML traditionnel
Les modèles d'IA générative créent du contenu, tandis que les modèles de ML traditionnels prédisent des résultats ou catégorisent des données de manière complètement déterministe. Si votre fonctionnalité n'implique pas la génération de nouveaux contenus, les solutions de ML traditionnelles peuvent suffire. Le tableau suivant récapitule quelques solutions de ML traditionnelles :
| Kit d'outils/Solution | Type | Cas d'utilisation principal | Exemples |
|---|---|---|---|
| SDK ML Kit | Traitement sur l'appareil | Tâches de vision et de traitement du langage naturel prédéfinies |
|
| LiteRT | Traitement sur l'appareil | Environnements d'exécution de modèles personnalisés |
|
| MediaPipe | Traitement sur l'appareil | Tâches de perception de flux vidéo ou audio en temps réel |
|
| Les API Google Cloud, y compris l'API Cloud Vision et l'API Cloud Natural Language | Dans le cloud | Tâches de vision et de traitement du langage naturel prédéfinies |
|
| Agent Platform | Dans le cloud | Entraînement et déploiement de modèles personnalisés de bout en bout |
|
Le reste de ce document concerne les solutions d'IA générative.
Intelligence au niveau de l'application ou du système
Pour identifier la meilleure solution d'IA générative, déterminez si votre fonctionnalité d'IA fonctionne entièrement dans votre application ou si elle nécessite d'interagir avec d'autres applications ou l'OS Android, en dehors de toute application. Si votre fonctionnalité est déclenchée par le système, en dehors de toute application, elle est considérée comme une intelligence au niveau du système. Le tableau suivant récapitule les différences entre les fonctionnalités d'intelligence intégrées aux applications et celles au niveau du système :
| Intelligence artificielle intégrée aux applications | Intelligence au niveau du système | |
|---|---|---|
| Champ d'application de la tâche | Dans l'application | Dans plusieurs applications (ou déclenchées par le système, en dehors de toute application) |
| Outils | SDK ML Kit, LiteRT, Firebase AI Logic ou backend auto-hébergé | AppFunctions |
| Cas d'utilisation |
|
|
Intelligence artificielle intégrée aux applications
Les fonctionnalités d'intelligence intégrées à l'application n'ont pas besoin d'interagir avec d'autres applications ou le système au-delà de l'application. Une fois que vous avez déterminé que votre fonctionnalité d'IA est entièrement intégrée à l'application, vous devez décider si vous pouvez l'exécuter entièrement sur l'appareil, utiliser un modèle dans le cloud ou adopter une approche hybride qui combine les deux.
Si vous effectuez une opération nécessitant une entrée vidéo ou des tâches impliquant plusieurs agents, vous devez utiliser un modèle dans le cloud. Le tableau suivant compare les fonctionnalités des modèles sur l'appareil et des modèles cloud :
| Traitement sur l'appareil | Cloud | |
|---|---|---|
| Outils | SDK ML Kit ou LiteRT | Firebase AI Logic ou backend auto-hébergé |
| Type d'entrée |
|
|
| Type de sortie |
|
|
| Sensibilité des données utilisateur | Plus élevé | Inférieur |
| Modèles |
|
|
| Cas d'utilisation |
|
|
Modèles sur l'appareil
Les modèles sur l'appareil sont probablement préférables si l'une des conditions suivantes s'applique :
- Contraintes de coût
- La fonctionnalité doit pouvoir s'exécuter hors connexion
- Exigences de confidentialité
- La tâche à accomplir est relativement simple et ne nécessite pas d'orchestration multi-agent.
N'oubliez pas que les appareils de vos utilisateurs doivent être compatibles avec les modèles sur l'appareil. Les modèles sur l'appareil nécessitent généralement des appareils plus haut de gamme capables de prendre en charge le traitement local.
Une fois que vous avez déterminé que les modèles sur l'appareil sont suffisants pour votre fonctionnalité, le kit d'outils ou la solution optimale dépend principalement de la complexité de la tâche. Le tableau suivant récapitule les options d'outils d'IA générative sur l'appareil et intégrés à l'application :
| Complexité de la tâche | Caractéristiques de la fonctionnalité | Exemple | Toolkit/Solution |
|---|---|---|---|
| Faible |
|
Résumer du texte |
|
| Moyenne |
|
Requête et réponse | |
| Élevée |
|
Commentaires des clients ou tri des bugs |
Utilisez l'API Prompt de ML Kit pour générer du texte conversationnel simple à un ou plusieurs tours. Lorsque votre fonctionnalité nécessite une exécution autonome en plusieurs étapes sur l'appareil, utilisez l'API ML Kit GenAI Agent. L'API Agent accepte les boucles de raisonnement sur l'appareil qui peuvent planifier, appeler des outils typés à l'aide d'annotations @Tool, conserver le contexte de session entre les interactions et appliquer des limites de tours à l'aide de maxTurns.
Modèles basés sur le cloud
Si votre fonctionnalité ne peut pas être exécutée entièrement sur l'appareil, vous devez utiliser un modèle dans le cloud. Il existe deux options principales pour utiliser un modèle dans le cloud :
Backend géré à l'aide de Firebase AI Logic. Si vous êtes déjà un utilisateur Firebase ou si vous souhaitez prototyper quelque chose relativement rapidement, Firebase AI Logic est probablement la meilleure solution.
Backend personnalisé ou serveur autohébergé. Si vous souhaitez utiliser des modèles autres que Gemini, si vous avez des exigences strictes en matière de confidentialité ou si vous devez effectuer une tâche très complexe, vous devrez probablement utiliser un backend personnalisé. Nous vous recommandons également les outils suivants pour la configuration du backend personnalisé :
- Faites en sorte que votre backend personnalisé exécute un framework agentique tel que Agent Development Kit.
- Connecter l'interface de l'application au backend agentique à l'aide d'AG-UI
- Permettez aux agents de générer des UI riches et interactives à l'aide d'A2UI.
Le tableau suivant indique quand utiliser Firebase AI Logic ou un backend personnalisé pour les outils d'IA générative intégrés à l'application et dans le cloud :
| Complexité de la tâche | Caractéristiques de la fonctionnalité | Exemple | Toolkit/Solution |
|---|---|---|---|
| Faible |
|
Résumer du texte |
|
| Moyenne |
|
Requête et réponse |
|
| Élevée |
|
Commentaires des clients ou tri des bugs |
|
| Très élevé |
|
Créer une équipe d'agents pour gérer différents aspects d'un voyage |
|
Approche hybride
Utilisez une approche hybride lorsque votre fonctionnalité peut s'exécuter localement, mais que tous vos utilisateurs ne disposent pas d'appareils compatibles avec les modèles sur l'appareil et que vous devez utiliser des modèles cloud comme solution de secours. Pour en savoir plus, consultez Inférence hybride.
Intelligence au niveau du système
L'intelligence au niveau du système permet à la plate-forme Android d'agir en tant qu'orchestrateur de tâches. L'intelligence au niveau du système permet aux agents système, tels que Gemini, de répondre aux requêtes des utilisateurs dans plusieurs applications et services Web.
Pour connecter votre application au système d'intelligence Android, choisissez une méthode d'intégration selon que vous souhaitez un contrôle programmatique ou des actions automatisées basées sur l'interface utilisateur :
| Option d'intégration | Cas d'utilisation |
|---|---|
| AppFunctions | Mettez à disposition des agents des fonctionnalités spécifiques de votre application pour qu'ils puissent les découvrir et les exécuter sur l'appareil. |
| Serveur MCP distant | Rendez certaines fonctionnalités de votre application disponibles pour une intégration directe au backend de l'agent. Idéal pour le développement multiplate-forme. |
| Contrôle de l'ordinateur | Permet à un assistant préchargé par l'OEM d'automatiser des tâches en interagissant directement avec l'UI d'une application. |
Pour en savoir plus sur les options d'outils d'intelligence au niveau du système, consultez Connecter votre application au système d'intelligence Android.