LiteRT-LM est un framework d'inférence Open Source prêt pour la production, conçu pour fournir des déploiements de LLM hautes performances et multiplate-formes sur les appareils périphériques.
Principales fonctionnalités
- Compatibilité multiplate-forme : exécutez l'application sur Android, iOS, le Web et un ordinateur.
- Accélération matérielle :
- GPU : optimisé par ML Drift, compatible avec les modèles de ML et d'IA générative.
- NPU : inférence accélérée sur les appareils équipés de chipsets Qualcomm et MediaTek (accès anticipé).
- Multimodalité : compatibilité avec les entrées audio et visuelles.
- Utilisation d'outils : compatibilité avec l'appel de fonction pour les workflows d'agent.
- Large compatibilité avec les modèles : exécutez Gemma, Llama, Phi-4, Qwen et plus encore.
Backends et plates-formes compatibles
| Plate-forme | Compatibilité avec les processeurs | Compatibilité avec les GPU | Compatibilité NPU |
|---|---|---|---|
| Android | ✅ | ✅ | ✅ |
| iOS | ✅ | ✅ | - |
| macOS | ✅ | ✅ | - |
| Windows | ✅ | ✅ | - |
| Linux | ✅ | ✅ | - |
| Intégré | ✅ | - | - |
Démarrage rapide
Vous voulez d'abord l'essayer ? Avant de procéder à la configuration complète, vous pouvez utiliser les binaires prédéfinis pour ordinateur ou l'application Google AI Edge Gallery pour mobile afin d'exécuter LiteRT-LM immédiatement.
Applications mobiles
Google AI Edge Gallery est une application de démonstration qui met la puissance des modèles d'IA générative de pointe directement entre vos mains, grâce à LiteRT-LM.
CLI pour ordinateur
Après avoir téléchargé le binaire lit, exécutez simplement lit pour afficher les options.
Choisir votre plate-forme
| Langue | État | Idéal pour… | Documentation |
|---|---|---|---|
| Kotlin | ✅ Stable |
Applications Android natives et outils de bureau basés sur la JVM. Optimisé pour les coroutines. | Documentation de référence de l'API Kotlin |
| C++ | ✅ Stable |
Logique de base et systèmes embarqués hautes performances et multiplateformes. | Documentation de référence de l'API C++ |
| Swift | 🚀 En développement |
Intégration native à iOS et macOS avec prise en charge spécialisée de Metal. | Bientôt disponible |
| Python | 🚀 En développement |
Prototypage rapide, développement et script côté ordinateur. | Bientôt disponible |
Modèles compatibles
Le tableau suivant présente un échantillon de modèles entièrement compatibles et testés avec LiteRT-LM.
Remarque : "Chat Ready" indique que les modèles sont optimisés pour le chat (réglage des instructions). Les modèles de base nécessitent souvent un réglage fin pour des performances de chat optimales, sauf s'ils sont utilisés pour des tâches de complétion spécifiques.
| Modèle | Type | Quantification | Longueur du contexte | Taille (Mo) | Télécharger |
|---|---|---|---|---|---|
| Gemma | |||||
| Gemma3-1B | Prêt pour le chat | 4 bits par canal | 4096 | 557 | Télécharger |
| Gemma-3n-E2B | Prêt pour le chat | 4 bits par canal | 4096 | 2965 | Télécharger |
| Gemma-3n-E4B | Prêt pour le chat | 4 bits par canal | 4096 | 4235 | Télécharger |
| FunctionGemma-270M | Base (affinage requis) | 8 bits par canal | 1024 | 288 | Guide de réglage fin |
| ↪ TinyGarden-270M | Démo | 8 bits par canal | 1024 | 288 | Télécharger / Essayer l'application |
| Llama | |||||
| Llama-3.2-1B-Instruct | Prêt pour le chat | 8 bits par canal | 8 192 | 1162 | Télécharger |
| Llama-3.2-3B-Instruct | Prêt pour le chat | 8 bits par canal | 8 192 | 2893 | Télécharger |
| Phi | |||||
| phi-4-mini | Prêt pour le chat | 8 bits par canal | 4096 | 3728 | Télécharger |
| Qwen | |||||
| qwen2.5-1.5b | Prêt pour le chat | 8 bits par canal | 4096 | 1524 | Télécharger |
Performances
Vous trouverez ci-dessous les chiffres de performances de chaque modèle sur différents appareils. Notez que le benchmark est mesuré avec 1 024 jetons de préremplissage et 256 jetons de décodage (avec le verrouillage des performances sur les appareils Android).
| Modèle | Appareil | Backend | Préremplissage (jetons/s) | Décodage (jetons/s) | Taille du contexte |
|---|---|---|---|---|---|
| Gemma3-1B | MacBook Pro (2023 M3) |
Processeur | 423 | 67 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
Processeur | 243 | 44 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
GPU | 1877 | 45 | 4096 |
| Gemma3-1B | Samsung S25 (Ultra) |
NPU | 5837 | 85 | 1 280 |
| Gemma-3n-E2B | MacBook Pro (2023 M3) |
Processeur | 233 | 28 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
Processeur | 111 | 16 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
GPU | 816 | 16 | 4096 |
| Gemma-3n-E4B | MacBook Pro (2023 M3) |
Processeur | 170 | 20 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
Processeur | 74 | 9 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
GPU | 548 | 9 | 4096 |
| FunctionGemma | Samsung S25 (Ultra) |
Processeur | 1718 | 126 | 1024 |
Remarque : La première fois qu'un modèle donné est chargé sur un appareil donné, le chargement prend plus de temps, car les pondérations sont optimisées. Les chargements suivants seront plus rapides grâce à la mise en cache.
Hébergement et déploiement de modèles
Lorsqu'un modèle dépasse les limites de téléchargement "over-the-air" (souvent autour de 1,5 Go), une stratégie de récupération à distance est requise.
- Firebase : recommandé pour télécharger des fichiers volumineux sur Android et iOS.
- API Hugging Face : récupérez les modèles directement à l'aide de l'API Hugging Face.
Problèmes concernant les rapports
Si vous rencontrez un bug ou souhaitez demander une fonctionnalité, veuillez utiliser la page Problèmes GitHub LiteRT-LM.