Auf dieser Seite wird der End-to-End-Workflow für die Feinabstimmung von Gemini-Modellen mit Reinforcement Learning mithilfe der Agent Platform API beschrieben: Erstellen eines Abstimmungsjobs, Prüfen des Status, Abrufen des Endpunkts des abgestimmten Modells und Ausführen der Inferenz. Informationen zum Ausführen dieser Aufgaben in der Cloud de Confiance Console finden Sie in der Cloud de Confiance Console-Kurzanleitung.
Bevor Sie beginnen, lesen Sie den Abschnitt Feinabstimmung mit Reinforcement Learning. Dort finden Sie eine Übersicht über das Feature, die unterstützten Modelle und die unterstützten Regionen.
Abstimmungsjob für Reinforcement Learning erstellen
Ein Job zum Feinabstimmen von Reinforcement Learning wird erstellt, indem eine POST-Anfrage an den Endpunkt tuningJobs.create gesendet wird. Das vollständige Anfrageschema und alle konfigurierbaren Felder finden Sie auf der Seite Reinforcement Learning Fine-Tuning Job.
In den Beispielen auf dieser Seite wird us-central1 als Abstimmungsregion verwendet. Das resultierende abgestimmte Modell wird über den multiregionalen Endpunkt us bereitgestellt. Eine vollständige Liste der unterstützten Regionen für das Abstimmen und Bereitstellen finden Sie im Abschnitt Unterstützte Modelle und Regionen.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
"https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/tuningJobs" \
-d \
$'{
"tunedModelDisplayName": "dai-image-test",
"baseModel": "gemini-3.5-flash",
"reinforcementTuningSpec": {
"trainingDatasetUri": "gs://path/to/my/training_dataset.jsonl",
"validationDatasetUri": "gs://path/to/my/eval_dataset.jsonl",
"hyperParameters": {
"epochCount":15,
"learningRateMultiplier":1.0,
"samplesPerPrompt":16,
"adapterSize":"ADAPTER_SIZE_SIXTEEN",
"maxOutputTokens":32768,
"batchSize":32,
"evaluateInterval":5,
"checkpointInterval":5,
"thinkingLevel":"HIGH"
},
"singleRewardConfig": {
"rewardName": "my_reward_function_name",
"parseResponseConfig": {"parseType":"IDENTITY"},
"cloudRunRewardScorer": {
"cloudRunUri":"https://my.cloud.run.uri"
}
}
}
}'
Ersetzen Sie Folgendes:
- PROJECT_ID: Ihre Cloud de Confiance by S3NS Projekt-ID
Status des Reinforcement Learning-Abstimmungsjobs prüfen
Sie können den Fortschritt, die Leistung und die Qualität eines laufenden Jobs zur Feinabstimmung mit Reinforcement Learning in der Cloud de Confiance -Konsole auf der Seite Modelle > Abstimmung überwachen. Jeder Abstimmungsjob hat eine eigene Monitoring-Ansicht, in der der zugrunde liegende Abstimmungsstatus mit Diagrammen für Trainings- und Bewertungsbelohnungen, Generierungslänge und anderen Abstimmungs-Messwerten angezeigt wird. Eine vollständige Liste der ausgegebenen Messwerte und Informationen dazu, wie Sie sie interpretieren, finden Sie auf der Seite Messwerte und Monitoring.
Trainingszeit
Die Trainingszeit wird von den folgenden Faktoren beeinflusst:
- Größe des Trainings- und Validierungs-Datasets: Weitere Informationen finden Sie auf der Seite Abstimmungs-Dataset.
- Hyperparameter, einschließlich
samplesPerPrompt, Batch-Größe, Anzahl der Epochen und Multiplikator für die Lernrate. Weitere Informationen finden Sie auf der Seite Hyperparameter.
Je nach Einrichtung kann ein Job zum Fine-Tuning von Gemini mit Reinforcement Learning Stunden bis Tage dauern.
Endpunkt des feinabgestimmten Modells abrufen
Nachdem der Abstimmungsjob JOB_STATE_SUCCEEDED erreicht hat, rufen Sie den bereitgestellten Endpunkt des abgestimmten Modells ab, indem Sie eine tuningJobs.get-Anfrage senden und das Feld tunedModel.endpoint der Antwort lesen.
curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/tuningJobs/TUNING_JOB_ID"
Ersetzen Sie Folgendes:
- PROJECT_ID: Ihre Cloud de Confiance by S3NS Projekt-ID
- TUNING_JOB_ID: die ID des Abstimmungsjobs.
Beispielantwort (abgekürzt):
{
"name": "projects/{PROJECT_ID}/locations/us-central1/tuningJobs/{TUNING_JOB_ID}",
"tunedModelDisplayName": "my-rl-tuned-model",
"state": "JOB_STATE_SUCCEEDED",
"tunedModel": {
"model": "projects/{PROJECT_ID}/locations/us-central1/models/{MODEL_ID}",
"endpoint": "projects/{PROJECT_ID}/locations/us/endpoints/{ENDPOINT_ID}"
},
"reinforcementTuningSpec": { ... }
}
Wenn der Abstimmungsjob erfolgreich ist, wird endpoint aus dem letzten Prüfpunkt in der Antwort angezeigt.
Inferenz für den Endpunkt des feinabgestimmten Modells ausführen
Das abgestimmte Modell liefert Vorhersagen über die Standard-generateContent-API am zurückgegebenen Endpunkt. Wenn der Abstimmungsjob in us-central1 ausgeführt wurde, wird das abgestimmte Modell über den multiregionalen Endpunkt us bereitgestellt.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
"https://aiplatform.us.rep.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us/endpoints/ENDPOINT_ID:generateContent" \
-d \
$'{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Why is the sky blue?" }
]
}
]
}'
Ersetzen Sie Folgendes:
- PROJECT_ID: Ihre Cloud de Confiance by S3NS Projekt-ID
- ENDPOINT_ID: Die Endpunkt-ID, die im Feld
tunedModel.endpointderGetTuningJob-Antwort zurückgegeben wird.
Nächste Schritte
- Weitere Informationen
- Unterstützte Belohnungsfunktionen
- Hyperparameter für das bestärkende Lernen konfigurieren.
- Messwerte und Monitoring
- In der Cloud de Confiance Kurzanleitung zur Console erfahren Sie, wie Sie mit der Cloud de Confiance Console Tuning-Jobs erstellen.