Créer des applications Android intelligentes : présentation de Jetpacker
Temps de lecture : 4 min
Pour créer des fonctionnalités d'IA générative dans votre application, vous devez généralement choisir parmi différents modèles, API et architectures :
- Emplacement d'exécution : où votre modèle s'exécute-t-il ? Sur l'appareil, dans le cloud ou les deux ?
- Complexité : quelle est la complexité de votre configuration ? Effectuez-vous un seul appel d'inférence ou avez-vous besoin d'un flux plus agentique ?
- Dans l'application ou dans le système Android : votre fonctionnalité doit-elle être intégrée à votre application Android ou s'agit-il plutôt d'une intégration au système Android ?
Dans cette série d'articles de blog, nous vous aiderons à faire ces choix. Nous vous emmènerons dans un voyage, en commençant par une application mobile de base et en la transformant en une expérience personnalisée, intelligente et agentique.
Jetpacker : une application de voyage de démonstration
Jetpacker est une application de démonstration technique que notre équipe a entièrement conçue pour la conférence Google I/O de cette année (à l'aide d'Antigravity). Jetpacker aide les utilisateurs à planifier, explorer et profiter de leur prochaine grande aventure. Il affiche un aperçu de vos trajets, l'itinéraire de chacun d'eux et les détails de chaque événement survenu pendant ces trajets. Bien sûr, en suivant toutes les bonnes pratiques du développement Android, y compris une conception d'interface utilisateur Material expressive et esthétique.
Et le meilleur dans tout ça ? Il est entièrement Open Source.
Aujourd'hui, nous publions une série d' articles techniques qui présentent en détail chacune de ces fonctionnalités. Nous vous fournirons des étapes d'implémentation détaillées, des extraits de code et des informations sur l'architecture pour vous aider à créer vos propres applications Android intelligentes.
Intelligence artificielle intégrée à l'appareil
L'utilisation d'un modèle sur l'appareil n'entraîne aucun coût d'inférence cloud supplémentaire, ce qui signifie que vous n'avez pas à vous soucier de la connectivité Internet. De plus, les utilisateurs peuvent être assurés que les informations privées seront traitées localement, sur l'appareil, sans que leurs données soient envoyées au cloud.
Dans Jetpacker, nous avons choisi l'inférence sur l'appareil pour trois de nos fonctionnalités :
- La fonctionnalité Aperçu du voyage transforme un itinéraire complexe de plusieurs jours en un résumé concis et pratique. Il utilise Gemini Nano via les API ML Kit GenAI pour traiter les données localement sur l'appareil. Nous considérons qu'il s'agit d'une fonctionnalité intéressante, mais nous ne voulons pas engendrer de coûts cloud supplémentaires. L'inférence sur l'appareil est donc le bon choix.
- Le suivi des dépenses extrait automatiquement des données structurées à partir d'images de reçus pour aider les utilisateurs à suivre leurs dépenses de voyage. Il utilise les capacités multimodales de Gemini Nano 4 via les API ML Kit GenAI. Nous avons choisi une solution sur l'appareil afin qu'aucune information sensible concernant la confidentialité dans les images de reçus ne quitte l'appareil de l'utilisateur.
- Le journal audio enregistre, transcrit et classe les notes vocales dans les activités de voyage correspondantes. Il est optimisé par les API Speech Recognition et GenAI Prompt de ML Kit. Nous avons choisi une solution sur l'appareil pour des raisons de confidentialité et de connectivité.
Inférence dans le cloud et hybride
Parfois, votre cas d'utilisation nécessite des modèles d'IA avec plus de connaissances sur le monde ou une fenêtre de contexte beaucoup plus grande, ainsi qu'une plus grande capacité à gérer des tâches complexes. Dans ce cas, nous pouvons passer de l'exécution d'un modèle sur l'appareil à l'utilisation d'un modèle cloud.
Si vous souhaitez profiter du meilleur des deux mondes, vous pouvez utiliser l'inférence hybride pour choisir dynamiquement un modèle cloud ou sur l'appareil au moment de l'exécution. Cela nous permet de réduire les coûts en transférant l'inférence vers l'appareil lorsqu'elle est disponible, tout en prenant en charge tous les appareils Android exécutant l'application.
Dans Jetpacker, nous avons implémenté plusieurs fonctionnalités à l'aide de l'inférence cloud ou hybride :
- La fonctionnalité Questions/Réponses sur les lieux répond aux questions des utilisateurs sur des lieux spécifiques en s'appuyant sur des données réelles. Il utilise Firebase AI Logic intégré à Google Maps et au contexte Web. L'utilisation d'un modèle cloud est nécessaire ici en raison de ses connaissances plus étendues sur le monde.
- La fonctionnalité Rédiger un avis aide les utilisateurs à rédiger des avis détaillés sur les lieux qu'ils ont visités. Il exploite à la fois les modèles sur l'appareil et dans le cloud grâce à la nouvelle API d'inférence hybride de Firebase AI Logic. Nous voulions mettre cette fonctionnalité à la disposition de tous les utilisateurs de l'application. Nous utilisons donc un modèle cloud comme solution de secours lorsqu'un modèle sur l'appareil n'est pas disponible.
- La traduction automatique des discussions traduit dynamiquement les messages de chat en temps réel pour faciliter la communication, en utilisant une logique d'inférence hybride personnalisée. Nous souhaitons que cette fonctionnalité soit disponible pour tous les utilisateurs de l'application, mais nous devons également tenir compte de certains éléments spécifiques pour choisir entre l'appareil et le cloud.
Intégration du système
Bien qu'il ne s'agisse pas d'une fonctionnalité visible dans l'application elle-même, l'intégration au système Android ouvre les fonctionnalités de base de l'application directement au système d'exploitation Android. Il utilise l'API AppFunctions pour s'intégrer à l'intelligence au niveau du système.
Workflows agentiques dans l'application (bientôt disponibles)
L'agentivité introduit un niveau d' autonomie plus élevé, permettant aux modèles d'agir en tant qu'agents. Au lieu d'un seul appel d'inférence, un agent travaille à atteindre un objectif spécifique grâce à une boucle d'orchestration qui lui permet de raisonner, d'utiliser des outils et d'adapter son chemin. Selon vos besoins, ces agents intelligents peuvent s'exécuter dans le cloud, directement sur l'appareil ou dans une configuration hybride.
Pour Jetpacker, nous avons ajouté un assistant de réservation qui automatise les workflows de réservation de bout en bout directement dans l'application pour simplifier les réservations. Elle est conçue à l'aide d'A2UI et d'ADK exécutés dans le cloud. L'application Android sert de frontend au système multi-agents qui s'exécute dans le cloud.
En savoir plus
Consultez les autres parties de cette série d'articles de blog :
Partie 1 (cet article) : Présentation de l'application et vue d'ensemble.
Partie 2 : Intelligence sur l'appareil. Découvrez en détail les API d'IA générative de ML Kit et Gemini Nano pour créer des fonctionnalités axées sur la confidentialité, comme la synthèse d'itinéraires, l'analyse de reçus et le traitement audio local.
Partie 3 : Raisonnement hybride et dans le cloud. Découvrez comment utiliser Firebase AI Logic pour ancrer les réponses LLM dans des données réelles telles que Google Maps et le contexte Web.
Partie 4 : Intégration du système. Intégration au système d'intelligence Android à l'aide d'AppFunctions.
Partie 5 (à venir) : Workflows agentiques dans l'application. Étendez l'application avec un assistant de réservation de bout en bout optimisé par A2UI et ADK.
Vous souhaitez en savoir plus sur le développement Android ? Suivez Android Developers sur YouTube ou LinkedIn.
-
Guides pratiquesBienvenue dans la série d'articles de blog "Créer des applications Android intelligentes", où nous prenons une application Android de base et la transformons en une expérience personnalisée, intelligente et agentive.
Thomas Ezan, Jolanda Verhoef, Caren Chang • Temps de lecture : 8 min -
Guides pratiquesBienvenue dans la série d'articles de blog "Créer des applications Android intelligentes", où nous prenons une application Android de base et la transformons en une expérience personnalisée, intelligente et agentive. Dans notre précédent article, nous avons présenté Jetpacker, l'application de démonstration que nous utiliserons tout au long de cette série.
Caren Chang • Temps de lecture : 6 min -
Guides pratiquesBienvenue dans la série d'articles de blog "Créer des applications Android intelligentes", où nous prenons une application Android de base et la transformons en une expérience personnalisée, intelligente et agentive. Dans notre précédent article, nous avons exploré comment tirer parti de Firebase AI Logic pour créer des fonctionnalités d'IA hybrides et hébergées dans le cloud.
Ben Weiss • Temps de lecture : 6 min
Recevez chaque semaine les dernières informations sur le développement Android directement dans votre boîte de réception.