Tuning API

כוונון מודלים הוא תהליך חיוני להתאמת Gemini לביצוע משימות ספציפיות בדיוק ובאמינות גבוהים יותר. כדי לשפר את המודל, מספקים לו מערך נתונים לאימון שמכיל קבוצה של דוגמאות למשימות ספציפיות במורד הזרם.

אפשר להשתמש ב-Gemini tuning API בתרחישי השימוש הבאים:

מודלים נתמכים:

אפשר להשתמש בשיטת הכוונון המפוקח (SFT) במודלים הבאים של Gemini:

יש גם תמיכה ב-Translation LLM V2 ‏ (translation-llm-002).

תחביר לדוגמה

תחביר לכוונון מודל.

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": "",
}'

רשימת הפרמטרים

פרטים על ההטמעה מופיעים בדוגמאות.

גוף הבקשה

גוף הבקשה מכיל נתונים עם הפרמטרים הבאים:

פרמטרים

source_model

string (אופציונלי)

שם מודל הבסיס שמבצעים לו כוונון.

tunedModelDisplayName

string

השם המוצג של TunedModel. השם יכול להכיל עד 128 תווים, והוא יכול לכלול כל תו UTF-8.

supervisedTuningSpec

פרמטרים

training_dataset

string

URI של Cloud Storage של מערך נתוני האימון. מערך הנתונים צריך להיות בפורמט של קובץ JSONL. כדי לקבל את התוצאות הכי טובות, מומלץ לספק לפחות 100 עד 500 דוגמאות. מידע נוסף זמין במאמר מידע על מערכי נתונים לשיפור מודלים בפיקוח.

validation_dataset

string (אופציונלי)

‫URI של Cloud Storage של מערך הנתונים לאימות. מערך הנתונים צריך להיות בפורמט של קובץ JSONL. קבוצת נתונים יכולה להכיל עד 256 דוגמאות. אם תספקו את הקובץ הזה, המערכת תשתמש בנתונים כדי ליצור מדדי אימות מעת לעת במהלך הכוונון העדין. מידע נוסף זמין במאמר מידע על מערכי נתונים מבוקרים להתאמה אישית .

epoch_count

int (אופציונלי)

מספר המעברים המלאים שהמודל מבצע על מערך הנתונים המלא לאימון במהלך האימון. מערכת Vertex AI משנה אוטומטית את ערך ברירת המחדל בהתאם לגודל של מערך הנתונים לאימון. הערך הזה מבוסס על תוצאות השוואה לשוק כדי לשפר את איכות הפלט של המודל.

learning_rate_multiplier

float (אופציונלי)

מקדם להתאמת קצב הלמידה שמוגדר כברירת מחדל.

adapter_size

AdapterSize (אופציונלי)

גודל המתאם לשינוי התדר.

tuned_model_display_name

string (אופציונלי)

השם המוצג של TunedModel. השם יכול להכיל עד 128 תווים, והוא יכול לכלול כל תו UTF-8.

AdapterSize

גודל המתאם למשימת כוונון.

פרמטרים

ADAPTER_SIZE_UNSPECIFIED

גודל המתאם לא צוין.

ADAPTER_SIZE_ONE

גודל המתאם 1.

ADAPTER_SIZE_FOUR

גודל המתאם 4.

ADAPTER_SIZE_EIGHT

גודל המתאם 8.

ADAPTER_SIZE_SIXTEEN

גודל המתאם 16.

דוגמאות

יצירת משימת כוונון בפיקוח

אפשר ליצור משימת כוונון של מודל טקסט מפוקח באמצעות Vertex AI SDK ל-Python או באמצעות שליחת בקשת POST.

תרחיש שימוש בסיסי

במקרה השימוש הבסיסי מוגדרים רק הערכים baseModel ו-training_dataset_uri. כל שאר הפרמטרים משתמשים בערכי ברירת המחדל.

REST

כדי ליצור משימת כוונון מודל, שולחים בקשת POST באמצעות ה-method‏ tuningJobs.create. הערה: חלק מהפרמטרים לא נתמכים בכל המודלים. חשוב לוודא שאתם כוללים רק את הפרמטרים הרלוונטיים למודל שאתם מכווננים.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • TUNING_JOB_REGION: האזור שבו פועלת משימת ההתאמה. זה גם האזור שמוגדר כברירת מחדל להעלאת המודל שעבר התאמה.
  • BASE_MODEL: השם של המודל הבסיסי שרוצים לכוונן.
  • TRAINING_DATASET_URI: ה-URI של מערך הנתונים לאימון ב-Cloud Storage. מערך הנתונים צריך להיות בפורמט של קובץ JSONL. כדי לקבל את התוצאות הכי טובות, מומלץ לספק לפחות 100 עד 500 דוגמאות. מידע נוסף זמין במאמר מידע על מערכי נתונים מבוקרים להתאמה אישית .

ה-method של ה-HTTP וכתובת ה-URL:

POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs

גוף בקשת JSON:

{
  "baseModel": "BASE_MODEL",
  "supervisedTuningSpec" : {
      "training_dataset_uri": "TRAINING_DATASET_URI"
  },
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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

אתם אמורים לקבל תגובת JSON שדומה לזו:

Python


import time

import vertexai
from vertexai.tuning import sft

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"
vertexai.init(project=PROJECT_ID, location="us-central1")

sft_tuning_job = sft.train(
    source_model="gemini-2.0-flash-001",
    # 1.5 and 2.0 models use the same JSONL format
    train_dataset="gs://cloud-samples-data/ai-platform/generative_ai/gemini-1_5/text/sft_train_data.jsonl",
)

# Polling for job completion
while not sft_tuning_job.has_ended:
    time.sleep(60)
    sft_tuning_job.refresh()

print(sft_tuning_job.tuned_model_name)
print(sft_tuning_job.tuned_model_endpoint_name)
print(sft_tuning_job.experiment)
# Example response:
# projects/123456789012/locations/us-central1/models/1234567890@1
# projects/123456789012/locations/us-central1/endpoints/123456789012345
# <google.cloud.aiplatform.metadata.experiment_resources.Experiment object at 0x7b5b4ae07af0>

תרחיש שימוש מתקדם

תרחיש השימוש המתקדם הוא הרחבה של תרחיש השימוש הבסיסי, אבל הוא גם מגדיר ערכים לhyper_parameters אופציונליים, כמו epoch_count, ‏ learning_rate_multiplier ו-adapter_size.

REST

כדי ליצור משימת כוונון מודל, שולחים בקשת POST באמצעות ה-method‏ tuningJobs.create. הערה: חלק מהפרמטרים לא נתמכים בכל המודלים. חשוב לוודא שאתם כוללים רק את הפרמטרים הרלוונטיים למודל שאתם מכווננים.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • TUNING_JOB_REGION: האזור שבו פועלת משימת ההתאמה. זה גם האזור שמוגדר כברירת מחדל להעלאת המודל שעבר התאמה.
  • BASE_MODEL: השם של המודל הבסיסי שרוצים לכוונן.
  • TRAINING_DATASET_URI: ה-URI של מערך הנתונים לאימון ב-Cloud Storage. מערך הנתונים צריך להיות בפורמט של קובץ JSONL. כדי לקבל את התוצאות הכי טובות, מומלץ לספק לפחות 100 עד 500 דוגמאות. מידע נוסף זמין במאמר מידע על מערכי נתונים מבוקרים להתאמה אישית .
  • VALIDATION_DATASET_URIאופציונלי: ה-URI של Cloud Storage של קובץ מערך הנתונים של האימות.
  • EPOCH_COUNTאופציונלי: מספר המעברים המלאים שהמודל מבצע על מערך הנתונים המלא לאימון במהלך האימון. כדי להשתמש בערך המומלץ שמאוכלס מראש, לא צריך להגדיר את התכונה.
  • ADAPTER_SIZEאופציונלי: גודל המתאם שבו רוצים להשתמש במשימת ההתאמה. גודל המתאם משפיע על מספר הפרמטרים שאפשר לאמן במשימת ההתאמה. גודל מתאם גדול יותר מרמז שהמודל יכול ללמוד משימות מורכבות יותר, אבל הוא דורש מערך נתונים גדול יותר לאימון וזמני אימון ארוכים יותר.
  • LEARNING_RATE_MULTIPLIER: אופציונלי: מכפיל שחל על קצב הלמידה המומלץ. אם לא מגדירים ערך, המערכת משתמשת בערך המומלץ.
  • EXPORT_LAST_CHECKPOINT_ONLYאופציונלי: מגדירים את הערך true כדי להשתמש רק בנקודת הבדיקה האחרונה.
  • METRIC_SPECאופציונלי: מפרט מדדים אחד או יותר שבהם אתם משתמשים כדי להריץ הערכה באמצעות שירות ההערכה של AI גנרטיבי. אפשר להשתמש במפרטי המדדים הבאים: "pointwise_metric_spec",‏ "pairwise_metric_spec",‏ "exact_match_spec", "bleu_spec" ו-"rouge_spec".
  • METRIC_SPEC_FIELD_NAMEאופציונלי: השדות הנדרשים למפרט המדד שבחרתם. לדוגמה, "metric_prompt_template"
  • METRIC_SPEC_FIELD_NAME_CONTENTאופציונלי: תוכן השדה של מפרט המדד שבחרתם. לדוגמה, אפשר להשתמש בתוכן השדה הבא להערכה נקודתית: "Evaluate the fluency of this sentence: {response}. Give score from 0 to 1. 0 - not fluent at all. 1 - very fluent."
  • CLOUD_STORAGE_BUCKETאופציונלי: קטגוריית Cloud Storage לאחסון התוצאות של הרצת הערכה על ידי שירות ההערכה של AI גנרטיבי.
  • TUNED_MODEL_DISPLAYNAMEאופציונלי: שם תצוגה של המודל שעבר התאמה. אם לא מגדירים שם, המערכת יוצרת שם אקראי.
  • KMS_KEY_NAMEאופציונלי: מזהה משאב Cloud KMS של מפתח ההצפנה בניהול הלקוח שמשמש להגנה על משאב. הפורמט של המפתח הוא: projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key. המפתח צריך להיות באותו אזור שבו נוצר משאב המחשוב. מידע נוסף מופיע במאמר בנושא מפתחות הצפנה בניהול הלקוח (CMEK).
  • SERVICE_ACCOUNTאופציונלי: חשבון השירות שעליו מורץ עומס העבודה של tuningJob. אם לא מציינים סוכן, נעשה שימוש בסוכן של שירות הכוונון העדין המאובטח של Vertex AI בפרויקט. מידע נוסף מופיע במאמר בנושא התאמה של סוכני שירות. אם אתם מתכננים להשתמש בחשבון שירות בניהול הלקוח, אתם צריכים להקצות לחשבון השירות את התפקיד roles/aiplatform.tuningServiceAgent. מקצים גם את התפקיד Tuning Service Agent roles/iam.serviceAccountTokenCreator לחשבון השירות בניהול הלקוח.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs

גוף בקשת JSON:

{
  "baseModel": "BASE_MODEL",
  "supervisedTuningSpec" : {
      "trainingDatasetUri": "TRAINING_DATASET_URI",
      "validationDatasetUri": "VALIDATION_DATASET_URI",
      "hyperParameters": {
          "epochCount": "EPOCH_COUNT",
          "adapterSize": "ADAPTER_SIZE",
          "learningRateMultiplier": "LEARNING_RATE_MULTIPLIER"
      },
      "exportLastCheckpointOnly": EXPORT_LAST_CHECKPOINT_ONLY,
      "evaluationConfig": {
          "metrics": [
              {
                  "aggregation_metrics": ["AVERAGE", "STANDARD_DEVIATION"],
                  "METRIC_SPEC": {
                      "METRIC_SPEC_FIELD_NAME":
                          METRIC_SPEC_FIELD_CONTENT
                  }
              },
          ],
          "outputConfig": {
              "gcs_destination": {
                  "output_uri_prefix": "CLOUD_STORAGE_BUCKET"
              }
          },
      },
  },
  "tunedModelDisplayName": "TUNED_MODEL_DISPLAYNAME",
  "encryptionSpec": {
    "kmsKeyName": "KMS_KEY_NAME"
  },
  "serviceAccount": "SERVICE_ACCOUNT"
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

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

שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:

$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

אתם אמורים לקבל תגובת JSON שדומה לזו:

Python


import time

import vertexai
from vertexai.tuning import sft

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"
vertexai.init(project=PROJECT_ID, location="us-central1")

# Initialize Vertex AI with your service account for BYOSA (Bring Your Own Service Account).
# Uncomment the following and replace "your-service-account"
# vertexai.init(service_account="your-service-account")

# Initialize Vertex AI with your CMEK (Customer-Managed Encryption Key).
# Un-comment the following line and replace "your-kms-key"
# vertexai.init(encryption_spec_key_name="your-kms-key")

sft_tuning_job = sft.train(
    source_model="gemini-2.0-flash-001",
    # 1.5 and 2.0 models use the same JSONL format
    train_dataset="gs://cloud-samples-data/ai-platform/generative_ai/gemini-1_5/text/sft_train_data.jsonl",
    # The following parameters are optional
    validation_dataset="gs://cloud-samples-data/ai-platform/generative_ai/gemini-1_5/text/sft_validation_data.jsonl",
    tuned_model_display_name="tuned_gemini_2_0_flash",
    # Advanced use only below. It is recommended to use auto-selection and leave them unset
    # epochs=4,
    # adapter_size=4,
    # learning_rate_multiplier=1.0,
)

# Polling for job completion
while not sft_tuning_job.has_ended:
    time.sleep(60)
    sft_tuning_job.refresh()

print(sft_tuning_job.tuned_model_name)
print(sft_tuning_job.tuned_model_endpoint_name)
print(sft_tuning_job.experiment)
# Example response:
# projects/123456789012/locations/us-central1/models/1234567890@1
# projects/123456789012/locations/us-central1/endpoints/123456789012345
# <google.cloud.aiplatform.metadata.experiment_resources.Experiment object at 0x7b5b4ae07af0>

הצגת רשימה של משימות אופטימיזציה

כדי לראות רשימה של משימות ההתאמה בפרויקט הנוכחי, אפשר להשתמש ב-Vertex AI SDK ל-Python או לשלוח בקשת GET.

REST

כדי ליצור משימת כוונון מודל, שולחים בקשת POST באמצעות ה-method‏ tuningJobs.create. הערה: חלק מהפרמטרים לא נתמכים בכל המודלים. חשוב לוודא שאתם כוללים רק את הפרמטרים הרלוונטיים למודל שאתם מכווננים.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: .
  • TUNING_JOB_REGION: האזור שבו פועלת משימת ההתאמה. זה גם האזור שמוגדר כברירת מחדל להעלאת המודל שעבר התאמה.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

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

מריצים את הפקודה הבאה:

$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

אתם אמורים לקבל תגובת JSON שדומה לזו:

Python

import vertexai
from vertexai.tuning import sft

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"
vertexai.init(project=PROJECT_ID, location="us-central1")

responses = sft.SupervisedTuningJob.list()

for response in responses:
    print(response)
# Example response:
# <vertexai.tuning._supervised_tuning.SupervisedTuningJob object at 0x7c85287b2680>
# resource name: projects/12345678/locations/us-central1/tuningJobs/123456789012345

קבלת פרטים על משימת שיפור

אפשר לקבל את הפרטים של משימת התאמה אישית באמצעות Vertex AI SDK ל-Python או באמצעות שליחת בקשת GET.

REST

כדי לראות רשימה של משימות כוונון מודלים, שולחים בקשת GET באמצעות השיטה tuningJobs.get ומציינים את TuningJob_ID.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: .
  • TUNING_JOB_REGION: האזור שבו פועלת משימת ההתאמה. זה גם האזור שמוגדר כברירת מחדל להעלאת המודל שעבר התאמה.
  • TUNING_JOB_ID: המזהה של משימת ההתאמה.

ה-method של ה-HTTP וכתובת ה-URL:

GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

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

מריצים את הפקודה הבאה:

$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

אתם אמורים לקבל תגובת JSON שדומה לזו:

Python

import vertexai
from vertexai.tuning import sft

# TODO(developer): Update and un-comment below lines
# PROJECT_ID = "your-project-id"
# LOCATION = "us-central1"
vertexai.init(project=PROJECT_ID, location=LOCATION)

tuning_job_id = "4982013113894174720"
response = sft.SupervisedTuningJob(
    f"projects/{PROJECT_ID}/locations/{LOCATION}/tuningJobs/{tuning_job_id}"
)

print(response)
# Example response:
# <vertexai.tuning._supervised_tuning.SupervisedTuningJob object at 0x7cc4bb20baf0>
# resource name: projects/1234567890/locations/us-central1/tuningJobs/4982013113894174720

ביטול משימת שיפור

אפשר לבטל משימת התאמה באמצעות Vertex AI SDK ל-Python או באמצעות שליחת בקשת POST.

REST

כדי לראות רשימה של משימות כוונון מודלים, שולחים בקשת GET באמצעות השיטה tuningJobs.cancel ומציינים את TuningJob_ID.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: .
  • TUNING_JOB_REGION: האזור שבו פועלת משימת ההתאמה. זה גם האזור שמוגדר כברירת מחדל להעלאת המודל שעבר התאמה.
  • TUNING_JOB_ID: המזהה של משימת ההתאמה.

ה-method של ה-HTTP וכתובת ה-URL:

POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

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

מריצים את הפקודה הבאה:

$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

אתם אמורים לקבל תגובת JSON שדומה לזו:

Python

import vertexai
from vertexai.tuning import sft

# TODO(developer): Update and un-comment below lines
# PROJECT_ID = "your-project-id"
# LOCATION = "us-central1"
vertexai.init(project=PROJECT_ID, location=LOCATION)

tuning_job_id = "4982013113894174720"
job = sft.SupervisedTuningJob(
    f"projects/{PROJECT_ID}/locations/{LOCATION}/tuningJobs/{tuning_job_id}"
)
job.cancel()

המאמרים הבאים

לעיון בתיעוד מפורט: