Panoramica delle API ML Kit GenAI

Le API GenAI di ML Kit sfruttano la potenza di Gemini Nano per aiutare le tue app a eseguire attività di AI generativa on-device. Queste API sono basate su AICore, un servizio di sistema Android che gestisce i foundation model on-device e accelera l'inferenza, mantenendo privati i dati degli utenti.

I Termini di servizio aggiuntivi dell'API GenAI di ML Kit si applicano all'utilizzo delle API GenAI. Gli sviluppatori sono gli unici responsabili della sicurezza del proprio client API e dell'esperienza utente della propria app.

Funzionalità chiave

ML Kit organizza le sue funzionalità di AI generativa nelle seguenti categorie:

Generazione e agenti personalizzati

Lavora direttamente con il foundation model Gemini Nano per prompt personalizzati e workflow agentici autonomi:

  • Accesso diretto al modello (utilizzando la classe GenerativeModel): genera testo generato o output strutturato digitato da prompt personalizzati solo di testo o prompting multimodale oppure gestisci direttamente la cronologia della chat a più turni utilizzando un oggetto List<Content> con ruoli USER e MODEL e un valore sessionId, nonché gestisci direttamente le dichiarazioni degli strumenti.
  • Agentic Workflows (utilizzando la classe AgentRunner): basati sulla classe GenerativeModel, automatizzano la gestione delle sessioni multi-turno (inclusa la cronologia delle conversazioni in memoria) e i loop di chiamate degli strumenti in più passaggi.

Voce e audio

Trascrivi, traduci e sintetizza l'audio vocale on-device:

Attività di testo e immagini

Utilizza API specifiche per le attività ottimizzate per le attività comuni di visione, scrittura e ricerca senza prompt engineering:

  • Descrizione dell'immagine: genera una breve descrizione di un'immagine specifica.
  • Riassunto: riassumi articoli o conversazioni in chat sotto forma di elenco puntato.
  • Correzione bozze: perfeziona i contenuti brevi migliorando la grammatica e correggendo gli errori di ortografia.
  • Riscrittura: riscrivi brevi messaggi con toni o stili diversi.
  • Ricerca semantica: genera vector embedding per testo e immagini utilizzando l'API Embedding e abbinali ad AppSearch di AndroidX per trovare i contenuti in base al significato.

Vantaggi delle API di AI generativa

Analogamente ad altre funzionalità di ML Kit esistenti, le API di AI generativa vengono eseguite interamente on-device e offrono quindi i seguenti vantaggi:

  • I dati di input, inferenza e output vengono elaborati localmente
  • La funzionalità rimane la stessa senza una connessione a internet affidabile
  • Nessun costo aggiuntivo per il server per ogni chiamata API

Inoltre, poiché le API GenAI sono basate su AICore e su Gemini Nano, le app e le API specifiche per le attività condividono lo stesso modello di base Gemini Nano sul dispositivo. In questo modo, non è necessario attendere il download di un modello separato se Gemini Nano esiste già su un dispositivo, risparmiando spazio di archiviazione. Scopri di più su come AICore isola le richieste per proteggere la privacy.

Streaming e non streaming

Le API GenAI di ML Kit offrono opzioni di streaming e non streaming per la ricezione dei risultati. L'API di streaming fornisce le risposte in modo incrementale man mano che vengono generate, fornendo un flusso continuo di dati. Al contrario, l'API non in streaming attende il completamento dell'intera risposta prima di restituirla come un singolo blocco.

Scegli l'API di streaming per risposte lunghe, in quanto consente un feedback iniziale più rapido. L'API non in streaming è più adatta per risposte brevi o per l'elaborazione dei risultati in batch.

Assistenza per i dispositivi

Il supporto dei dispositivi per la generazione personalizzata, gli agenti e le API Tasks per le attività di testo e immagini è descritto nelle sezioni seguenti. Per le funzionalità non elencate in questa sezione, consulta le singole pagine delle funzionalità per informazioni sul supporto dei dispositivi.

Generazione personalizzata e supporto dei dispositivi degli agenti

L'accesso diretto ai modelli e gli Agentic Workflow sono supportati sui seguenti dispositivi:

nano-v2

  • Honor: Magic V5, Magic 7, Magic 7 Pro
  • iQOO: iQOO 13
  • Motorola: Razr 60 Ultra, Razr Ultra 2025
  • OnePlus: OnePlus 13, OnePlus 13s
  • OPPO: Find N5
  • POCO: POCO F7 Ultra, POCO F8 Pro, POCO F8 Ultra, POCO X7 Pro, POCO X8 Pro
  • realme: realme GT 7 Pro
  • Samsung: Galaxy Z Fold7, Galaxy Z TriFold
  • vivo: vivo X200 FE, vivo T4 Ultra
  • Xiaomi: Xiaomi 14T Pro, Xiaomi 15, Xiaomi 15T, Xiaomi 15T Pro, Xiaomi 15 Ultra, Xiaomi 17, Xiaomi 17 Ultra, Xiaomi Pad Mini

nano-v3

  • Google: Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
  • Honor: Honor Magic 8 Pro
  • iQOO: iQOO 15
  • Lenovo: Lenovo Idea Tab Pro Gen 2, Lenovo Legion Tab Gen 5(8,8")
  • Motorola: firma
  • OnePlus: OnePlus 15, OnePlus 15R
  • OPPO: Find X9, Find X9 Pro, Find X8, Find X8 Pro, Reno 14 Pro 5G, Reno 15 Pro 5G, Reno 15 Pro Mini 5G, Reno 15 Pro Max 5G
  • realme: realme GT 7T
  • Samsung: Galaxy S26, Galaxy S26+, Galaxy S26 Ultra
  • Sharp: AQUOS R11
  • Sony: Xperia 1 VIII
  • vivo: vivo X200T, vivo X200, vivo X200 Pro, vivo X300, vivo X300 Pro

nano-v4

  • Google: Pixel 11, Pixel 11 Pro, Pixel 11 Pro XL, Pixel 11 Pro Fold
  • Samsung: Galaxy Z Flip8, Galaxy Z Fold8, Galaxy Z Fold8 Ultra

Supporto dei dispositivi per le attività di testo e immagini

Le API Image Description, Summarization, Proofreading e Rewriting sono disponibili sui seguenti dispositivi, con l'intenzione di estendere il supporto ad altri dispositivi:

  • Google: Pixel 11, Pixel 11 Pro, Pixel 11 Pro XL, Pixel 11 Pro Fold, Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
  • Honor: Honor 400 Pro, Magic 7, Magic 7 Pro, Magic 8 Pro, Magic V5
  • iQOO: iQOO 13, iQOO 15
  • Lenovo: Lenovo Idea Tab Pro Gen 2, Lenovo Legion Tab Gen 5(8,8")
  • Motorola: Razr 60 Ultra, Razr Ultra 2025, Signature
  • OnePlus: OnePlus 15, OnePlus 15R, OnePlus 13, OnePlus 13s
  • OPPO: Find N5, Find X9, Find X9 Pro, Find X8, Find X8 Pro, Reno 14 Pro 5G, Reno 15 Pro 5G, Reno 15 Pro Mini 5G, Reno 15 Pro Max 5G
  • POCO: POCO F7 Ultra, POCO F8 Pro, POCO F8 Ultra, POCO X7 Pro, POCO X8 Pro
  • realme: realme GT 7 Pro, realme GT 7T
  • Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Ultra, Galaxy S26, Galaxy S26+, Galaxy S26 Ultra, Galaxy Z Flip8, Galaxy Z Fold8, Galaxy Z Fold8 Ultra, Galaxy Z Fold7, Galaxy Z TriFold
  • Sharp: AQUOS R11
  • Sony: Xperia 1 VIII
  • vivo: vivo X200T, vivo X200 FE, vivo X200, vivo X200 Pro, vivo X300, X300 Pro, vivo X Fold3 Pro, vivo X Fold5, vivo T4 Ultra
  • Xiaomi: Xiaomi 14T Pro, Xiaomi 15, Xiaomi 15T, Xiaomi 15T Pro, Xiaomi 15 Ultra, Xiaomi 17, Xiaomi 17 Ultra, Xiaomi Pad Mini

La disponibilità del supporto di lingue specifiche può variare a seconda della configurazione del dispositivo e dei modelli scaricati sul dispositivo.

Recupera la versione di Gemini Nano

Versioni diverse di Gemini Nano vengono eseguite su dispositivi diversi. Per restituire la versione di Gemini Nano su un dispositivo, utilizza il metodo getBaseModelName().

Quota per applicazione

AICore applica una quota di inferenza per app. L'invio di troppe richieste API GenAI in un breve periodo comporterà una risposta ErrorCode.BUSY. Se ricevi un errore di questo tipo, valuta la possibilità di utilizzare il backoff esponenziale per riprovare la richiesta. Inoltre, ErrorCode.PER_APP_BATTERY_USE_QUOTA_EXCEEDED può essere restituito se un'app supera una quota di lunga durata (ad esempio, una quota giornaliera).

Utilizzo in background

L'inferenza dell'API GenAI è consentita solo quando l'app è l'applicazione in primo piano principale. L'utilizzo dell'API quando l'app non è in primo piano, incluso l'utilizzo di un servizio in primo piano, comporterà una risposta ErrorCode.BACKGROUND_USE_BLOCKED.

Codice campione

Per ottenere questo codice, consulta i seguenti esempi: