LiteRT-LM è un framework di inferenza open source pronto per la produzione progettato per offrire deployment di LLM cross-platform ad alte prestazioni su dispositivi edge.
Funzionalità principali
- Supporto multipiattaforma:funziona su Android, iOS, web e computer.
- Accelerazione hardware:
- GPU: basato su ML Drift, che supporta sia i modelli ML che quelli di AI generativa.
- NPU:inferenza accelerata su dispositivi con chipset Qualcomm e MediaTek (accesso in anteprima).
- Multimodalità: supporto dell'input audio e visivo.
- Utilizzo degli strumenti: supporto della chiamata di funzione per i flussi di lavoro degli agenti.
- Ampio supporto dei modelli:esegui Gemma, Llama, Phi-4, Qwen e altri.
Backend e piattaforme supportati
| Piattaforma | Supporto CPU | Supporto GPU | Supporto NPU |
|---|---|---|---|
| Android | ✅ | ✅ | ✅ |
| iOS | ✅ | ✅ | - |
| macOS | ✅ | ✅ | - |
| Windows | ✅ | ✅ | - |
| Linux | ✅ | ✅ | - |
| Incorporato | ✅ | - | - |
Avvio rapido
Vuoi provarlo prima? Prima di procedere con la configurazione completa, puoi utilizzare i binari precompilati per il desktop o l'app Google AI Edge Gallery per il mobile per eseguire LiteRT-LM immediatamente.
App mobile
La galleria Google AI Edge è un'app demo che ti mette a disposizione la potenza dei modelli di AI generativa all'avanguardia, basati su LiteRT-LM.
Interfaccia a riga di comando desktop
Dopo aver scaricato il binario lit, esegui lit per visualizzare le opzioni.
Scegli la tua piattaforma
| Lingua | Stato | Ideali per… | Documentazione |
|---|---|---|---|
| Kotlin | ✅ Stabile |
App Android native e strumenti desktop basati su JVM. Ottimizzato per le coroutine. | Riferimento API Kotlin |
| C++ | ✅ Stabile |
Logica di base multipiattaforma e sistemi incorporati ad alte prestazioni. | Riferimento API C++ |
| Swift | 🚀 In Dev |
Integrazione nativa di iOS e macOS con supporto Metal specializzato. | Presto disponibile |
| Python | 🚀 In Dev |
Prototipazione rapida, sviluppo e scripting lato desktop. | Presto disponibile |
Modelli supportati
La seguente tabella mostra un campione di modelli completamente supportati e testati con LiteRT-LM.
Nota: "Pronto per la chat" indica i modelli ottimizzati per la chat (ottimizzazione delle istruzioni). I modelli "di base" spesso richiedono un'ottimizzazione per ottenere prestazioni ottimali della chat, a meno che non vengano utilizzati per completamenti specifici.
| Modello | Tipo | Quantizzazione | Lunghezza del contesto | Dimensione (MB) | Scarica |
|---|---|---|---|---|---|
| Gemma | |||||
| Gemma3-1B | Chat pronta | 4 bit per canale | 4096 | 557 | Scarica |
| Gemma-3n-E2B | Chat pronta | 4 bit per canale | 4096 | 2965 | Scarica |
| Gemma-3n-E4B | Chat pronta | 4 bit per canale | 4096 | 4235 | Scarica |
| FunctionGemma-270M | Base (è richiesta l'ottimizzazione) | 8 bit per canale | 1024 | 288 | Guida al perfezionamento |
| ↪ TinyGarden-270M | Demo | 8 bit per canale | 1024 | 288 | Scarica / Prova l'app |
| Llama | |||||
| Llama-3.2-1B-Instruct | Chat pronta | 8 bit per canale | 8192 | 1162 | Scarica |
| Llama-3.2-3B-Instruct | Chat pronta | 8 bit per canale | 8192 | 2893 | Scarica |
| Phi | |||||
| phi-4-mini | Chat pronta | 8 bit per canale | 4096 | 3728 | Scarica |
| Qwen | |||||
| qwen2.5-1.5b | Chat pronta | 8 bit per canale | 4096 | 1524 | Scarica |
Rendimento
Di seguito sono riportati i numeri di rendimento dell'esecuzione di ciascun modello su vari dispositivi. Tieni presente che il benchmark viene misurato con 1024 token di precompilazione e 256 token di decodifica (con blocco delle prestazioni sui dispositivi Android).
| Modello | Dispositivo | Backend | Riempimento preliminare (token/sec) | Decodifica (token/sec) | Dimensioni del contesto |
|---|---|---|---|---|---|
| Gemma3-1B | MacBook Pro (2023 M3) |
CPU | 423 | 67 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
CPU | 243 | 44 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
GPU | 1877 | 45 | 4096 |
| Gemma3-1B | Samsung S25 (Ultra) |
NPU | 5837 | 85 | 1280 |
| Gemma-3n-E2B | MacBook Pro (2023 M3) |
CPU | 233 | 28 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
CPU | 111 | 16 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
GPU | 816 | 16 | 4096 |
| Gemma-3n-E4B | MacBook Pro (2023 M3) |
CPU | 170 | 20 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
CPU | 74 | 9 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
GPU | 548 | 9 | 4096 |
| FunctionGemma | Samsung S25 (Ultra) |
CPU | 1718 | 126 | 1024 |
Nota: la prima volta che un determinato modello viene caricato su un determinato dispositivo, il caricamento richiederà più tempo perché i pesi vengono ottimizzati. I caricamenti successivi saranno più veloci grazie alla memorizzazione nella cache.
Hosting e deployment dei modelli
Quando un modello supera i limiti di download "over-the-air" (spesso intorno a 1,5 GB), è necessaria una strategia di recupero remoto.
- Firebase:consigliato per scaricare file di grandi dimensioni su Android e iOS.
- API HuggingFace:recupera i modelli direttamente utilizzando l'API HuggingFace.
Segnalare problemi
Se riscontri un bug o hai una richiesta di funzionalità, utilizza la pagina Problemi di GitHub di LiteRT-LM.