Penyesuaian model adalah proses penting dalam mengadaptasi Gemini untuk melakukan tugas tertentu dengan presisi dan akurasi yang lebih tinggi. Penyesuaian model bekerja dengan menyediakan model dengan set data pelatihan yang berisi serangkaian contoh tugas hilir tertentu.
Gunakan Gemini Tuning API untuk kasus penggunaan berikut:
Model yang Didukung:
Anda dapat menggunakan fine-tuning yang diawasi pada model Gemini berikut:
LLM Terjemahan V2 (translation-llm-002
) juga didukung.
Contoh sintaksis
Sintaksis untuk menyesuaikan model.
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs \ -d '{ "baseModel": "...", "supervisedTuningSpec" : { ... "hyper_parameters": { ... }, }, "tunedModelDisplayName": "", }'
Daftar parameter
Lihat contoh untuk mengetahui detail implementasi.
Isi permintaan
Isi permintaan berisi data dengan parameter berikut:
Parameter | |
---|---|
|
Opsional: Nama model dasar yang sedang di-tuning. |
|
Nama tampilan |
supervisedTuningSpec
Parameter | |
---|---|
|
URI Cloud Storage set data pelatihan Anda. Set data harus diformat sebagai file JSONL. Untuk hasil terbaik, berikan minimal 100 hingga 500 contoh. Untuk mengetahui informasi selengkapnya, lihat Tentang set data penyesuaian yang diawasi. |
|
Opsional: Cloud Storage URI set data validasi Anda. Set data Anda harus diformat sebagai file JSONL. Set data dapat berisi hingga 256 contoh. Jika Anda memberikan file ini, data akan digunakan untuk membuat metrik validasi secara berkala selama penyesuaian. Untuk mengetahui informasi selengkapnya, lihat Tentang set data penyesuaian yang diawasi . |
|
Opsional: Jumlah lintasan lengkap yang dilakukan model pada seluruh set data pelatihan selama pelatihan. Vertex AI akan otomatis menyesuaikan nilai default dengan ukuran set data pelatihan Anda. Nilai ini didasarkan pada hasil tolok ukur untuk mengoptimalkan kualitas output model. |
|
Opsional: Pengganda untuk menyesuaikan kecepatan pembelajaran default. |
|
Opsional: Ukuran adaptor untuk penyesuaian. |
|
Opsional: Nama tampilan |
AdapterSize
Ukuran adaptor untuk tugas penyesuaian.
Parameter | |
---|---|
|
Ukuran adaptor tidak ditentukan. |
|
Ukuran adaptor 1. |
|
Ukuran adaptor 4. |
|
Ukuran adaptor 8. |
|
Ukuran adaptor 16. |
Contoh
Membuat Tugas penyesuaian yang diawasi
Anda dapat membuat tugas penyesuaian model teks yang diawasi menggunakan Vertex AI SDK untuk Python atau dengan mengirim permintaan POST.
Kasus penggunaan dasar
Kasus penggunaan dasar hanya menetapkan nilai untuk baseModel
dan training_dataset_uri
.
Semua parameter lainnya menggunakan nilai default.
REST
Untuk membuat tugas penyesuaian model, kirim permintaan POST menggunakan metode
tuningJobs.create
.
Perhatikan bahwa beberapa parameter tidak didukung oleh semua model. Pastikan Anda hanya menyertakan parameter yang berlaku untuk model yang sedang disesuaikan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: Project ID Anda.
- TUNING_JOB_REGION: Region tempat tugas penyetelan berjalan. Ini juga merupakan region default tempat model yang disesuaikan diupload.
- BASE_MODEL: Nama model dasar yang akan disesuaikan.
- TRAINING_DATASET_URI: Cloud Storage URI set data pelatihan Anda. Set data harus diformat sebagai file JSONL. Untuk hasil terbaik, berikan minimal 100 hingga 500 contoh. Untuk mengetahui informasi selengkapnya, lihat Tentang set data penyesuaian yang diawasi .
Metode HTTP dan URL:
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Isi JSON permintaan:
{ "baseModel": "BASE_MODEL", "supervisedTuningSpec" : { "training_dataset_uri": "TRAINING_DATASET_URI" }, }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Anda akan melihat respons JSON yang mirip seperti berikut:
Python
Kasus penggunaan lanjutan
Kasus penggunaan lanjutan memperluas kasus penggunaan dasar, tetapi juga menetapkan nilai untuk
hyper_parameters
opsional, seperti epoch_count
, learning_rate_multiplier
, dan adapter_size
.
REST
Untuk membuat tugas penyesuaian model, kirim permintaan POST menggunakan metode
tuningJobs.create
.
Perhatikan bahwa beberapa parameter tidak didukung oleh semua model. Pastikan Anda hanya menyertakan parameter yang berlaku untuk model yang sedang disesuaikan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: .
- TUNING_JOB_REGION: Region tempat tugas penyetelan berjalan. Ini juga merupakan region default tempat model yang disesuaikan diupload.
- BASE_MODEL: Nama model dasar yang akan disesuaikan.
- TRAINING_DATASET_URI: Cloud Storage URI set data pelatihan Anda. Set data harus diformat sebagai file JSONL. Untuk hasil terbaik, berikan minimal 100 hingga 500 contoh. Untuk mengetahui informasi selengkapnya, lihat Tentang set data penyesuaian yang diawasi .
- VALIDATION_DATASET_URIOpsional: Cloud Storage URI dari file set data validasi Anda.
- EPOCH_COUNTOpsional: Jumlah lintasan lengkap yang dilakukan model pada seluruh set data pelatihan selama pelatihan. Biarkan tidak disetel untuk menggunakan nilai yang direkomendasikan dan telah diisi otomatis.
- ADAPTER_SIZEOpsional: Ukuran adaptor yang akan digunakan untuk tugas penyesuaian. Ukuran adaptor memengaruhi jumlah parameter yang dapat dilatih untuk tugas penyesuaian. Ukuran adaptor yang lebih besar menunjukkan bahwa model dapat mempelajari tugas yang lebih kompleks, tetapi memerlukan set data pelatihan yang lebih besar dan waktu pelatihan yang lebih lama.
- LEARNING_RATE_MULTIPLIER: Opsional: Pengganda untuk diterapkan ke kecepatan pembelajaran yang direkomendasikan. Biarkan tidak disetel untuk menggunakan nilai yang direkomendasikan.
- EXPORT_LAST_CHECKPOINT_ONLYOpsional: Setel ke
true
untuk hanya menggunakan checkpoint terbaru. - TUNED_MODEL_DISPLAYNAMEOpsional: Nama tampilan untuk model yang disesuaikan. Jika tidak disetel, nama acak akan dibuat.
- KMS_KEY_NAMEOpsional: ID resource Cloud KMS dari kunci enkripsi yang dikelola pelanggan yang digunakan untuk melindungi resource. Kuncinya memiliki format:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. Kunci harus berada di region yang sama dengan tempat resource komputasi dibuat. Untuk informasi selengkapnya, lihat Kunci enkripsi yang dikelola pelanggan (CMEK). - SERVICE_ACCOUNTOpsional: Akun layanan yang digunakan untuk menjalankan workload tuningJob. Jika tidak ditentukan, Agen Layanan Penyesuaian Aman Vertex AI di project akan digunakan. Lihat Menyesuaikan Agen Layanan. Jika Anda berencana menggunakan Akun Layanan yang dikelola pelanggan, Anda harus memberikan peran
roles/aiplatform.tuningServiceAgent
ke akun layanan tersebut. Berikan juga peran Tuning Service Agentroles/iam.serviceAccountTokenCreator
ke Akun Layanan yang dikelola pelanggan.
Metode HTTP dan URL:
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Isi JSON permintaan:
{ "baseModel": "BASE_MODEL", "supervisedTuningSpec" : { "trainingDatasetUri": "TRAINING_DATASET_URI", "validationDatasetUri": "VALIDATION_DATASET_URI", "hyperParameters": { "epochCount": "EPOCH_COUNT", "adapterSize": "ADAPTER_SIZE", "learningRateMultiplier": "LEARNING_RATE_MULTIPLIER" }, "export_last_checkpoint_only": EXPORT_LAST_CHECKPOINT_ONLY, }, "tunedModelDisplayName": "TUNED_MODEL_DISPLAYNAME", "encryptionSpec": { "kmsKeyName": "KMS_KEY_NAME" }, "serviceAccount": "SERVICE_ACCOUNT" }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Anda akan melihat respons JSON yang mirip seperti berikut:
Python
Mencantumkan Tugas penyesuaian
Anda dapat melihat daftar tugas penyesuaian dalam project saat ini menggunakan Vertex AI SDK untuk Python atau dengan mengirim permintaan GET.
REST
Untuk membuat tugas penyesuaian model, kirim permintaan POST menggunakan metode
tuningJobs.create
.
Perhatikan bahwa beberapa parameter tidak didukung oleh semua model. Pastikan Anda hanya menyertakan parameter yang berlaku untuk model yang sedang disesuaikan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: .
- TUNING_JOB_REGION: Region tempat tugas penyetelan berjalan. Ini juga merupakan region default tempat model yang disesuaikan diupload.
Metode HTTP dan URL:
GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan berikut ini.
Python
Mendapatkan detail tugas penyesuaian
Anda bisa mendapatkan detail tugas penyesuaian menggunakan Vertex AI SDK untuk Python atau dengan mengirim permintaan GET.
REST
Untuk melihat daftar tugas penyesuaian model, kirim permintaan GET menggunakan metode
tuningJobs.get
dan tentukan TuningJob_ID
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: .
- TUNING_JOB_REGION: Region tempat tugas penyetelan berjalan. Ini juga merupakan region default tempat model yang disesuaikan diupload.
- TUNING_JOB_ID: ID tugas penyesuaian.
Metode HTTP dan URL:
GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan berikut ini.
Python
Membatalkan tugas penyesuaian
Anda dapat membatalkan tugas penyesuaian menggunakan Vertex AI SDK untuk Python atau dengan mengirim permintaan POST.
REST
Untuk melihat daftar tugas penyesuaian model, kirim permintaan GET menggunakan metode
tuningJobs.cancel
dan tentukan TuningJob_ID
.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: .
- TUNING_JOB_REGION: Region tempat tugas penyetelan berjalan. Ini juga merupakan region default tempat model yang disesuaikan diupload.
- TUNING_JOB_ID: ID tugas penyesuaian.
Metode HTTP dan URL:
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan berikut ini.
Python
Langkah berikutnya
Untuk dokumentasi mendetail, lihat berikut ini: