Hugging Face teste une API de stockage inter-origines pour les modèles Transformers.js
- 01Transformers.js teste l’intégration de l’API Cross-Origin Storage pour éviter les téléchargements redondants de modèles entre origines différentes.
- 02Un cas test montre que le rechargement d’un même modèle sur une nouvelle origine génère 177 Mo de données inutiles en cache.
- 03L’API permettrait un partage sécurisé des ressources entre domaines, avec des contrôles d’accès stricts pour préserver la vie privée.
Hugging Face expérimente une intégration de l’API Cross-Origin Storage dans Transformers.js, une solution technique visant à optimiser le stockage et la réutilisation des modèles d’IA côté client, notamment pour éviter les téléchargements redondants entre origines distinctes.
L’objectif principal de cette expérimentation est de répondre au défi du cache dans les applications web utilisant des modèles Transformers. Actuellement, lorsque plusieurs applications hébergées sur des origines différentes (domaines distincts) chargent le même modèle — par exemple, Xenova/whisper-tiny.en pour la reconnaissance vocale automatique (ASR) —, le navigateur télécharge et stocke à nouveau l’intégralité des ressources du modèle. Dans un cas testé par Hugging Face, cette duplication représente 177 Mo de données inutiles téléchargées et stockées, même si les fichiers sont identiques byte à byte. Cette situation est d’autant plus problématique que les modèles Transformers, comme ceux de la famille Whisper ou DistilBERT, sont fréquemment réutilisés dans plusieurs applications.
Transformers.js, qui permet d’exécuter des modèles d’IA directement dans le navigateur via des pipelines spécifiques, repose sur le téléchargement et le cache des ressources par le navigateur. Ces ressources incluent non seulement les poids des modèles, mais aussi les fichiers Wasm nécessaires à leur exécution. Sans partage inter-origines, chaque application doit donc recharger l’intégralité des données, ce qui impacte les performances et la consommation de bande passante. L’API Cross-Origin Storage, encore au stade de proposition, permettrait de contourner cette limitation en autorisant le partage sécurisé des ressources entre origines différentes, sous réserve de contrôles d’accès stricts.
L’intégration proposée par Hugging Face s’articule autour de trois principes : l’isolement contrôlé des caches, l’intégrité des données et la préservation de la vie privée. L’API permettrait de définir explicitement quelles origines ou quels domaines sont autorisés à accéder aux ressources d’un cache partagé, tout en garantissant que les fichiers ne peuvent pas être modifiés ou lus par des tiers non autorisés. Cette approche vise à concilier performance et sécurité, sans sacrifier l’utilité des fonctionnalités de cache.
Pour les développeurs utilisant Transformers.js, cette expérimentation ouvre la voie à des applications plus fluides et moins gourmandes en ressources. Par exemple, une application de transcription vocale ou d’analyse de sentiments pourrait réutiliser instantanément un modèle déjà chargé par une autre application, sans duplication des données. Hugging Face invite les développeurs à tester cette fonctionnalité via un exemple concret disponible dans leur documentation, tout en soulignant que cette proposition reste au stade expérimental et dépend des évolutions futures de l’API Cross-Origin Storage dans les navigateurs.
Articles liés

NeoMME : un encodeur multimodal multilingue open source sans tour de vision séparée
Explorer une innovation open-source majeure pour les modèles d'IA polyvalents.
Hugging Face publie un guide pour affiner des modèles en 100 étapes avec GRPO
Découvrez une méthode de fine-tuning optimisée pour générer des sorties structurées avec des modèles de taille réduite.
Hugging Face publie plus de 200 kernels WebGPU pour accélérer l'IA locale dans le navigateur
Découvrez comment optimiser vos modèles d'IA locaux avec les nouveaux kernels WebGPU de Hugging Face.