پیکربندی 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

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

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

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

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

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

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

کنسول

  1. بررسی کنید که API Cloud Logging را در پروژه فعال کرده اید.

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

    برای 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 and Enterprise، از منبع loggingSettings برای تعریف تنظیمات گزارش مورد نظر خود استفاده کنید و از منبع loggingSettings.settingBindings برای اتصال تنظیمات به یک پروژه استفاده کنید:

  1. بررسی کنید که API Cloud Logging را در پروژه فعال کرده اید.

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

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

    برای 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. بررسی کنید که مجوزهای مدیریت هویت و دسترسی زیر را در پروژه مالک اشتراک دارید:

    • 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 logs دستور زیر را اجرا کنید:

      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
      }
      

بعدش چی