Inferenza ibrida

Google offre un'ampia selezione di API e modelli di AI leader del settore per l'inferenza basata su cloud e sul 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 critico quando i modelli sul dispositivo, come Gemini Nano, non sono disponibili a causa di limitazioni dell'hardware o del sistema operativo del dispositivo. In questo modo, le funzionalità di AI rimangono funzionali nella più ampia gamma possibile di dispositivi utente.
  • Costo e funzionalità offline: i modelli sul dispositivo contribuiscono a garantire che le funzionalità di AI funzionino perfettamente quando l'utente è offline. Inoltre, il trasferimento delle attività di routine al dispositivo locale contribuisce a ridurre i costi di inferenza del cloud.

Ecco i vantaggi dell'inferenza sul dispositivo e dell'inferenza sul cloud, rispettivamente:

Inferenza on-device Inferenza cloud
Disponibile offline Compatibile con qualsiasi dispositivo
Nessun costo di inferenza Funzionalità avanzate del modello

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'interfaccia singola e unificata per il routing dell'inferenza tra i modelli cloud e on-device.

  • Passaggio automatico: puoi configurare l'app in modo che esegua le attività AI sul dispositivo ogni volta che è possibile. Ciò significa che la funzionalità della tua app funziona offline, offre una maggiore privacy e non comporta costi di inferenza cloud. Se il modello on-device non è disponibile, l'SDK può indirizzare automaticamente la richiesta al modello Gemini ospitato sul cloud.
  • Protezione da comportamenti illeciti: chiamare direttamente le API cloud da un'app mobile può comportare il rischio di esporre le credenziali e generare addebiti indesiderati. Tuttavia, quando utilizzi Firebase AI Logic, applichi anche Firebase App Check, che può contribuire a prevenire comportamenti illeciti verificando che solo la tua app autentica e non manomessa possa accedere all'API Gemini cloud.
  • Limiti di spesa: quando indirizzi le richieste ai modelli ospitati sul cloud, puoi configurare limiti di spesa per proteggere il tuo budget cloud ed evitare addebiti imprevisti.

Nella tua app, definisci il parametro onDeviceConfig per controllare la modalità di inferenza e gestire il routing:

  • PREFER_ON_DEVICE: tenta di utilizzare il modello sul dispositivo; esegue automaticamente il fallback al modello ospitato sul cloud se il modello sul dispositivo 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; esegue il failover sul modello sul dispositivo solo se il dispositivo è offline.

  • ONLY_ON_DEVICE: tenta di utilizzare il modello on-device; genera un'eccezione se il modello on-device 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; genera un'eccezione in tutti gli altri casi.

val model = Firebase.ai(backend = GenerativeBackend.Companion.googleAI())
    .generativeModel(
        modelName = "gemini-3.5-flash",
        onDeviceConfig = OnDeviceConfig(mode = InferenceMode.Companion.PREFER_ON_DEVICE)
    )

val response = model.generateContent("Write a story about a green robot.")
print(response.text)

Per i dettagli di implementazione, consulta la documentazione di Firebase ed esplora l'esempio di AI ibrida nel catalogo AI.

La transizione dei carichi di lavoro al cloud può esporre gli endpoint API cloud. Quando utilizzi Firebase AI Logic, puoi accedere in modo sicuro ai modelli Gemini basati sul cloud direttamente dalle tue app lato client applicando Firebase App Check, che contribuisce a proteggere l'inferenza basata sul cloud da accessi non autorizzati e abusi di fatturazione. In questo modo, il meccanismo di fallback ibrido rimane disponibile e sicuro.

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 esempio livello batteria e carico del processore)
  • Complessità delle query 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 di bozze e la riscrittura.

  • Kakao Mobility: Kakao Mobility ha creato uno strumento di estrazione delle entità utilizzando l'inferenza ibrida personalizzata per il proprio servizio di consegna dei pacchi, che estrae automaticamente nomi, indirizzi e numeri di telefono dei destinatari dai messaggi in linguaggio naturale per semplificare i moduli d'ordine.