רישום ושיתוף של בקשות ותשובות

פלטפורמת הסוכנים של Gemini Enterprise יכולה לתעד דוגמאות של בקשות ותשובות ב-Gemini ובמודלים נתמכים של שותפים. היומנים נשמרים בטבלה ב-BigQuery לצפייה ולניתוח. בנוסף, פלטפורמת Agent יכולה לשתף יומני בקשות ותגובות של מודלים ספציפיים של AI מתקדם עם שותפי MaaS מסוימים, כדי לעזור לכם למלא את ההתחייבויות שלכם כלפי אותם שותפי MaaS.

בדף הזה מוסבר איך להגדיר יומני בקשות ותגובות למודלים בסיסיים ולמודלים שעברו כוונון.

שיטות API נתמכות לרישום ביומן

אפשר להשתמש ביומני הבקשות והתגובות בכל מודלי Gemini שמשתמשים ב-generateContent או ב-streamGenerateContent.

אפשר להשתמש גם במודלים הבאים של שותפים, שמשתמשים ב-rawPredict או ב-streamrawPredict:

  • Anthropic Claude

יומני בקשות ותגובות למודלים בסיסיים

אתם יכולים להגדיר יומני בקשות ותגובות למודלים בסיסיים באמצעות ה-API בארכיטקטורת REST או Python SDK. יכול להיות שיעברו כמה דקות עד שההגדרות של הרישום ביומן ייכנסו לתוקף.

הפעלת רישום ביומן של בקשות ותגובות

כדי לקבל הוראות להפעלת יומני בקשות ותגובות במודל בסיס, בחרו באחת מהכרטיסיות הבאות:

במודלים של Anthropic, רק REST נתמך להגדרת רישום ביומן. כדי להפעיל את הגדרת הרישום ביומן באמצעות ה-API בארכיטקטורת REST, מגדירים את המפיץ בתור anthropic ואת שם המודל בתור אחד מהמודלים הנתמכים של Claude.

Python SDK

אפשר להשתמש בשיטה הזו כדי ליצור או לעדכן PublisherModelConfig.

# Specify the preview version of GenerativeModel
import vertexai
from vertexai.preview.generative_models import(
    GenerativeModel,
    )

PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION"

vertexai.init(project=PROJECT_ID, location=LOCATION)

publisher_model = GenerativeModel("gemini-2.5-flash")

# Set logging configuration
publisher_model.set_request_response_logging_config(
    enabled=True,
    sampling_rate=1.0,
    bigquery_destination="bq://PROJECT_ID.DATASET_NAME.TABLE_NAME",
    enable_otel_logging=True
    )

‫API בארכיטקטורת REST

יצירה או עדכון של PublisherModelConfig באמצעות setPublisherModelConfig:

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

  • ‫ENDPOINT_PREFIX: האזור של משאב המודל, ואחריו -. לדוגמה, us-central1-. אם משתמשים בנקודת הקצה הגלובלית, משאירים את השדה ריק. אפשר לתעד בקשות ותגובות ביומן בכל האזורים שנתמכים במודל.
  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: האזור של משאב המודל. אם משתמשים בנקודת הקצה הגלובלית, מזינים global.
  • ‫PUBLISHER: שם בעל האפליקציה. לדוגמה: google.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה: gemini-2.0-flash-001.
  • ‫SAMPLING_RATE: כדי להפחית את עלויות האחסון, אפשר להגדיר מספר בין 0 ל-1 כדי לקבוע את החלק של הבקשות שיתועדו ביומן. לדוגמה, אם הערך הוא 1, כל הבקשות נרשמות ביומן, ואם הערך הוא 0.1, רק 10% מהבקשות נרשמות ביומן.
  • ‫BQ_URI: ה-URI של הטבלה ב-BigQuery שמשמשת לרישום ביומן. לדוגמה: bq://PROJECT_ID.DATASET_NAME.TABLE_NAME. אם משתמשים בנקודת הקצה הגלובלית (LOCATION מוגדר ל-global), צריך לציין מערך נתונים קיים ב-BigQuery, כמו bq://PROJECT_ID.DATASET_NAME או bq://PROJECT_ID.DATASET_NAME.TABLE_NAME. אם אתם משתמשים בנקודת קצה אזורית ומציינים רק מזהה פרויקט (bq://PROJECT_ID), נוצר מערך נתונים בשם publishers_PUBLISHER_models_MODEL_ENDPOINT_ID, כאשר PUBLISHER ו-MODEL פועלים לפי כללי מתן השמות של BigQuery. אם לא תציינו שם לטבלה, תיווצר טבלה בשם request_response_logging.

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

POST https://ENDPOINT_PREFIXaiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig

גוף בקשת JSON:

{
  "publisherModelConfig": {
     "loggingConfig": {
       "enabled": true,
       "samplingRate": SAMPLING_RATE,
       "bigqueryDestination": {
         "outputUri": "bq://BQ_URI"
       },
       "enableOtelLogging": true
     }
   }
 }

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

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://ENDPOINT_PREFIXaiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig"

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://ENDPOINT_PREFIXaiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig" | Select-Object -Expand Content

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

אחזור של הגדרות הרישום ביומן

כדי לקבל את הגדרות הרישום ביומן של הבקשות והתגובות של המודל הבסיסי, משתמשים ב-API בארכיטקטורת REST.

‫API בארכיטקטורת REST

משיגים את הגדרות הרישום ביומן של הבקשות והתגובות באמצעות fetchPublisherModelConfig:

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

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של משאב המודל.
  • ‫PUBLISHER: שם בעל האפליקציה. לדוגמה: google.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה: gemini-2.0-flash-001.

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

GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig

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

curl

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

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig"

PowerShell

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

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig" | Select-Object -Expand Content

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

השבתת רישום ביומן

משביתים את הרישום ביומן של הבקשות והתגובות של מודל הבסיס באמצעות ה-API בארכיטקטורת REST או Python SDK.

Python SDK

# Specify the preview version of GenerativeModel
import vertexai
from vertexai.preview.generative_models import(
    GenerativeModel,
    )

PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION"

vertexai.init(project=PROJECT_ID, location=LOCATION)

publisher_model = GenerativeModel("gemini-2.5-flash")

# Disable logging
publisher_model.set_request_response_logging_config(
    enabled=False,
    sampling_rate=1.0,
    bigquery_destination="bq://PROJECT_ID.DATASET_NAME.TABLE_NAME"
    )

‫API בארכיטקטורת REST

כדי להשבית את הרישום ביומן, משתמשים ב-setPublisherModelConfig:

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

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של משאב המודל.
  • ‫PUBLISHER: שם בעל האפליקציה. לדוגמה: google.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה: gemini-2.0-flash-001.

שיטת ה-HTTP וכתובת ה-URL:

POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig

גוף בקשת JSON:

{
  "publisherModelConfig": {
     "loggingConfig": {
       "enabled": false
     }
  }
}

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

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/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig"

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/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig" | Select-Object -Expand Content

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

יומני בקשות ותגובות למודלים שעברו כוונון עדין

אתם יכולים להגדיר יומני בקשות ותגובות למודלים שעברו כוונון באמצעות ה-API בארכיטקטורת REST או Python SDK.

הפעלת יומני בקשות ותגובות

כדי להפעיל את יומני הבקשות והתגובות במודל שעבר כוונון, בוחרים באחת מהכרטיסיות הבאות:

Python SDK

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

# Specify the preview version of GenerativeModel
import vertexai
from vertexai.preview.generative_models import(
    GenerativeModel,
    )

PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION"

vertexai.init(project=PROJECT_ID, location=LOCATION)

tuned_model = GenerativeModel(f"projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/ENDPOINT_ID")

# Set logging configuration
tuned_model.set_request_response_logging_config(
    enabled=True,
    sampling_rate=1.0,
    bigquery_destination=f"bq://{PROJECT_ID}.DATASET_NAME.TABLE_NAME",
    enable_otel_logging=True,
    )

‫API בארכיטקטורת REST

אפשר להפעיל את רישום הבקשות והתגובות ביומן רק כשיוצרים נקודת קצה באמצעות projects.locations.endpoints.create או כשמתקנים נקודת קצה קיימת באמצעות projects.locations.endpoints.patch.

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

כשיוצרים או מתקנים נקודת קצה, מאכלסים את השדה predictRequestResponseLoggingConfig של המשאב Endpoint בערכים הבאים:

  • ‫enabled: צריך להגדיר את הערך True כדי להפעיל רישום ביומן של בקשות ותגובות.

  • ‫samplingRate: כדי להפחית את עלויות האחסון, אפשר להגדיר מספר בין 0 ל-1 כדי לקבוע את החלק של הבקשות שיתועדו ביומן. לדוגמה, הערך 1 מתעד את כל הבקשות, והערך 0.1 מתעד 10% מהבקשות.

  • ‫BigQueryDestination: הטבלה ב-BigQuery שמשמשת לרישום ביומן. אם תציינו רק מזהה פרויקט, תיווצר קבוצת נתונים בשם ENDPOINT_DISPLAYNAMEENDPOINT_ID, כאשר ENDPOINT_DISPLAY_NAME פועל לפי כללי מתן השמות של BigQuery. אם לא תציינו שם לטבלה, תיווצר טבלה בשם request_response_logging.

  • ‫enableOtelLogging: מגדירים את הערך true כדי להפעיל את רישום היומנים של OpenTelemetry (OTEL) בנוסף לרישום היומנים של בקשות ותגובות שמוגדר כברירת מחדל.

במאמר סכימת טבלת הרישום ביומן מוסבר איך להציג את סכימת הטבלה ב-BigQuery.

ההגדרה הבאה היא דוגמה:

{
  "predictRequestResponseLoggingConfig": {
    "enabled": true,
    "samplingRate": 0.5,
    "bigqueryDestination": {
      "outputUri": "bq://PROJECT_ID.DATASET_NAME.TABLE_NAME"
    },
    "enableOtelLogging": true
  }
}

אחזור של הגדרות הרישום ביומן

כדי לקבל את הגדרות הרישום ביומן של הבקשות והתגובות של המודל המכוונן, משתמשים ב-API בארכיטקטורת REST.

‫API בארכיטקטורת REST

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

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של משאב נקודת הקצה.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה: gemini-2.0-flash-001.
  • ‫ENDPOINT_ID: המזהה של נקודת הקצה.

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

GET https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID

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

curl

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

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID"

PowerShell

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

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID" | Select-Object -Expand Content

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

השבתת הגדרת הרישום ביומן

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

Python SDK

# Specify the preview version of GenerativeModel
import vertexai
from vertexai.preview.generative_models import(
    GenerativeModel,
    )

PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION"

vertexai.init(project=PROJECT_ID, location=LOCATION)

tuned_model = GenerativeModel(f"projects/{PROJECT_ID}/locations/{LOCATION}/endpoints/ENDPOINT_ID")

# Disable logging
tuned_model.set_request_response_logging_config(
    enabled=False,
    sampling_rate=1.0,
    bigquery_destination="bq://PROJECT_ID.DATASET_NAME.TABLE_NAME"
    )

‫API בארכיטקטורת REST

{
"predictRequestResponseLoggingConfig": {
  "enabled": false
}
}

סכימת טבלת הרישום ביומן

ב-BigQuery, היומנים מתועדים באמצעות הסכימה הבאה:

שם השדה סוג הערות
endpoint מחרוזת שם המשאב של נקודת הקצה (endpoint) שאליה נפרס המודל המכוונן.
deployed_model_id מחרוזת מזהה המודל שנפרס בנקודת קצה.
logging_time TIMESTAMP הזמן שבו מתבצע הרישום ביומן. זה בערך הזמן שבו התשובה מוחזרת.
request_id NUMERIC מזהה הבקשה שנוצר אוטומטית כמספר שלם על סמך בקשת ה-API.
request_payload מחרוזת השדה הזה נכלל לצורך רישום ביומן של מודל השותף ולצורך תאימות לדורות קודמים עם יומן הבקשות והתגובות של נקודת הקצה ב-Agent Platform.
response_payload מחרוזת השדה הזה נכלל לצורך רישום ביומן של מודל השותף ולצורך תאימות לדורות קודמים עם יומן הבקשות והתגובות של נקודת הקצה ב-Agent Platform.
מודל מחרוזת שם המשאב של המודל.
model_version מחרוזת גרסת המודל. במודלים של Gemini, בדרך כלל מוגדרת כאן האפשרות "default".
api_method מחרוזת ‫generateContent, ‏ streamGenerateContent, ‏ rawPredict, ‏ streamRawPredict
full_request JSON הGenerateContentRequest המלא.
full_response JSON הGenerateContentResponse המלא.
מטא-נתונים JSON כל המטא-נתונים של הקריאה, כולל זמן האחזור של הבקשה.
otel_log JSON יומנים בפורמט סכימה של OpenTelemetry. האפשרות הזו זמינה רק אם otel_logging מופעל בהגדרות הרישום ביומן.

שימו לב שצמדי בקשה-תגובה שגדולים ממגבלת השורות של 10MB ב-write API של BigQuery לא מתועדים.

שיתוף בקשות ותגובות עם שותפי MaaS

במודלים מסוימים של AI מתקדם, חלק מהשותפים של MaaS דורשים שיומן של הנחיות ותשובות ישותף באופן חסין לחבלות עם צוותי המהימנות והבטיחות שלהם, כדי שהם יוכלו לעקוב אחרי ניצול לרעה פוטנציאלי. לדוגמה, השימוש ב-Anthropic Advanced AI כפוף לסעיף ו' בתנאים הספציפיים לשירות של Anthropic. בזמן שהתכונה dataSharingEnabledProvider פעילה, בקשות ותגובות שמתועדות ביומן במסגרת הנספח בנושא בטיחות מתקדמת ב-AI ישותפו עם השותף ב-MaaS בזמן אמת.

כדי להפעיל שיתוף חסין לחבלות של יומן הבקשות והתגובות, אפשר להשתמש ב-API של setPublisherModelConfig, כמו שמוסבר בקטעים הבאים.

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

בטבלה הבאה מפורטים השותפים והמודלים של MaaS שתומכים בשיתוף של בקשות ותשובות:

שותף MaaS נתמך מודלים נתמכים
Anthropic
  • Claude Mythos Preview
  • Claude Mythos 5
  • ‫Claude Fable 5 של Anthropic ב-Google Cloud

השותף של MaaS והמודל חייבים להיות תואמים. אפשר לשתף את יומן הבקשות והתגובות רק עם שותף ה-MaaS שפרסם את המודל.

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

כדי להפעיל את שיתוף הנתונים, Google צריכה לקבל הסכמה לנספח בנושא בטיחות מתקדמת ב-AI בפרויקט הזה. מידע נוסף על הנספח זמין במאמר אבטחה מתקדמת ב-AI.

כדי להשתמש בשיתוף של יומני הבקשות והתגובות, לא צריך להפעיל את הרישום של יומני הבקשות והתגובות ב-BigQuery.

מגבלות

כברירת מחדל, פרויקטים שמוגנים באמצעות VPC Service Controls לא יכולים לשתף נתונים עם שותפי MaaS. אי אפשר להגדיר כלל תעבורת נתונים יוצאת (egress) ב-VPC Service Controls. כדי להפעיל שיתוף נתונים בפרויקט שמוגן באמצעות VPC Service Controls, צריך לשלוח בקשת תמיכה.

הפעלת שיתוף נתונים

מבצעים את הפעולות הבאות:

‫API בארכיטקטורת REST

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

  • ‫ENDPOINT_PREFIX: הקידומת המתאימה למיקום של נקודת הקצה של המודל. משתמשים בערכים הבאים:
    • לנקודת הקצה global, משתמשים ב-aiplatform.
    • לנקודות קצה במספר אזורים כמו us או eu, משתמשים ב-aiplatform.LOCATION.rep
    • לנקודות קצה אזוריות כמו us-central1, משתמשים ב-LOCATION-aiplatform.
  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של נקודת הקצה של המודל. לדוגמה, global, us, eu או us-central1.
  • PUBLISHER: שם מפיץ המודל, באותיות קטנות. לדוגמה, anthropic.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה, claude-fable-5.
  • ‫MAAS_PARTNER: שם מפיץ המודל, באותיות רישיות. הערך של MaaS Partner חייב להיות הגרסה באותיות רישיות של MODEL, שמתואר למעלה. לדוגמה, ANTHROPIC.

שיטת ה-HTTP וכתובת ה-URL:

POST https://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig

גוף בקשת JSON:

{
  "publisherModelConfig": {
    "dataSharingEnabledProvider": "ANTHROPIC"
  }
}

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

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://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig"

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://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig" | Select-Object -Expand Content

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

אחזור הגדרות השיתוף

מבצעים את הפעולות הבאות:

‫API בארכיטקטורת REST

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

  • ‫ENDPOINT_PREFIX: הקידומת המתאימה למיקום של נקודת הקצה של המודל. משתמשים בערכים הבאים:
    • לנקודת הקצה global, משתמשים ב-aiplatform.
    • לנקודות קצה במספר אזורים כמו us או eu, משתמשים ב-aiplatform.LOCATION.rep
    • לנקודות קצה אזוריות כמו us-central1, משתמשים ב-LOCATION-aiplatform.
  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של נקודת הקצה של המודל. לדוגמה, global, us, eu או us-central1.
  • PUBLISHER: שם מפיץ המודל, באותיות קטנות. לדוגמה, anthropic.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה, claude-fable-5.

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

GET https://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig

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

curl

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

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig"

PowerShell

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

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:fetchPublisherModelConfig" | Select-Object -Expand Content

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

{
  "loggingConfig": {},
  "dataSharingEnabledProvider": "ANTHROPIC"
}

השבתה של שיתוף הנתונים

מבצעים את הפעולות הבאות:

‫API בארכיטקטורת REST

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

  • ‫ENDPOINT_PREFIX: הקידומת המתאימה למיקום של נקודת הקצה של המודל. משתמשים בערכים הבאים:
    • לנקודת הקצה global, משתמשים ב-aiplatform.
    • לנקודות קצה במספר אזורים כמו us או eu, משתמשים ב-aiplatform.LOCATION.rep
    • לנקודות קצה אזוריות כמו us-central1, משתמשים ב-LOCATION-aiplatform.
  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של נקודת הקצה של המודל. לדוגמה, global, us, eu או us-central1.
  • PUBLISHER: שם מפיץ המודל, באותיות קטנות. לדוגמה, anthropic.
  • ‫MODEL: השם של מודל הבסיס. לדוגמה, claude-fable-5.

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

POST https://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig

גוף בקשת JSON:

{
  "publisherModelConfig": {
    "dataSharingEnabledProvider": "MODEL_PROVIDER_UNSPECIFIED"
  }
}

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

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://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig"

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://ENDPOINT_PREFIX.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/PUBLISHER/models/MODEL:setPublisherModelConfig" | Select-Object -Expand Content

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

מניעת בקשות לשיתוף נתונים

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

  • אכיפת אילוץ בהתאמה אישית של שירות מדיניות הארגון: יוצרים ואוכפים אילוץ בהתאמה אישית של שירות מדיניות הארגון ב-aiplatform.googleapis.com/Endpoint, שאוסר על הגדרת dataSharingEnabledProvider לכל ספק מודל שותף. מידע נוסף מופיע במאמר אכיפת אילוץ בהתאמה אישית כדי למנוע שיתוף נתונים.

  • יצירת גבולות גזרה לשירות ב-VPC Service Controls: יוצרים גבולות גזרה לשירות ב-VPC Service Controls שכוללים את הפרויקט ואת aiplatform.googleapis.com כשירות מוגבל. כברירת מחדל, אי אפשר לשתף נתונים מפרויקטים שמוגנים באמצעות VPC Service Controls עם מודלים של שותפים.

  • השבתת הגישה למודלים של Model Garden: השביתו את הגישה למודלים של Model Garden שתומכים בשיתוף נתונים.

  • אכיפת הרשאות מינימליות: הגבילו את ההרשאה aiplatform.endpoints.setPublisherModelConfig כדי למנוע ממשתמשים לא מורשים להפעיל רישום ביומן או שיתוף של יומנים.

אכיפת אילוץ בהתאמה אישית כדי למנוע שיתוף נתונים

כדי ליצור ולאכוף אילוץ מותאם אישית של שירות מדיניות הארגון שמונע שיתוף של יומני בקשות ותגובות עם ספקי מודלים של שותפים:

  1. יוצרים קובץ YAML של אילוץ בהתאמה אישית בשם prevent_data_sharing.yaml, בדומה לדוגמה הבאה.

    name: organizations/ORGANIZATION_ID/customConstraints/custom.denyPartnerModelDataSharing
    resourceTypes:
    
    - aiplatform.googleapis.com/Endpoint
    methodTypes:
    
    - CREATE
    - UPDATE
    condition: "has(resource.publisherModelConfig.dataSharingEnabledProvider)"
    actionType: DENY
    displayName: Prevent partner model data sharing
    description: Prohibits enabling request and response log sharing with any partner model provider.
    

    מחליפים את ORGANIZATION_ID במזהה הארגון ב- Cloud de Confiance .

  2. יוצרים את האילוץ המותאם אישית באמצעות הפקודה gcloud org-policies:

    gcloud org-policies set-custom-constraint prevent_data_sharing.yaml
    
  3. כדי לאכוף את המדיניות, יוצרים קובץ לאכיפת מדיניות הארגון בשם enforce_policy.yaml, בדומה לדוגמה הבאה:

    name: organizations/ORGANIZATION_ID/policies/custom.denyPartnerModelDataSharing
    spec:
      rules:
    
      - enforce: true
    
  4. מחילים את מדיניות הארגון:

    gcloud org-policies set-policy enforce_policy.yaml
    

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