חיזוי באצ'ים מאפשר לשלוח למודל ביעילות כמה הנחיות טקסטואליות שלא רגישות לזמן האחזור. בהשוואה לתחזיות אונליין, שבהן שולחים הנחיית קלט אחת לכל בקשה, אפשר לאגד מספר גדול של הנחיות קלט בבקשה אחת.
מודלים נתמכים
פלטפורמת הסוכנים של Gemini Enterprise תומכת בחיזויים באצווה במודלים הבאים.
Llama:
OpenAI gpt-oss:
Qwen:
DeepSeek:
מודלים של הטמעה:
הכנת קלט
לפני שמתחילים, צריך להכין את נתוני הקלט בטבלה ב-BigQuery או כקובץ JSONL ב-Cloud Storage. הקלט של שני המקורות צריך להיות בפורמט JSONL של סכימת OpenAI API, כמו בדוגמאות הבאות.
מודלים גדולים של שפה (LLM):
{"custom_id": "test-request-0", "method": "POST", "url": "/v1/chat/completions", "body": {"model": "MODEL_ID", "messages": [{"role": "user", "content": "Give me a recipe for banana bread"}], "max_tokens": 1000}}
מודלים של הטמעה:
{"custom_id": "test-request-0", "method": "POST", "url": "/v1/embeddings", "body": {"model": "MODEL_ID", "input": "Hello World"}}
BigQuery
טבלת הקלט ב-BigQuery צריכה להתאים לסכימה הבאה:
| שם עמודה | תיאור |
|---|---|
| custom_id | מזהה לכל בקשה כדי להתאים את הקלט לפלט. |
| method | שיטת הבקשה. |
| url | נקודת הקצה של הבקשה. |
| body(JSON) | הנחיית הקלט שלכם. |
- טבלת הקלט יכולה להכיל עמודות אחרות, שהמשימה באצווה מתעלמת מהן ומעבירה אותן ישירות לטבלת הפלט.
- במשימות חיזוי באצווה, שני שמות של עמודות שמורים לפלט של החיזוי באצווה: response(JSON) ו-id. אל תשתמשו בעמודות האלה בטבלת הקלט.
- העמודות method ו-url נמחקות ולא נכללות בטבלת הפלט.
Cloud Storage
ב-Cloud Storage, קובץ הקלט חייב להיות קובץ JSONL שנמצא בקטגוריה של Cloud Storage.
שליחת בקשה לתחזית באצווה
כדי לבצע חיזוי באצווה על סמך מודל, משתמשים בקלט מ- BigQuery או מ-Cloud Storage. אתם יכולים לבחור באופן עצמאי אם להוציא את התחזיות לטבלה ב-BigQuery או לקובץ JSONL בקטגוריה של Cloud Storage.
BigQuery
מציינים את טבלת הקלט, המודל ומיקום הפלט ב-BigQuery. משימת החיזוי באצווה והטבלה צריכות להיות באותו אזור.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION: אזור שתומך במודל.
- PROJECT_ID: מזהה הפרויקט. .
- MODEL: שם המודל שרוצים לכוונן.
- INPUT_URI: הטבלה ב-BigQuery שבה נמצא הקלט של חיזוי באצ', למשל
myproject.mydataset.input_table. - OUTPUT_FORMAT: כדי להגדיר פלט לטבלה ב-BigQuery, מציינים
bigquery. כדי להוציא פלט לקטגוריה של Cloud Storage, מציינים אתjsonl. - DESTINATION: ב-BigQuery, מציינים
bigqueryDestination. ב-Cloud Storage, מציינים אתgcsDestination. - OUTPUT_URI_FIELD_NAME:
ב-BigQuery, מציינים
outputUri. ב-Cloud Storage, מציינים אתoutputUriPrefix. - OUTPUT_URI: ב-BigQuery, מציינים את מיקום הטבלה, למשל
myproject.mydataset.output_result. ב-Cloud Storage, מציינים את המיקום של הקטגוריה והתיקייה, למשלgs://mybucket/path/to/outputfile.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs
גוף בקשת JSON:
'{
"displayName": "JOB_NAME",
"model": "publishers/PUBLISHER/models/MODEL_ID",
"inputConfig": {
"instancesFormat":"bigquery",
"bigquerySource":{
"inputUri" : "INPUT_URI"
}
},
"outputConfig": {
"predictionsFormat":"OUTPUT_FORMAT",
"DESTINATION":{
"OUTPUT_URI_FIELD_NAME": "OUTPUT_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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
Cloud Storage
מציינים את המיקום של קובץ ה-JSONL ב-Cloud Storage, את המודל ואת מיקום הפלט.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- LOCATION: אזור שתומך במודל.
- PROJECT_ID: מזהה הפרויקט. .
- MODEL: שם המודל שרוצים לכוונן.
- INPUT_URI: המיקום ב-Cloud Storage של קובץ ה-JSONL עם נתוני הקלט לחיזוי באצווה, למשל
gs://bucketname/path/to/jsonl. - OUTPUT_FORMAT: כדי להגדיר פלט לטבלה ב-BigQuery, מציינים
bigquery. כדי להגדיר פלט לקטגוריה של Cloud Storage, מצייניםjsonl. - DESTINATION: ב-BigQuery, מציינים
bigqueryDestination. ב-Cloud Storage, מציינים אתgcsDestination. - OUTPUT_URI_FIELD_NAME:
ב-BigQuery, מציינים
outputUri. ב-Cloud Storage, מציינים אתoutputUriPrefix. - OUTPUT_URI: ב-BigQuery, מציינים את מיקום הטבלה, למשל
myproject.mydataset.output_result. ב-Cloud Storage, מציינים את המיקום של הקטגוריה והתיקייה, למשלgs://mybucket/path/to/outputfile.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs
גוף בקשת JSON:
'{
"displayName": "JOB_NAME",
"model": "publishers/PUBLISHER/models/MODEL_ID",
"inputConfig": {
"instancesFormat":"jsonl",
"gcsSource":{
"uris" : "INPUT_URI"
}
},
"outputConfig": {
"predictionsFormat":"OUTPUT_FORMAT",
"DESTINATION":{
"OUTPUT_URI_FIELD_NAME": "OUTPUT_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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"
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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
בדיקת הסטטוס של משימת חיזוי באצווה
אפשר לקבל את הסטטוס של משימת חיזוי בקבוצה כדי לבדוק אם היא הושלמה בהצלחה. משך העבודה תלוי במספר הפריטים ששלחתם.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט. .
- LOCATION: האזור שבו נמצאת המשימה באצווה.
- JOB_ID: מזהה המשימה באצווה שהוחזר כשיצרתם את המשימה.
ה-method של ה-HTTP וכתובת ה-URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID
כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:
curl
מריצים את הפקודה הבאה:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID"
PowerShell
מריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID" | Select-Object -Expand Content
אתם אמורים לקבל תגובת JSON שדומה לזו:
אחזור הפלט
כשמשימת חיזוי אצווה מסתיימת, מאחזרים את הפלט מהמיקום שצוין. ב-BigQuery, הפלט נמצא בעמודה response(JSON) בטבלת היעד ב-BigQuery. ב-Cloud Storage, הפלט נשמר כקובץ JSONL במיקום הפלט ב-Cloud Storage.
המאמרים הבאים
- איך קוראים לממשקי MaaS API למודלים פתוחים לתרחישי שימוש בסטרימינג ובלי סטרימינג.