Inferenza batch con Gemini

Ottieni un'inferenza asincrona, con throughput elevato e conveniente per le tue esigenze di trattamento dati su larga scala con l'inferenza in batch di Gemini (precedentemente nota come previsione in batch). Questa guida illustra il valore dell'inferenza in batch, il suo funzionamento, le sue limitazioni e le best practice per ottenere risultati ottimali.

Perché utilizzare l'inferenza batch?

In molti scenari reali, non è necessaria una risposta immediata da un modello linguistico. Potresti invece avere un set di dati di prompt di grandi dimensioni che devi elaborare in modo efficiente e conveniente. È qui che l'inferenza batch dà il meglio di sé.

I vantaggi principali includono:

  • Convenienza: l'elaborazione batch viene offerta con una tariffa scontata del 50% rispetto all'inferenza in tempo reale, il che la rende ideale per attività su larga scala e non urgenti. La memorizzazione nella cache implicita è abilitata per impostazione predefinita per i modelli Gemini 2.5 e successivi, offrendo uno sconto del 90% sui token di input memorizzati nella cache rispetto ai token di input standard:

    • Modelli Gemini 3 e successivi: per i modelli supportati, gli sconti per la cache e il batch si sommano, offrendo uno sconto totale del 95% sui token di input memorizzati nella cache rispetto ai token di input standard.
    • Modelli Gemini 2.5: gli sconti per cache e batch non sono cumulabili. Lo sconto del 90% per successo della cache ha la precedenza sullo sconto per i batch.

    Per le tariffe specifiche dei modelli, consulta i prezzi di Gemini Enterprise Agent Platform.

  • Limiti di frequenza elevati: elabora centinaia di migliaia di richieste in un unico batch con un limite di frequenza più elevato rispetto all'API Gemini in tempo reale.

  • Flusso di lavoro semplificato: anziché gestire una pipeline complessa di singole richieste in tempo reale, puoi inviare un singolo job batch e recuperare i risultati una volta completata l'elaborazione. Il servizio gestisce la convalida del formato, parallelizza le richieste per l'elaborazione simultanea e riprova automaticamente per ottenere una percentuale di completamento elevata con un tempo di risposta di 24 ore.

L'inferenza batch è ottimizzata per attività di elaborazione su larga scala come:

  • Generazione di contenuti: genera descrizioni dei prodotti, post sui social media o altri testi creativi in blocco.
  • Annotazione e classificazione dei dati: classifica le recensioni degli utenti, categorizza i documenti o esegui l'analisi del sentiment su un ampio corpus di testo.
  • Analisi offline: riassumi articoli, estrai informazioni chiave da report o traduci documenti su larga scala.
  • Generazione di embedding: genera vector embedding per un corpus di documenti di grandi dimensioni per supportare i workload di ricerca semantica, recupero e clustering.

Modelli Gemini che supportano l'inferenza batch

I seguenti modelli Gemini di base e ottimizzati supportano l'inferenza batch:

Fai clic per espandere i modelli supportati

Modelli di embedding che supportano l'inferenza batch

L'inferenza batch è disponibile anche per i modelli di embedding:

  • Modelli di embedding Gemini (anteprima): gemini-embedding-001 e gemini-embedding-2. Ogni job batch supporta fino a 1.000.000 di righe e ogni progetto supporta fino a 10.000 job batch in coda contemporaneamente.
  • Modelli di text embedding legacy: tutte le versioni stabili, tra cui text-embedding-004, text-embedding-005 e text-multilingual-embedding-002. Ogni richiesta può includere fino a 30.000 prompt.

I job batch di embedding utilizzano uno schema di input e output diverso rispetto ai job batch di generazione di testo di Gemini e i limiti di richiesta in Quote e limiti non si applicano a questi job. Per lo schema JSONL richiesto, le opzioni di configurazione per modello e gli esempi, consulta Ottieni inferenze di embedding in batch.

Supporto dei modelli di endpoint globali

L'inferenza batch supporta l'utilizzo dell'endpoint globale per i modelli Gemini di base. Non supporta l'endpoint globale per i modelli Gemini ottimizzati.

L'endpoint globale contribuisce a migliorare la disponibilità complessiva gestendo le tue richieste da qualsiasi regione supportata dal modello che stai utilizzando. Tieni presente che non supporta i requisiti di residenza dei dati. Se hai requisiti di residenza dei dati, utilizza gli endpoint regionali.

Quote e limiti

Sebbene l'inferenza batch sia potente, è importante essere consapevoli delle seguenti limitazioni.

  • Quota: non esistono limiti di quota predefiniti per l'utilizzo. Il servizio batch fornisce invece l'accesso a un pool di risorse ampio e condiviso, allocato dinamicamente in base alla disponibilità delle risorse e alla domanda in tempo reale di tutti i clienti di quel modello. Quando sono attivi più clienti e la nostra capacità è satura, le tue richieste batch potrebbero essere messe in coda per la capacità.
  • Tempo di coda: quando il nostro servizio registra un traffico elevato, il job batch viene messo in coda per la capacità. Il job rimane in coda per un massimo di 72 ore prima di scadere.
  • Limiti delle richieste: un singolo job batch può includere fino a 200.000 richieste. Se utilizzi Cloud Storage come input, esiste anche un limite di dimensioni dei file di 1 GB. I modelli di embedding hanno limiti di richieste diversi. Per saperne di più, consulta Modelli di embedding che supportano l'inferenza batch.
  • Tempo di elaborazione: i job batch vengono elaborati in modo asincrono e non sono progettati per le applicazioni in tempo reale. La maggior parte dei job viene completata entro 24 ore dall'inizio dell'esecuzione (senza contare il tempo di attesa in coda). Dopo 24 ore, i job incompleti vengono annullati e ti verranno addebitate solo le richieste completate.
  • Job annullati: puoi annullare i job di inferenza batch in qualsiasi momento. Quando annulli un job, l'eventuale lavoro rimanente viene annullato e viene restituito il lavoro già completato. Ti verrà addebitato solo il lavoro completato.
  • Funzionalità non supportate: l'inferenza batch non supporta il throughput riservato, la memorizzazione nella cache esplicita o la RAG. La memorizzazione nella cache implicita dell'inferenza batch non è supportata in Gemini 2.0 Flash o Gemini 2.0 Flash-Lite.
  • Output immagine: l'inferenza batch è limitata alla risoluzione predefinita di 1K. Gli output 2K e 4K non sono supportati.

Best practice

Per ottenere il massimo dall'inferenza batch con Gemini, ti consigliamo le seguenti best practice:

  • Combina i job: per massimizzare la velocità effettiva, combina i job più piccoli in un unico job di grandi dimensioni, entro i limiti del sistema. Ad esempio, l'invio di un job batch con 200.000 richieste offre un throughput migliore rispetto a 1000 job con 200 richieste ciascuno. Evita i job con meno di 1000 richieste, perché l'overhead fisso per job occupa la maggior parte del tempo di esecuzione.
  • Monitora lo stato del job: puoi monitorare l'avanzamento del job utilizzando l'API, l'SDK o l'interfaccia utente. Per saperne di più, consulta Monitora lo stato del job. Se un job non va a buon fine, controlla i messaggi di errore per diagnosticare e risolvere il problema.
  • Ottimizza i costi: sfrutta i risparmi sui costi offerti dall'elaborazione batch per tutte le attività che non richiedono una risposta immediata.

Passaggi successivi