Présentation de LiteRT-LM

LiteRT-LM est un framework d'inférence Open Source prêt à l'emploi, conçu pour offrir des déploiements de LLM hautes performances et multiplateformes sur des appareils de périphérie.

  • Compatibilité multiplateforme : exécutez-le sur Android, iOS, le Web, un ordinateur et l'IoT (par exemple, Raspberry Pi).
  • Accélération matérielle : obtenez des performances optimales et une stabilité du système en tirant parti des accélérateurs GPU et NPU sur différents matériels.
  • Multimodalité : créez des LLM compatibles avec la vision et l'audio.
  • Utilisation des outils : prise en charge des appels de fonction pour les workflows d'agent avec décodage contraint pour une meilleure précision.
  • Large compatibilité avec les modèles : exécutez Gemma, Llama, Phi-4, Qwen et plus encore.

Démonstration de l'IA générative sur l'appareil

Capture d'écran de la galerie Google AI Edge

Google AI Edge Gallery est une application expérimentale conçue pour présenter les fonctionnalités d'IA générative sur l'appareil, qui s'exécute entièrement hors connexion à l'aide de LiteRT-LM.

  • Google Play : utilisez des LLM localement sur les appareils Android compatibles.
  • App Store : découvrez l'IA sur l'appareil sur votre appareil iOS.
  • Source GitHub : consultez le code source de l'application Galerie pour découvrir comment intégrer LiteRT-LM dans vos propres projets.
  • Taille du modèle : 2,58 Go
  • Pour en savoir plus, consultez la fiche de modèle HuggingFace.

    Plate-forme (appareil) Backend Préremplissage (jetons/s) Décodage (jetons/s) Délai d'émission du premier jeton (en secondes) Mémoire maximale du processeur (Mo)
    Android (S26 Ultra) Processeur 557 47 1,8 1733
    GPU 3808 52 0,3 676
    iOS (iPhone 17 Pro) Processeur 532 25 1,9 607
    GPU 2878 56 0,3 1450
    Linux (Arm 2,3 et 2,8 GHz, NVIDIA GeForce RTX 4090) Processeur 260 35 4 1628
    GPU 11234 143 0,1 913
    macOS (MacBook Pro M4) Processeur 901 42 1,1 736
    GPU 7835 160 0,1 1623
    IoT (Raspberry Pi 5 16 Go) Processeur 133 8 7,8 1546

Créer des applications

Les extraits suivants montrent comment commencer à utiliser la CLI LiteRT-LM, ainsi que les API Python, Kotlin et C++.

CLI

litert-lm run model.litertlm --prompt="What is the capital of France?"

Python

engine = litert_lm.Engine("model.litertlm")

with engine.create_conversation() as conversation:
    response = conversation.send_message("What is the capital of France?")
    print(f"Response: {response['content'][0]['text']}")

Kotlin

val engineConfig = EngineConfig(
    modelPath = "/path/to/your/model.litertlm",
    backend = Backend.CPU(),
)

val engine = Engine(engineConfig)
engine.initialize()

val conversation = engine.createConversation()
print(conversation.sendMessage("What is the capital of France?"))  

C++

auto model_assets = ModelAssets::Create(model_path);
CHECK_OK(model_assets);

auto engine_settings = EngineSettings::CreateDefault(
    model_assets,
    /*backend=*/litert::lm::Backend::CPU);

absl::StatusOr<std::unique_ptr<Engine>> engine = Engine::CreateEngine(engine_settings);
CHECK_OK(engine);

auto conversation_config = ConversationConfig::CreateDefault(**engine);
CHECK_OK(conversation_config);
absl::StatusOr<std::unique_ptr<Conversation>> conversation = Conversation::Create(**engine, *conversation_config);
CHECK_OK(conversation);

absl::StatusOr<Message> model_message = (*conversation)->SendMessage(
    JsonMessage{
        {"role", "user"},
        {"content", "What is the capital of France?"}
    });
CHECK_OK(model_message);

std::cout << *model_message << std::endl;
Langue État Idéal pour... Documentation
CLI 🚀
Aperçu anticipé
Premiers pas avec LiteRT-LM en moins d'une minute. Guide de la CLI
Python
Stable
Prototypage rapide, développement sur ordinateur et Raspberry Pi. Guide Python
Kotlin
Stable
Applications Android natives et outils de bureau basés sur la JVM. Optimisé pour les coroutines. Guide Android (Kotlin)
C++
Stable
Logique de base multiplateforme hautes performances et systèmes intégrés. Guide C++
Swift 🚀
En développement
Intégration native à iOS et macOS avec prise en charge spécialisée de Metal. Bientôt disponible

Backends et plates-formes compatibles

Accélération Android iOS macOS Windows Linux IoT
Processeur
GPU -
NPU - - - - -

Modèles compatibles

Le tableau suivant répertorie les modèles compatibles avec LiteRT-LM. Pour obtenir des chiffres de performances plus détaillés et des fiches de modèle, consultez la communauté LiteRT sur Hugging Face.

Modèle Type Taille (Mo) Détails Appareil Préremplissage du processeur (jetons/s) Décodage du processeur (jetons/s) Préremplissage du GPU (jetons/s) Décodage du GPU (jetons/s)
Gemma4-E2B Chat 2583 Fiche de modèle Samsung S26 Ultra 557 47 3808 52
iPhone 17 Pro 532 25 2878 57
MacBook Pro M4 901 42 7835 160
Gemma4-E4B Chat 3654 Fiche de modèle Samsung S26 Ultra 195 18 1293 22
iPhone 17 Pro 159 10 1189 25
MacBook Pro M4 277 27 2560 101
Gemma-3n-E2B Chat 2965 Fiche de modèle MacBook Pro M3 233 28 - -
Samsung S24 Ultra 111 16 816 16
Gemma-3n-E4B Chat 4235 Fiche de modèle MacBook Pro M3 170 20 - -
Samsung S24 Ultra 74 9 548 9
Gemma3-1B Chat 1005 Fiche de modèle Samsung S24 Ultra 177 33 1191 24
FunctionGemma Couches 289 Fiche de modèle Samsung S25 Ultra 2238 154 - -
phi-4-mini Chat 3906 Fiche de modèle Samsung S24 Ultra 67 7 314 10
Qwen2.5-1.5B Chat 1598 Fiche de modèle Samsung S25 Ultra 298 34 1668 31
Qwen3-0.6B Chat 586 Fiche de modèle Vivo X300 Pro 165 9 580 21
Qwen2.5-0.5B Chat 521 Fiche de modèle Samsung S24 Ultra 251 30 - -

Problèmes concernant les rapports

Si vous rencontrez un bug ou si vous souhaitez demander une fonctionnalité, signalez-le dans la section Problèmes GitHub de LiteRT-LM.