GitHub में, कोड से जुड़ी सहायता देने वाली Gemini की सुविधा को पसंद के मुताबिक बनाना

किसी रिपॉज़िटरी के रूट में मौजूद .gemini/ फ़ोल्डर में config.yaml फ़ाइल जोड़कर, अलग-अलग रिपॉज़िटरी के लिए GitHub पर Gemini Code Assist के काम करने के तरीके में बदलाव किया जा सकता है. config.yaml फ़ाइल में कॉन्फ़िगर की जा सकने वाली कई सुविधाएं होती हैं. इन्हें चालू या बंद किया जा सकता है. GitHub पर Gemini Code Assist की कुछ सुविधाओं के लिए, एक से ज़्यादा रिपॉज़िटरी में ग्रुप कॉन्फ़िगरेशन किया जा सकता है.

Gemini Code Assist, styleguide.md फ़ोल्डर में styleguide.md फ़ाइल जोड़ने की सुविधा भी देता है. इस फ़ाइल में, Gemini Code Assist के लिए कुछ खास नियम दिए जाते हैं. इन नियमों के हिसाब से, Gemini Code Assist कोड की समीक्षा करता है..gemini/ Gemini Code Assist के लिए स्टाइल गाइड के बारे में ज़्यादा जानने के लिए, कोड की समीक्षा करने के लिए स्टाइल गाइड देखें.

कॉन्फ़िगरेशन फ़ील्ड

इस सेक्शन में, GitHub पर Gemini Code Assist में मौजूद, पसंद के मुताबिक बनाए जा सकने वाले कुछ फ़ील्ड के बारे में बताया गया है. फ़ील्ड की पूरी सूची देखने के लिए, config.yaml स्कीमा देखें.

  • code_review: comment_severity_threshold: इस फ़ील्ड से, कम से कम उस गंभीरता का लेवल सेट किया जाता है जिसके लिए Gemini Code Assist, टिप्पणियां पोस्ट करता है. उदाहरण के लिए, अगर आपने code_review: comment_severity_threshold: HIGH सेट किया है, तो Gemini Code Assist उन समस्याओं के लिए पुल अनुरोध की टिप्पणियां नहीं करेगा जिन्हें वह LOW या MEDIUM गंभीरता की समस्या मानता है. जैसे, मामूली रीफ़ैक्टरिंग. Gemini Code Assist, किसी टिप्पणी की गंभीरता का पता लगाता है. इसके लिए, वह इस बात पर ध्यान देता है कि किस तरह की समस्या पर विचार किया जा रहा है और वह कितनी अहम है. साथ ही, वह यह भी देखता है कि आपके कस्टम स्टाइल गाइड का उल्लंघन हुआ है या नहीं. आम तौर पर, उल्लंघन होने पर गंभीरता का थ्रेशोल्ड पूरा हो जाता है या उससे ज़्यादा हो जाता है.

  • ignore_patterns: इस फ़ील्ड में ग्लोब पैटर्न का इस्तेमाल किया जाता है. रिपॉज़िटरी के साथ इंटरैक्ट करते समय, Gemini Code Assist उन फ़ाइलों को अनदेखा करता है जो इस सूची में दिए गए किसी भी पैटर्न से मेल खाती हैं.

  • memory_config: यह फ़ील्ड तब लागू होता है, जब आपने पहले से ही एक से ज़्यादा रिपॉज़िटरी के लिए, जवाब की क्वालिटी को बेहतर बनाने की सुविधा चालू की हो. एक से ज़्यादा रिपॉज़िटरी के लिए, जवाब की बेहतर क्वालिटी वाली सुविधा चालू करने पर, ग्रुप में शामिल किसी रिपॉज़िटरी के लिए memory_config: disabled: true सेट किया जा सकता है. इससे उस रिपॉज़िटरी के लिए यह सुविधा बंद हो जाती है.

config.yaml स्कीमा

नीचे दिया गया कोड स्निपेट, config.yaml फ़ाइल का स्कीमा है. इसमें कॉन्फ़िगरेशन के सभी संभावित विकल्पों और उनकी मान्य वैल्यू के बारे में बताया गया है:

$schema: "http://json-schema.org/draft-07/schema#"
title: RepoConfig
description: Configuration for Gemini Code Assist on a repository. All fields are optional and have default values.
type: object
properties:
  have_fun:
    type: boolean
    description: Enables fun features such as a poem in the initial pull request summary. Default: false.
  ignore_patterns:
    type: array
    items:
      type: string
    description: A list of glob patterns for files and directories that Gemini Code Assist should ignore. Default: [].
  memory_config:
    type: object
    description: Configuration for persistent memory, which is used to improve responses.
    properties:
      disabled:
        type: boolean
        description: Whether to disable persistent memory for this specific repository. Default: false.
  code_review:
    type: object
    description: Configuration for code reviews. All fields are optional and have default values.
    properties:
      disable:
        type: boolean
        description: Disables Gemini from acting on pull requests. Default: false.
      comment_severity_threshold:
        type: string
        enum:
          - LOW
          - MEDIUM
          - HIGH
          - CRITICAL
        description: The minimum severity of review comments to consider. Default: MEDIUM.
      max_review_comments:
        type: integer
        format: int64
        description: The maximum number of review comments to consider. Use -1 for unlimited. Default: -1.
      pull_request_opened:
        type: object
        description: Configuration for pull request opened events. All fields are optional and have default values.
        properties:
          help:
            type: boolean
            description: Posts a help message on pull request open. Default: false.
          summary:
            type: boolean
            description: Posts a pull request summary on the pull request open. Default: true.
          code_review:
            type: boolean
            description: Posts a code review on pull request open. Default: true.
          include_drafts:
            type: boolean
            description: Enables agent functionality on draft pull requests. Default: true.

उदाहरण: config.yaml

यहां दिए गए कोड स्निपेट में, config.yaml फ़ाइल का उदाहरण दिया गया है. इस उदाहरण में, हर प्रॉपर्टी को Gemini Code Assist की ओर से इस्तेमाल की जाने वाली डिफ़ॉल्ट वैल्यू पर सेट किया गया है. इस स्निपेट का इस्तेमाल, अपनी config.yaml फ़ाइल बनाने के लिए टेंप्लेट के तौर पर किया जा सकता है:

have_fun: false
memory_config:
  disabled: false
code_review:
  disable: false
  comment_severity_threshold: MEDIUM
  max_review_comments: -1
  pull_request_opened:
    help: false
    summary: true
    code_review: true
    include_drafts: true
ignore_patterns: []

एक से ज़्यादा रिपॉज़िटरी के कॉन्फ़िगरेशन मैनेज करना

GitHub पर Gemini Code Assist की कुछ सुविधाओं को एक से ज़्यादा रिपॉज़िटरी में मैनेज किया जा सकता है:

  • अगर आपके पास उपभोक्ता वर्शन है, तो आपके पास खाते से जुड़ी सभी रिपॉज़िटरी के लिए कुछ सेटिंग टॉगल करने का विकल्प होता है.

  • अगर आपके पास Enterprise वर्शन है, तो Developer Connect कनेक्शन से ग्रुप की गई कई रिपॉज़िटरी के लिए, कुछ सेटिंग टॉगल की जा सकती हैं. ऐसा करने पर, Google Cloud Console के ज़रिए उनकी सभी सेटिंग मैनेज की जाती हैं.

अगर किसी रिपॉज़िटरी को किसी ग्रुप के हिस्से के तौर पर मैनेज किया जाता है, लेकिन उसके पास अपना config.yaml भी है, तो रिपॉज़िटरी की config.yaml सेटिंग, ग्रुप की सेटिंग को बदल देती हैं.

सेटिंग के खास व्यवहार और अपवादों के लिए, config.yaml स्कीमा देखें.

यहां एक कॉन्फ़िगरेशन को कई रिपॉज़िटरी में कंट्रोल करने का तरीका बताया गया है. इन चरणों में यह माना गया है कि आपने पहले से ही GitHub पर Gemini Code Assist सेट अप किया हुआ है.

उपभोक्ता

  1. Gemini Code Assist में, सेटिंग पेज पर जाएं.

    सेटिंग पर जाएं

  2. अगर कहा जाए, तो Log in with GitHub पर क्लिक करें. इसके बाद, Gemini Code Assist में GitHub में साइन इन करने के लिए दिए गए निर्देशों का पालन करें.

  3. Gemini पेज पर, वह खाता चुनें जिसका आपको इस्तेमाल करना है. इसके बाद, सेवा की शर्तें पढ़ें और जारी रखें पर क्लिक करें.

  4. फ़्री एजेंट पेज पर, ज़रूरत के हिसाब से सेटिंग अपडेट करें.

  5. सेव करें पर क्लिक करें.

Enterprise

  1. Google Cloud Console में, Gemini Code Assist Agents & Tools पेज पर जाएं.

    एजेंट और टूल पर जाएं

  2. एजेंट सेक्शन में, कोड असिस्ट सोर्स कोड मैनेजमेंट कार्ड ढूंढें. इसके बाद, ऐडवांस पर क्लिक करें.

    Code Assist की सोर्स कोड मैनेजमेंट सुविधा में बदलाव करें पैनल खुलता है.

  3. कनेक्शन टेबल में, उस कनेक्शन के नाम पर क्लिक करें जिस पर आपको कॉन्फ़िगरेशन लागू करना है.

    कनेक्शन की जानकारी वाला पेज खुलता है.

  4. सेटिंग टैब में जाकर, उन सेटिंग को अपडेट करें जिनमें आपको बदलाव करना है.

  5. सेव करें पर क्लिक करें.

आगे क्या करना है