پیکربندی 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 logging، می‌توانید به Gemini برای Google Cloud Settings Admin ( roles/cloudaicompanion.settingsAdmin ) نقش از پیش تعریف‌شده مدیریت هویت و دسترسی، که شامل تمام مجوزهای لازم برای کار با تمام تنظیمات سرپرست Gemini برای Google Cloud است، بدهید .

از طرف دیگر، می‌توانید هر نقش سفارشی IAM را به‌روزرسانی کنید. شما باید مجوزهای IAM خاصی داشته باشید که در بخش های زیر به تفصیل توضیح داده شده است.

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

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

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

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

    • 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
      }
      

بعدش چی