Questa pagina illustra il flusso di lavoro end-to-end per il fine-tuning con apprendimento per rinforzo dei modelli Gemini nella console Google Cloud : creazione di un job di ottimizzazione, controllo del relativo stato, recupero dell'endpoint del modello ottimizzato ed esecuzione dell'inferenza. Per completare queste attività utilizzando l'API Agent Platform, consulta la guida rapida all'API.
Prima di iniziare, consulta la sezione Informazioni sulla messa a punto del reinforcement learning per una panoramica della funzionalità, dei modelli supportati e delle regioni supportate.
Crea un job di ottimizzazione del reinforcement learning
Per creare un job di perfezionamento del reinforcement learning utilizzando la console Google Cloud , segui questi passaggi:
Nella console Google Cloud , vai alla pagina Modelli > Tuning.
Fai clic su Crea modello ottimizzato.
Nella sezione Dettagli modello, configura quanto segue:
- In Metodo di ottimizzazione, seleziona Ottimizzazione tramite apprendimento per rinforzo.
- Nel campo Nome del modello ottimizzato, inserisci un nome per il modello ottimizzato
(ad esempio,
my-rl-tuned-model). - In Modello di base, seleziona Ottimizza un foundation model.
- Nell'elenco a discesa Modello di base, seleziona il modello da ottimizzare (ad esempio,
gemini-3.5-flash). - Nell'elenco a discesa Regione, seleziona la regione in cui viene eseguito il job di ottimizzazione (ad esempio
us-central1 (Iowa)). Il modello ottimizzato risultante viene pubblicato dall'endpoint multiregionaleus. Per l'elenco completo delle regioni di ottimizzazione e pubblicazione supportate, consulta la sezione Modelli e regioni supportati. - (Facoltativo) Espandi Opzioni avanzate per personalizzare gli iperparametri:
- Numero di epoche: il numero di epoche di addestramento (ad esempio,
15). - Moltiplicatore del tasso di apprendimento: il moltiplicatore per scalare il tasso di apprendimento (ad esempio,
1.0). - Dimensioni adattatore: le dimensioni dell'adattatore per l'ottimizzazione efficiente dei parametri
(ad esempio,
16). - Campioni per prompt: il numero di risposte candidate che il modello genera per prompt durante l'addestramento (ad esempio,
16). - Livello di pensiero: il livello di pensiero per i modelli di ragionamento
(ad esempio,
HIGH). - Dimensioni del batch: il numero di esempi di addestramento per batch (ad esempio,
32). - Intervallo di checkpoint: la frequenza in passaggi con cui
vengono salvati i checkpoint intermedi (ad esempio,
5). - Token di output massimo: il numero massimo di token di output generati
per campione (ad esempio,
32768). - Intervallo di valutazione: la frequenza in passaggi con cui la valutazione
viene eseguita sul set di dati di convalida (ad esempio,
5).
- Numero di epoche: il numero di epoche di addestramento (ad esempio,
- Fai clic su Continua.
Nella sezione Configurazione della ricompensa, configura una o più funzioni di ricompensa per valutare le risposte del modello durante l'addestramento:
- Nel campo Nome premio, inserisci un nome univoco per la funzione di premio (ad esempio,
my_reward_function_name). Le metriche emesse nella visualizzazione di monitoraggio sono precedute da questo nome. - Nell'elenco a discesa Tipo di premio, seleziona il tipo di marcatore:
- Ricompensa per la corrispondenza di stringhe: valuta il testo generato rispetto ai riferimenti utilizzando la corrispondenza esatta o le espressioni regolari.
- Premio basato su LLM: utilizza un modello Gemini come valutatore automatico per assegnare un punteggio alle risposte in base a un prompt di valutazione.
- Premio basato su funzione Python: esegue codice Python personalizzato in un sandbox sicuro per valutare le risposte.
- Premio completamente personalizzabile tramite Cloud Run: chiama un endpoint HTTP esterno ospitato su Cloud Run per valutare le risposte.
Configura le impostazioni per il tipo di premio selezionato. Ad esempio, per un premio Cloud Run:
- Nel campo URI Cloud Run, inserisci l'URI HTTPS del servizio di cui hai eseguito il deployment (ad esempio,
https://my.cloud.run.uri). - Nel campo Tipo di analisi, seleziona
IDENTITY.
In alternativa, per un premio per la corrispondenza di stringhe:
- Nel campo Tipo di analisi, seleziona
REGEX_EXTRACToIDENTITY. Se selezioniREGEX_EXTRACT, inserisci l'espressione regolare in Espressione di estrazione regex (ad esempio,\text{(.*)}). - Nel campo Premio per risposta errata, inserisci la penalità per una
risposta errata (ad esempio,
-1). - Nel campo Premio per risposta corretta, inserisci il punteggio per una
risposta corretta (ad esempio,
1). - In Tipo di espressione di corrispondenza stringa, seleziona Corrispondenza stringa o Corrispondenza JSON.
- Nell'elenco a discesa Operazione di corrispondenza, seleziona la logica di corrispondenza (ad esempio, Corrispondenza esatta).
- Nel campo Expression (Espressione), inserisci l'espressione di riferimento (ad esempio
references.reference).
- Nel campo URI Cloud Run, inserisci l'URI HTTPS del servizio di cui hai eseguito il deployment (ad esempio,
Nel campo Peso premio, inserisci il peso relativo per questa funzione di premio (ad esempio,
1).Fai clic su Fine.
(Facoltativo) Per definire un premio composito, fai clic su + Aggiungi un altro premio e configura altre funzioni di premio. Puoi aggiungere fino a 16 funzioni di ricompensa e assegnare pesi relativi a ciascuna.
Fai clic su Continua.
- Nel campo Nome premio, inserisci un nome univoco per la funzione di premio (ad esempio,
Nella sezione (Facoltativo) Test premio, convalida la configurazione del premio prima di avviare il job di ottimizzazione:
- Nel campo Esempio di addestramento, inserisci un oggetto JSON di esempio contenente
contentsereferences. - Nel campo Risposta del modello di esempio, inserisci una risposta candidata oppure fai clic su Genera dall'esempio di addestramento per generare una risposta di esempio utilizzando il modello di base.
- Fai clic su Test.
- Verifica che la valutazione abbia esito positivo e controlla il punteggio calcolato. Se utilizzi le ricompense composite, fai clic su Visualizza le informazioni sulle singole ricompense per esaminare la suddivisione del punteggio per ricompensa.
- Fai clic su Continua.
- Nel campo Esempio di addestramento, inserisci un oggetto JSON di esempio contenente
In Set di dati di ottimizzazione, specifica i file del set di dati archiviati in Cloud Storage:
- Nel campo Set di dati di addestramento, inserisci l'URI Cloud Storage
del file JSONL del set di dati di addestramento (ad esempio,
gs://path/to/my/training_dataset.jsonl). - Nel campo Set di dati di convalida, inserisci l'URI Cloud Storage del file JSONL del set di dati di convalida (ad esempio,
gs://path/to/my/eval_dataset.jsonl). - Fai clic su Avvia ottimizzazione.
- Nel campo Set di dati di addestramento, inserisci l'URI Cloud Storage
del file JSONL del set di dati di addestramento (ad esempio,
Controlla lo stato del job di ottimizzazione del reinforcement learning
Dopo aver fatto clic su Avvia ottimizzazione, la console ti reindirizza alla pagina Modelli > Ottimizzazione. La tabella dei job di ottimizzazione mostra il job appena creato nella parte superiore dell'elenco con i seguenti dettagli:
- Nome modello: il nome visualizzato che hai specificato per il modello ottimizzato.
- Stato: lo stato attuale del job di ottimizzazione (ad esempio In attesa, In esecuzione o Riuscito).
- Metodo:
Reinforcement Learning. - Modello di base: il modello di base o preottimizzato.
- Regione: la località in cui è in esecuzione il job di ottimizzazione.
Fai clic sul nome del modello per aprire la pagina dei dettagli del job di ottimizzazione. La pagina fornisce le seguenti schede:
- Monitor: mostra l'avanzamento dell'ottimizzazione e i grafici interattivi delle metriche:
- Avanzamento dell'ottimizzazione: indica se il job è in esecuzione o è stato completato.
- Grafici combinati: quando viene fornito un set di dati di convalida, le curve di addestramento e convalida (come
/train_mean_rewarde/eval_mean_reward) vengono tracciate insieme sugli stessi grafici. - Gruppi di grafici comprimibili: i grafici delle metriche sono organizzati in gruppi,
incluse le metriche di ottimizzazione generali (ricompensa media, lunghezza token di generazione,
lunghezza token di pensiero, latenza di campionamento e latenza di ricompensa) e
le metriche per ricompensa con il prefisso
${reward_name}. - Annotazioni dei checkpoint: i checkpoint intermedi salvati durante la messa a punto vengono annotati direttamente sui grafici lungo la sequenza temporale dell'addestramento.
- Barra dei filtri: utilizza la barra dei filtri per cercare le metriche per nome o filtrare
per categoria (
Show Category). Una volta filtrata, la barra dei filtri rimane fissa nella parte superiore della visualizzazione. - Tabella dei checkpoint: elenca i checkpoint intermedi salvati con i numeri dei passaggi e i valori delle metriche. Utilizza il selettore di colonne per scegliere quali colonne visualizzare.
- Set di dati: mostra i dettagli del set di dati, le conversazioni di esempio e i valori di riferimento.
- Dettagli: riepiloga la configurazione del job, inclusi il modello di base, il metodo di ottimizzazione, gli iperparametri e le configurazioni di ricompensa. Fai clic su Visualizza dettagli in una scheda di configurazione del premio per visualizzare i valori dei parametri non predefiniti.
Per l'elenco completo delle metriche emesse e come interpretarle, consulta la pagina Metriche e monitoraggio.
Tempo di addestramento
Il tempo di addestramento è influenzato dai seguenti fattori:
- Dimensioni del set di dati di addestramento e convalida: per i dettagli, consulta Set di dati di ottimizzazione per il fine tuning dell'apprendimento per rinforzo.
- Iperparametri: include
samplesPerPrompt, dimensione del batch, numero di epoche e moltiplicatore del tasso di apprendimento. Per maggiori dettagli, consulta la sezione Iperparametri per il fine-tuning dell'apprendimento per rinforzo.
A seconda della configurazione, un job di perfezionamento dell'apprendimento per rinforzo di Gemini può essere eseguito per ore o giorni.
Recupera l'endpoint del modello ottimizzato
Una volta che il job di ottimizzazione raggiunge lo stato Riuscito, il checkpoint del modello viene sottoposto a deployment in un endpoint. Puoi visualizzare e gestire il modello ottimizzato di cui è stato eseguito il deployment direttamente nella consoleGoogle Cloud :
- Nell'intestazione della pagina dei dettagli del job di ottimizzazione, fai clic su Visualizza dettagli modello. Viene visualizzata la pagina Model Registry con i dettagli del modello ottimizzato.
- Nella pagina dei dettagli del modello, trova la scheda Deployment e test per visualizzare il percorso della risorsa endpoint di cui è stato eseguito il deployment (nel formato
projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/{ENDPOINT_ID}). - In alternativa, nella scheda Monitora della pagina dei dettagli del job di ottimizzazione, individua la tabella Checkpoint per esaminare i checkpoint intermedi. Puoi eseguire il deployment e valutare i singoli checkpoint in modo indipendente.
Se il job di ottimizzazione è stato eseguito in us-central1, il modello ottimizzato viene pubblicato dall'endpoint multi-regione us.
Esegui l'inferenza sul modello ottimizzato
Puoi testare ed eseguire l'inferenza sul modello ottimizzato direttamente nella consoleGoogle Cloud . Per farlo:
Nell'intestazione della pagina dei dettagli del job di ottimizzazione, fai clic su Test.
Agent Studio si apre con il modello ottimizzato preselezionato.
Nel campo del prompt, inserisci un prompt di input (ad esempio,
"Why is the sky blue?"o una domanda del tuo dominio di destinazione).Fai clic su Esegui (o Invia) per generare una risposta.
Esamina l'output generato per valutare in che misura il modello rispetta lo stile di ragionamento, la formattazione e gli obiettivi di premio che preferisci.
Passaggi successivi
- Scopri di più sui job di ottimizzazione del reinforcement learning.
- Esplora le funzioni di premio supportate.
- Configura gli iperparametri per l'apprendimento per rinforzo.
- Scopri come monitorare metriche e monitoraggio.
- Prova la guida rapida sull'API per creare job di ottimizzazione in modo programmatico.