Google offre un'ampia selezione di modelli e API di AI leader del settore per l'inferenza basata su cloud e su dispositivo. L'inferenza ibrida ti consente di bilanciare senza problemi i carichi di lavoro di AI tra il dispositivo locale e il cloud, ottimizzando prestazioni, costi e disponibilità.
L'inferenza ibrida offre due vantaggi principali per la tua app per Android:
- Massimizzare la copertura: i modelli cloud fungono da fallback fondamentale quando i modelli on-device come Gemini Nano, non sono disponibili a causa di vincoli hardware o del sistema operativo del dispositivo. In questo modo, le funzionalità di AI rimangono funzionali sulla più ampia gamma possibile di dispositivi utente.
- Costi e funzionalità offline: i modelli on-device contribuiscono a garantire che le funzionalità di AI funzionino senza problemi quando l'utente è offline. Inoltre, il trasferimento delle attività di routine al dispositivo locale contribuisce a ridurre i costi di inferenza cloud.
Opzioni di implementazione
Puoi implementare l'inferenza ibrida utilizzando i seguenti approcci:
API ibrida Firebase AI Logic
L'API ibrida Firebase AI Logic fornisce un'unica interfaccia unificata per dividere l'inferenza tra gli ambienti cloud e on-device.
Include un parametro onDeviceConfig che fornisce controlli semplici per definire la
modalità di inferenza e gestire il routing:
PREFER_ON_DEVICE: tenta di utilizzare il modello on-device, eseguendo automaticamente il fallback al modello ospitato sul cloud se il modello on-device non è disponibile o non è supportato per la richiesta.PREFER_IN_CLOUD: tenta di utilizzare il modello ospitato sul cloud quando il dispositivo è online e il modello è disponibile, eseguendo il fallback al modello on-device solo se il dispositivo è offline.ONLY_ON_DEVICE: tenta di utilizzare il modello on-device, ma genera un'eccezione se non è disponibile o non è supportato per la richiesta.ONLY_IN_CLOUD: tenta di utilizzare il modello ospitato sul cloud quando il dispositivo è online e il modello è disponibile, generando un'eccezione in tutti gli altri casi.
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel(
modelName = "gemini-2.5-flash",
onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)
)
val response = model.generateContent("Write a story about a green robot.")
print(response.text)
Per i dettagli sull'implementazione, consulta la documentazione di Firebase ed esplora l'esempio di AI ibrida nel catalogo AI.
Routing personalizzato
Se la tua app ha requisiti aziendali o UX specifici, puoi anche implementare una logica di routing personalizzata. In questo modo, puoi determinare dinamicamente il percorso di inferenza in base a fattori in tempo reale, ad esempio:
- Latenza di rete
- Integrità del sistema del dispositivo (ad es. livelli della batteria e carico del processore)
- Complessità della query dell'utente
Questo approccio di inferenza ibrida personalizzata viene utilizzato dalle principali app che hanno implementato il proprio routing personalizzato per offrire esperienze di AI affidabili, tra cui:
GBoard: Gboard utilizza l'inferenza ibrida personalizzata per alimentare gli strumenti di scrittura come la correzione e la riscrittura.
Kakao Mobility: Kakao Mobility ha creato uno strumento di estrazione delle entità utilizzando l'inferenza ibrida personalizzata per il suo servizio di consegna dei pacchi che estrae automaticamente i nomi, gli indirizzi e i numeri di telefono dei destinatari dai messaggi in linguaggio naturale per semplificare i moduli d'ordine.