پیکربندی Gemini Code Assist Standard and Enterprise logging

این سند نحوه پیکربندی Gemini Code Assist Standard و ثبت گزارش سازمانی برای یک پروژه را با استفاده از Google API Console یا یک API توضیح می‌دهد.

محدودیت ها

ضبط داده‌های گزارش‌های گزارش‌شده Gemini Standard and Enterprise در Google Cloud به تعاملات کاربر با Gemini Code Assist در IDE محدود می‌شود.

علاوه بر این، اگر کاربر VS Code تله‌متری خاموش باشد، Gemini برای Google Cloud داده‌های Gemini Code Assist Standard و Enterprise را ثبت نمی‌کند.

قبل از شروع

مطمئن شوید که پروژه Google Cloud شما به یک حساب صورت‌حساب متصل است.

(اختیاری) مجوزهای IAM را اعطا کنید

برای پیکربندی Gemini Code Assist Standard و Enterprise Loging، باید مجوزهای مدیریت هویت و دسترسی خاصی داشته باشید که در بخش های زیر به تفصیل توضیح داده شده است. مطمئن شوید که این مجوزها به نقش‌های سفارشی IAM اضافه شده‌اند.

همچنین، می‌توانید نقش از پیش تعریف‌شده IAM را به Gemini for Google Cloud Settings Admin ( roles/cloudaicompanion.settingsAdmin ) اعطا کنید ، که شامل تمام مجوزهای لازم برای کار با همه تنظیمات سرپرست Gemini برای Google Cloud است.

(اختیاری) مجوزها را به تنظیمات و اهداف متصل کنید

اگر تنظیمات Gemini Code Assist Standard و Enterprise administrator را در Google API Console پیکربندی می‌کنید، می‌توانید از این بخش صرفنظر کنید.

برای پیکربندی Gemini Code Assist Standard و تنظیمات سرپرست سازمانی با Gemini for Google Cloud API ، ابتدا باید تنظیماتی ایجاد کنید، سپس پیوندهایی را ایجاد کنید تا آن تنظیمات و اهداف (مانند نمونه، موضوع یا پروژه‌ها) را برای محصولات خاص (مانند Gemini Cloud Assist یا Gemini Code Assist) "پیوند" کنید.

تمام مجوزهای ایجاد و به روز رسانی تنظیمات در سطح پروژه است.

پیکربندی ورود به سیستم کد Gemini Code Assist

بخش‌های زیر مراحل لازم برای فعال کردن جمع‌آوری و ذخیره‌سازی استاندارد Gemini Code Assist و فعالیت Enterprise در Cloud Logging را ارائه می‌کنند، از جمله:

  • Gemini Code Assist Standard and Enterprise درخواست‌ها و گزارش‌های پاسخ، مانند ورودی کاربر، اطلاعات متنی، و پاسخ‌ها.

  • گزارش‌های فراداده استاندارد و Enterprise Code Assist Gemini، مانند ابرداده‌های دورسنجی و خطوط کد پذیرفته شده توسط کاربر.

برای جزئیات بیشتر در مورد هر دو نوع گزارش، مشاهده سیاهههای مربوط به Gemini را ببینید.

ورود به سیستم Gemini Code Assist را فعال کنید

یکی از گزینه های زیر را انتخاب کنید:

کنسول

  1. مطمئن شوید که Cloud Logging API را در پروژه فعال کرده اید.

  2. اطمینان حاصل کنید که مجوزهای مدیریت هویت و دسترسی زیر را در پروژه مالک اشتراک دارید:

    • 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 بروید.

    برای Google Cloud به Gemini بروید

    صفحه Gemini for Google Cloud بارگیری می شود.

  4. روی تنظیمات در منوی ناوبری سمت چپ کلیک کنید.

    صفحه تنظیمات بارگیری می شود.

  5. (اختیاری) روی Logging for Code Assist metadata کلیک کنید تا ابرداده های تولید شده توسط کاربران Gemini Code Assist Standard و Enterprise در پروژه ضبط شود.

  6. (اختیاری) روی Logging for Code Assist prompt ها و پاسخ ها کلیک کنید تا درخواست ها و پاسخ های تولید شده توسط کاربران Gemini Code Assist Standard و Enterprise در پروژه ثبت شود.

  7. روی ذخیره تغییرات کلیک کنید.

API

برای فعال کردن ورود به سیستم Gemini Code Assist Standard و Enterprise، از روش loggingSetting استفاده کنید.

  1. مطمئن شوید که Cloud Logging API را در پروژه فعال کرده اید.

  2. اطمینان حاصل کنید که مجوزهای مدیریت هویت و دسترسی زیر را در پروژه مالک اشتراک دارید:

    • 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. گزارش‌های فراداده استاندارد و Enterprise Code Assist Gemini را فعال کنید.

    1. برای ایجاد تنظیمات دستور زیر را اجرا کنید:

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

      موارد زیر را جایگزین کنید:

      • CONTAINER_PROJECT_NAME : شناسه پروژه والد را وارد کنید.
      • SETTING_ID : یک نام تنظیم منحصر به فرد، مانند gcalm1 برای Gemini Code Assist log metadata وارد کنید.

      اگر دستور موفق شود، بدنه پاسخی را برمی‌گرداند که مجموعه log_metadata را روی true نشان می‌دهد:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_metadata": true
      }
      
    2. دستور زیر را برای ایجاد Binding تنظیم گزارش‌های ابرداده‌های Enterprise و استاندارد Gemini Code Assist اجرا کنید:

      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/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
      

    موارد زیر را جایگزین کنید:

    • TARGET_PROJECT_NAME : پروژه هدفی را که تنظیمات باید روی آن اعمال شود را وارد کنید.
    • SETTING_ID : هنگام ایجاد تنظیمات از همان SETTING_ID استفاده کنید، اما آن را با b1 اضافه کنید. به عنوان مثال، از gcalmb1 برای Gemini Code Assist log metadata استفاده کنید.

    در صورت موفقیت آمیز بودن دستور، فراداده عملیات را در قالب زیر برمی گرداند:

    {
      "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>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
    }
    
  5. گزارش‌های کاربری استاندارد و Enterprise Code Assist Gemini را فعال کنید.

    1. برای ایجاد تنظیمات دستور زیر را اجرا کنید:

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

      موارد زیر را جایگزین کنید:

      • CONTAINER_PROJECT_NAME : شناسه پروژه والد را وارد کنید.
      • SETTING_ID : یک نام تنظیم منحصربه‌فرد، مانند gcapar1 برای Gemini Code Assist prompts and responses وارد کنید.

      اگر دستور موفق شود، بدنه پاسخی را برمی‌گرداند که log_prompts_and_responses را روی true نشان می‌دهد:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_prompts_and_responses": true
      }
      
    2. دستور زیر را برای ایجاد Binding تنظیم Logs User Standard و Enterprise Code Assist Gemini اجرا کنید:

      curl \
        -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/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
      

    موارد زیر را جایگزین کنید:

    • TARGET_PROJECT_NAME : پروژه هدفی را که تنظیمات باید روی آن اعمال شود را وارد کنید.
    • SETTING_ID : هنگام ایجاد تنظیمات از همان SETTING_ID استفاده کنید، اما آن را با b1 اضافه کنید. برای مثال، از gcaparb1 برای Gemini Code Assist prompts and responses استفاده کنید.

    در صورت موفقیت آمیز بودن دستور، فراداده عملیات را در قالب زیر برمی گرداند:

    {
      "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>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
    }
    

غیرفعال کردن گزارش برای Gemini Code Assist

یکی از گزینه های زیر را انتخاب کنید:

کنسول

  1. اطمینان حاصل کنید که مجوزهای مدیریت هویت و دسترسی زیر را در پروژه مالک اشتراک دارید:

    • 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 بروید.

    برای Google Cloud به Gemini بروید

    صفحه Gemini for Google Cloud بارگیری می شود.

  3. روی تنظیمات در منوی ناوبری سمت چپ کلیک کنید.

    صفحه تنظیمات بارگیری می شود.

  4. روی Logging for Code Assist metadata کلیک کنید تا ضبط فراداده از استفاده Gemini Code Assist Standard و Enterprise در پروژه خاموش شود.

  5. روی ذخیره تغییرات کلیک کنید.

API

برای فعال کردن ورود به سیستم Gemini Code Assist Standard و Enterprise، از روش loggingSetting استفاده کنید.

  1. اطمینان حاصل کنید که مجوزهای مدیریت هویت و دسترسی زیر را در پروژه مالک اشتراک دارید:

    • 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 و Enterprise اجرا کنید:

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

    موارد زیر را جایگزین کنید:

    • CONTAINER_PROJECT_NAME : شناسه پروژه والد را وارد کنید.
    • SETTING_ID : نام تنظیم موجود را وارد کنید، مانند gcalm1 برای Gemini Code Assist log metadata .

      اگر دستور موفق شود، بدنه پاسخی را برمی‌گرداند که log_metadata را روی false نشان می‌دهد:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "log_metadata": false
      }
      
  4. برای غیرفعال کردن تنظیمات Gemini Code Assist Standard and Enterprise user logs دستور زیر را اجرا کنید:

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

    موارد زیر را جایگزین کنید:

    • CONTAINER_PROJECT_NAME : شناسه پروژه والد را وارد کنید.
    • SETTING_ID : نام تنظیمات موجود را وارد کنید، مانند gcapar1 برای Gemini Code Assist prompts and responses .

      اگر دستور موفق شود، بدنه پاسخی را برمی‌گرداند که log_prompts_and_responses را روی false نشان می‌دهد:

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

بعدش چی