Accélérer le ML sur appareil dans la famille d'apps Meta avec ExecuTorch
Sources: https://engineering.fb.com/2025/07/28/android/executorch-on-device-ml-meta-family-of-apps, engineering.fb.com
TL;DR
- ExecuTorch est le cadre d’inférence sur appareil open-source de Meta pour les appareils mobiles et edge, construit avec PyTorch 2.x, permettant le ML efficace sur appareil dans la famille d’apps (FoA).
- Il améliore la latence, la confidentialité et le débit par rapport à l’ancien stack ML sur appareil et résulte d’une collaboration avec Arm, Apple et Qualcomm.
- Déploiements notables : Cutouts Instagram avec SqueezeSAM, modèles d’estimation de bande passante WhatsApp, Messenger avec E2EE activé par l’exécution sur appareil, et des fonctionnalités basées sur SceneX ; d’autres modèles migrent vers ExecuTorch dans FoA.
- Meta invite les développeurs à contribuer via GitHub et à rejoindre la communauté ExecuTorch sur Discord.
Contexte et contexte historique
Au cours de l’année écoulée, Meta a déployé ExecuTorch, une solution open-source pour l’inférence sur appareil sur les appareils mobiles et edge, à travers sa famille d’apps (FoA) et a observé des améliorations significatives en performance des modèles, confidentialité et latence par rapport à l’ancien stack ML sur appareil. ExecuTorch a été élaboré en collaboration avec des leaders de l’industrie et utilise les technologies PyTorch 2.x pour convertir les modèles en une représentation stable et compacte pour le déploiement efficace sur appareil. Son runtime compact, sa modularité et son extensibilité permettent aux développeurs de choisir et personnaliser les composants, assurant la portabilité entre plateformes, la compatibilité avec PyTorch et une haute performance. L’adoption d’ExecuTorch a contribué à améliorer l’expérience utilisateur dans les produits et services de Meta utilisés par des milliards de personnes dans le monde. Pour Instagram, WhatsApp, Messenger et Facebook, le passage au ML sur appareil s’inscrit dans une stratégie plus large visant à améliorer la latence, la résilience, la confidentialité et l’expérience utilisateur. Le cadre permet à une variété de modèles de s’exécuter directement sur les appareils, réduisant les allers-retours vers les serveurs et maintenant une réactivité élevée même en conditions réseau limitées. Voici des exemples de modèles exécutés sur Android et iOS avec ExecuTorch. référence à l’annonce originale.
Nouvelles fonctionnalités
Le déploiement d’ExecuTorch dans l’écosystème Meta introduit plusieurs améliorations et capacités sur appareil :
- Cutouts d’Instagram migré vers ExecuTorch avec l’activation de SqueezeSAM, une version allégée du modèle Segment Anything (SAM). Cette intégration sur Android et iOS est nettement plus rapide que l’ancienne pile, contribuant à une augmentation des DAU de Cutouts.
- Les modèles d’estimation de bande passante de WhatsApp ont été adaptés pour ExecuTorch, avec des optimisations spécifiques pour plusieurs plateformes. Les modèles sur appareil améliorent les performances, la fiabilité et l’efficacité, réduisant le temps de chargement des modèles et le temps moyen d’inférence, tout en abaissant les métriques ANR.
- Des améliorations de sécurité ont été ajoutées via des tests de fuzzing pour tester des entrées invalides ou aléatoires, renforçant la résilience par rapport à l’ancien stack PyTorch Mobile.
- Messenger bénéficie de l’E2EE grâce à ExecuTorch en déplaçant des modèles serveur-vers-appareil, permettant des transferts de données chiffrés. Cela inclut le déploiement d’un modèle LID (identification de langue) sur appareil, accélérant des tâches en aval comme la traduction, le résumé et les recommandations de contenu, tout en économisant les ressources serveur et réseau.
- D’autres modèles Messenger, tels que l’optimisation de la qualité des appels vidéo ou le recadrage d’image sur appareil, ont également été migrés vers ExecuTorch pour préserver l’E2EE et libérer de la capacité pour l’échelle mondiale.
- Le modèle IA central SceneX de Facebook, qui effectue la reconnaissance d’image, la légende, la création de musiques de fond IA pour les images et les contrôles de sécurité, s’exécute désormais sur ExecuTorch pour proposer des musiques de fond dans les Stories. Sur divers appareils, SceneX montre des améliorations de performance par rapport à l’ancienne pile.
- D’autres modèles, axés sur l’amélioration de la qualité d’image et la réduction du bruit en arrière-plan lors des appels, sont en phase de tests A/B.
- Les résultats suggèrent des gains significatifs pour le ML sur appareil à grande échelle, et Meta invite l’industrie à contribuer à ExecuTorch et à partager des retours sur GitHub et via la communauté Discord.
Pourquoi c’est important (impact pour les développeurs/entreprises)
L’adoption d’ExecuTorch pour le ML sur appareil a des implications importantes pour les développeurs et les entreprises :
- Réduction de la latence et amélioration de l’expérience utilisateur : l’exécution des modèles sur appareil réduit le besoin d’interroger les serveurs, fournissant des réponses plus rapides pour les fonctionnalités comme la segmentation d’images, le traitement vidéo et les communications en temps réel.
- Confidentialité et sécurité : l’inférence sur appareil limite l’exposition des données des utilisateurs, et les tests de fuzzing renforcent la robustesse du cadre ML sur appareil, favorisant un écosystème plus sûr.
- Efficacité des ressources et évolutivité : en déployant des modèles tels que LID et les optimiseurs de qualité vidéo sur appareil, les apps maintiennent des expériences de haute qualité même avec une connectivité limitée, libérant des ressources serveur pour d’autres tâches et permettant une montée en charge globale.
- Portabilité et écosystème : ExecuTorch met l’accent sur un runtime compact, des composants modulaires et la portabilité entre Android et iOS, facilitant l’adoption du ML sur appareil sans compromettre la compatibilité avec PyTorch.
- Collaboration et impact communautaire : Meta souligne la collaboration avec Arm, Apple, Qualcomm et invite la communauté à contribuer au projet, suggérant que l’écosystème élargi peut bénéficier d’avancées partagées en ML sur appareil.
Détails techniques ou Mise en œuvre
ExecuTorch est construit sur les technologies PyTorch 2.x, visant à convertir les modèles en une représentation stable et compacte adaptée à l’inférence sur appareil. L’approche repose sur un runtime léger, une modularité et une extensibilité qui permettent aux développeurs de choisir des composants et de déployer de manière cohérente sur Android et iOS, tout en maintenant la compatibilité avec PyTorch et de hautes performances.
- Architecture et portabilité : le cadre privilégie un runtime compact, une modularité et une extensibilité pour permettre aux développeurs de choisir des composants et de déployer de façon uniforme entre Android et iOS.
- Avantages sur l’appareil : déplacer des modèles comme LID et des optimisateurs de qualité vidéo vers l’appareil permet de préserver l’E2EE sur Messenger tout en réduisant la charge serveur et réseau, augmentant la capacité de traitement et la réactivité.
- Sécurité : des tests de fuzzing renforcent la résilience face à des entrées invalides et des situations inattendues.
- Diversité des modèles et tests : de multiples modèles, des Cutouts d’Instagram aux capacités SceneX et aux estimateurs de bande passante du WhatsApp, sont en cours d’utilisation ou de tests A/B sur ExecuTorch.
- Communauté et collaboration : Meta invite les développeurs à contribuer à ExecuTorch sur GitHub et à rejoindre la communauté Discord pour des retours et une collaboration continue. Des points techniques clés couvrent une large gamme de cas d’utilisation, y compris des fonctionnalités créatives (Cutouts), la qualité des appels en temps réel, la préservation de l’E2EE, la compréhension du contenu (SceneX) et les améliorations multimédias. Ensemble, ces capacités démontrent comment une solution ML sur appareil basée sur PyTorch peut être adaptée à l’échelle à travers la FoA.
Points clés
- ExecuTorch est un cadre open-source d’inférence sur appareil, construit avec PyTorch 2.x, déployé dans la FoA pour améliorer latence, confidentialité et performances.
- L’architecture vise un runtime compact, une modularité et une portabilité entre Android et iOS, facilitant l’adoption du ML sur appareil par les développeurs.
- Les déploiements incluent Cutouts d’Instagram (SqueezeSAM), des modèles d’estimation de bande passante pour WhatsApp, LID sur appareil dans Messenger et des améliorations SceneX pour les Stories, entre autres.
- Améliorations de sécurité via les tests de fuzzing et migrations de plusieurs modèles vers ExecuTorch pour une évolutivité globale.
- Meta invite la communauté à contribuer sur GitHub et via Discord, marquant une voie collaborative pour l’avenir du ML sur appareil.
FAQ
-
Qu'est-ce que ExecuTorch ?
ExecuTorch est le cadre open-source de Meta pour l'inférence sur appareil, utilisant PyTorch 2.x pour convertir les modèles en une représentation compacte et stable adaptée à l'inférence sur appareil.
-
Comment ExecuTorch améliore-t-il les performances sur appareil par rapport à l'ancien stack ?
vec un runtime plus léger, des composants modulaires et une portabilité cross-plateforme, il réduit le temps de chargement et d'inférence, améliore la confidentialité et diminue la latence.
-
Comment ExecuTorch soutient l'E2EE dans Messenger ?
En déplaçant des modèles serveur vers l'appareil, permettant des transferts chiffrés tout en exécutant localement des tâches comme LID et d'autres fonctionnalités.
-
Comment les développeurs peuvent-ils participer ?
En contribuant sur GitHub et en rejoignant la communauté ExecuTorch sur Discord pour retours et collaboration.
-
uels apps et fonctionnalités utilisent déjà ExecuTorch ?
Cutouts d’Instagram (SqueezeSAM), modèles d’estimation de bande passante WhatsApp, LID sur appareil dans Messenger, optimisation de la qualité vidéo et recadrage d’images sur appareil, et d’autres propositions à venir.
References
More news
Une nouvelle architecture de classement axée sur la diversité pour une meilleure qualité des notifications sur Instagram
Meta présente une architecture de classement des notifications intégrant une couche de diversité pour réduire les répétitions, élargir la variété et améliorer le CTR sur Instagram.
Nouveautés du CUDA Toolkit 13.0 pour Jetson Thor : Écosystème ARM unifié et plus encore
CUDA Toolkit 13.0 pour Jetson Thor unifie les outils Arm, active la Mémoire Virtuelle Unifiée, le partage de GPU avancé, l’interopérabilité OpenRM/dmabuf, le support NUMA et des outils développeur améliorés pour les charges IA en edge.
Activation de la Compilation Kotlin Incrémentale sur Buck2 avec l’API Build Tools KEEP
Meta apporte la compilation incrémentielle de Kotlin à Buck2, accélérant les builds Kotlin grâce à des actions incrémentales, des snapshots de classpath et une intégration soignée des plugins pour des chaînes d’outils Android plus rapides et évolutives.
Pixel Watch 4 de Google : IA, réparabilité et compagne essentielle
Le Pixel Watch 4 affirme une vision axée IA avec Gemini, un écran Actua 360 domé et une meilleure autonomie, tout en améliorant la réparabilité et l’interaction rapide dans Wear OS 6.
Nemotron Nano 2: modèle ouvert de raisonnement en tête du classement, débit 6x supérieur
NVIDIA publie Nemotron Nano 2 9B, un modèle de raisonnement ouvert offrant une précision de premier plan dans sa catégorie et un débit jusqu'à 6x supérieur au prochain modèle ouvert. Il présente une architecture hybride Transformer–Mamba et un budget de réflexion configurable.
Solutions d’agents IA pour l’accès et la sécurité des données en entrepôt
Meta présente une approche axée sur les agents pour l’accès aux données du data warehouse, en combinant des agents utilisateur et propriétaire de données avec des sous-agents afin de rationaliser l’accès, renforcer la sécurité et soutenir les flux IA à l’échelle.