הגדרת הרישום ביומן של Gemini Code Assist Standard ו-Enterprise

במאמר הזה מוסבר איך להגדיר רישום ביומן של Gemini Code Assist Standard ו-Gemini Code Assist Enterprise בפרויקט באמצעות Google API Console או API.

מגבלות

הרישום של נתוני יומן ב-Gemini Standard וב-Gemini Enterprise ב-Google Cloud מוגבל לאינטראקציות של משתמשים עם Gemini Code Assist בסביבת הפיתוח המשולבת (IDE).

בנוסף, Gemini for Google Cloud לא מתעד נתונים של Gemini Code Assist Standard ו-Enterprise אם המשתמש השבית את הטלמטריה של VS Code.

לפני שמתחילים

מוודאים שהפרויקט ב-Google Cloud משויך לחשבון לחיוב.

(אופציונלי) מתן הרשאות IAM

כדי להגדיר את הרישום ביומן של Gemini Code Assist Standard ו-Enterprise, אתם צריכים הרשאות ספציפיות לניהול זהויות והרשאות גישה (IAM), שמפורטות בקטעים הבאים. חשוב לוודא שההרשאות האלה נוספו לתפקידי IAM בהתאמה אישית.

לחלופין, אפשר להעניק את התפקיד המוגדר מראש ב-IAM‏ Gemini for Google Cloud Settings Admin (roles/cloudaicompanion.settingsAdmin), שכולל את כל ההרשאות הנדרשות לעבודה עם כל הגדרות האדמין של Gemini for Google Cloud.

הגדרת רישום ביומן של Gemini Code Assist

בקטעים הבאים מפורטים השלבים שנדרשים כדי להפעיל את האיסוף והאחסון של הפעילות ב-Gemini Code Assist Standard ו-Enterprise ב-Cloud Logging, כולל:

  • יומני הנחיות ותשובות של Gemini Code Assist Standard ו-Enterprise, כמו קלט משתמש, מידע הקשרי ותשובות.

  • יומני מטא-נתונים של Gemini Code Assist Standard ו-Gemini Code Assist Enterprise, כמו מטא-נתוני טלמטריה ושורות קוד שאושרו על ידי המשתמש.

פרטים נוספים על שני סוגי היומנים זמינים במאמר צפייה ביומני Gemini.

הפעלת רישום ביומן עבור Gemini Code Assist

בוחרים באחת מהאפשרויות הבאות:

המסוף

  1. מוודאים שהפעלתם את Cloud Logging API בפרויקט.

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

    • instance.queryEffectiveSetting
    • instance.queryEffectiveSettingBindings
    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  3. במסוף API, עוברים לדף Admin for Gemini.

    כניסה לדף Gemini for Google Cloud

    הדף Gemini for Google Cloud נטען.

  4. בתפריט הניווט הימני, לוחצים על הגדרות.

    הדף הגדרות נטען.

  5. (אופציונלי) לוחצים על Logging for Code Assist metadata (רישום ביומן של מטא-נתונים של Code Assist) כדי לתעד את המטא-נתונים שנוצרו על ידי משתמשים ב-Gemini Code Assist Standard וב-Gemini Code Assist Enterprise בפרויקט.

  6. (אופציונלי) לוחצים על Logging for Code Assist prompts and responses (רישום ביומן של הנחיות ותשובות ב-Code Assist) כדי לתעד את ההנחיות והתשובות שנוצרו על ידי משתמשים ב-Gemini Code Assist Standard וב-Gemini Code Assist Enterprise בפרויקט.

  7. לוחצים על Save Changes.

API

כדי להפעיל את הרישום ביומן עבור Gemini Code Assist Standard ו-Enterprise, משתמשים במשאב loggingSettings כדי להגדיר את הגדרות הרישום ביומן הרצויות, ובמשאב loggingSettings.settingBindings כדי לקשר את ההגדרות לפרויקט:

  1. מוודאים שהפעלתם את Cloud Logging API בפרויקט.

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

    • instance.queryEffectiveSetting
    • instance.queryEffectiveSettingBindings
    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  3. יוצרים את ההגדרה ואת הערך הספציפי להגדרה:

    1. מקבלים את הטוקן:

      TOKEN=$(gcloud auth print-access-token)
      
  4. הפעלת יומנים של Gemini Code Assist Standard ו-Enterprise. יומני המשתמשים ויומני המטא-נתונים מופעלים באמצעות השדות log_prompts_and_responses ו-log_metadata, בהתאמה. אם לא רוצים להפעיל אחד מהשדות, לא כוללים אותו בבקשה.

    1. מריצים את הפקודה הבאה כדי ליצור את ההגדרה:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_prompts_and_responses": true,
          "log_metadata": true,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=LOGS_SETTING_ID"
      

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

      • CONTAINER_PROJECT_NAME: מזינים את מזהה הפרויקט שבו מאוחסן משאב הקישור. זהו פרויקט האב של הקישור.
      • LOGS_SETTING_ID: מזינים שם ייחודי להגדרה, כמו gcalm.

      אם הפקודה מצליחה, היא מחזירה גוף תגובה שבו הערכים של log_prompts_and_responses ו-log_metadata מוגדרים ל-true:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_prompts_and_responses": true,
        "log_metadata": true
      }
      
    2. מריצים את הפקודה הבאה כדי ליצור את הגדרת הקישור של יומני Gemini Code Assist Standard ו-Enterprise:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "target": "projects/TARGET_PROJECT_NAME"
          }' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID/settingBindings?setting_binding_id=LOGS_BINDING_ID"
      

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

    • TARGET_PROJECT_NAME: מזינים את פרויקט היעד שאליו צריך לקשר את הקישור. לרוב, זה אותו פרויקט כמו פרויקט המאגר. עם זאת, אפשר לקשר הגדרה לכמה פרויקטים כדי שלא יהיה צורך לשכפל את משאב ההגדרה.
    • LOGS_BINDING_ID: משתמשים באותו LOGS_SETTING_ID שבו השתמשתם כשיצרתם את ההגדרה, אבל מוסיפים לו את b1. לדוגמה, משתמשים ב-gcalmb1.

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

    {
      "name": "projects/<var>CONTAINER_PROJECT_NAME</var>/locations/global/operations/operation-1737646069712-62c6140bb04bb-49261230-43701daf",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata",
        "createTime": "2025-01-23T15:27:50.076075570Z",
        "target": "projects/<var>TARGET_PROJECT_NAME</var>/locations/global/loggingSettings/<var>LOGS_SETTING_ID</var>/settingBindings/<var>LOGS_BINDING_ID</var>",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
    }
    

השבתת הרישום ביומן עבור Gemini Code Assist

בוחרים באחת מהאפשרויות הבאות:

המסוף

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

    • instance.queryEffectiveSetting
    • instance.queryEffectiveSettingBindings
    • loggingSettings.delete
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsDelete
    • cloudaicompanion.settingBindings.loggingSettingsUse
    • cloudaicompanion.instances.queryEffectiveSettingBindings
  2. במסוף API, עוברים לדף Admin for Gemini.

    כניסה לדף Gemini for Google Cloud

    הדף Gemini for Google Cloud נטען.

  3. בתפריט הניווט הימני, לוחצים על הגדרות.

    הדף הגדרות נטען.

  4. לוחצים על Logging for Code Assist metadata (רישום ביומן של מטא-נתונים של Code Assist) כדי להפסיק את הרישום של המטא-נתונים משימוש ב-Gemini Code Assist Standard וב-Gemini Code Assist Enterprise בפרויקט.

  5. לוחצים על Save Changes.

API

כדי להשבית את הרישום ביומן עבור Gemini Code Assist Standard ו-Enterprise, משתמשים בשיטה loggingSetting.

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

    • instance.queryEffectiveSetting
    • instance.queryEffectiveSettingBindings
    • loggingSettings.create
    • loggingSettings.list
    • loggingSettings.update
    • loggingSettings.get
    • cloudaicompanion.instances.loggingSettings.use
    • cloudaicompanion.instances.queryEffectiveSetting
    • settingBindings.loggingSettingsList
    • settingBindings.loggingSettingsGet
    • settingBindings.loggingSettingsUpdate
    • settingBindings.loggingSettingsCreate
    • serviceusage.services.enable
  2. יוצרים את ההגדרה ואת הערך הספציפי להגדרה:

    1. מקבלים את הטוקן:

      TOKEN=$(gcloud auth print-access-token)
      
  3. מריצים את הפקודה הבאה כדי להשבית את ההגדרות של Gemini Code Assist Standard ו-Enterprise:

      curl -X POST \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
          "log_prompts_and_responses": false,
          "log_metadata": false,
          } ' \
        "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_metadata_id=LOGS_SETTING_ID"
    

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

    • CONTAINER_PROJECT_NAME: מזינים את מזהה פרויקט האב.
    • LOGS_SETTING_ID: מזינים את השם של ההגדרה הקיימת, למשל gcalm.

      אם הפקודה מצליחה, היא מחזירה גוף תגובה שבו הערכים של log_prompts_and_responses ו-log_metadata מוגדרים ל-false:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_prompts_and_responses": false,
        "log_metadata": false
      }
      

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