이 페이지에서는 Agent Platform API를 사용하여 Gemini 모델의 강화 학습 세부 조정에 대한 엔드 투 엔드 워크플로를 안내합니다. 여기에는 조정 작업 생성, 상태 확인, 조정된 모델 엔드포인트 가져오기, 엔드포인트에 대한 추론 실행이 포함됩니다. Google Cloud 콘솔에서 이러한 작업을 완료하려면 Google Cloud 콘솔 빠른 시작을 참고하세요.
시작하기 전에 강화 학습 미세 조정 정보에서 기능, 지원되는 모델, 지원되는 지역을 개략적으로 살펴보세요.
강화 학습 미세 조정 작업 만들기
강화 학습 미세 조정 작업은 tuningJobs.create 엔드포인트에 POST 요청을 전송하여 생성됩니다. 전체 요청 스키마와 모든 구성 가능한 필드는 강화 학습 미세 조정 작업 페이지를 참고하세요.
이 페이지의 예시에서는 us-central1을 조정 리전으로 사용합니다. 결과적으로 조정된 모델은 us 멀티 리전 엔드포인트에서 제공됩니다. 지원되는 조정 및 제공 리전의 전체 목록은 지원되는 모델 및 리전 섹션을 참고하세요.
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"
}
}
}
}'
다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
강화 학습 미세 조정 작업 상태 확인
모델 > 조정 페이지의 Google Cloud 콘솔에서 실행 중인 강화 학습 미세 조정 작업의 진행 상황, 성능, 품질을 모니터링할 수 있습니다. 각 튜닝 작업에는 학습 및 평가 보상, 생성 길이, 기타 튜닝 측정항목의 차트와 함께 기본 튜닝 상태를 표시하는 전용 모니터링 뷰가 있습니다. 내보낸 측정항목의 전체 목록과 해석 방법은 측정항목 및 모니터링 페이지를 참고하세요.
학습 시간
학습 시간은 다음 요인의 영향을 받습니다.
- 학습 및 검증 데이터 세트 크기 자세한 내용은 튜닝 데이터 세트 페이지를 참고하세요.
- 하이퍼파라미터:
samplesPerPrompt, 배치 크기, 에포크 수, 학습률 배수 등이 포함됩니다. 자세한 내용은 하이퍼파라미터 페이지를 참고하세요.
설정에 따라 Gemini 강화 학습 미세 조정 작업이 몇 시간에서 며칠 동안 실행될 수 있습니다.
조정된 모델 엔드포인트 가져오기
미세 조정 작업이 JOB_STATE_SUCCEEDED에 도달한 후 tuningJobs.get 요청을 실행하고 응답의 tunedModel.endpoint 필드를 읽어 배포된 조정된 모델 엔드포인트를 검색합니다.
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"
다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- TUNING_JOB_ID: 조정 작업의 ID
응답 예시 (약식):
{
"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": { ... }
}
조정 작업이 성공하면 마지막 체크포인트의 endpoint가 응답에 표시됩니다.
조정된 모델 엔드포인트에서 추론 실행
조정된 모델은 반환된 엔드포인트에서 표준 generateContent API를 통해 예측을 제공합니다. 미세 조정 작업이 us-central1에서 실행된 경우 조정된 모델은 us 멀티 리전 엔드포인트에서 제공됩니다.
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?" }
]
}
]
}'
다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트 ID입니다.
- ENDPOINT_ID:
GetTuningJob응답의tunedModel.endpoint필드에 반환된 엔드포인트 ID입니다.
다음 단계
- 강화 학습 미세 조정 작업에 대해 자세히 알아보세요.
- 지원되는 보상 함수를 살펴봅니다.
- 강화 학습을 위한 초매개변수를 구성합니다.
- 측정항목 및 모니터링을 추적하는 방법을 알아보세요.
- Google Cloud 콘솔 빠른 시작을 사용하여 Google Cloud 콘솔로 조정 작업을 만들어 보세요.