Cloud Functions और Vertex AI की मदद से, सर्वर साइड रिमोट कॉन्फ़िगरेशन का इस्तेमाल करें

इस गाइड में 2nd gen का इस्तेमाल करना शुरू करने का तरीका बताया गया है Cloud Functions के साथ सर्वर-साइड बनाने के लिए सर्वर-साइड Remote Config CANNOT TRANSLATE Vertex AI Gemini API.

इस ट्यूटोरियल में, आपको Remote Config को चैटबॉट जैसे किसी ऐसे फ़ंक्शन में जोड़ना होगा जिसमें लोगों के सवालों के जवाब देने के लिए, Gemini मॉडल का इस्तेमाल करता है. Remote Config यह काम करेगा Gemini API इनपुट मैनेज करें (इसमें वह प्रॉम्प्ट भी शामिल है जिसके आगे जोड़ा जाएगा इनकमिंग उपयोगकर्ता की क्वेरी). साथ ही, इन इनपुट को मांग पर अपडेट किया जा सकता है. Firebase कंसोल. आपको टेस्ट करने के लिए, Firebase Local Emulator Suite का इस्तेमाल करना होगा और फ़ंक्शन को डीबग करें, और फिर, यह सत्यापित करने के बाद कि यह काम करता है, आप Google Cloud पर इसकी जांच करें.

ज़रूरी शर्तें

इस गाइड में दी गई जानकारी मानती है कि आपको कन्वर्ज़न के लिए, JavaScript का इस्तेमाल करने के बारे में जानकारी है का इस्तेमाल करें.

Firebase प्रोजेक्ट सेट अप करना

अगर आपके पास पहले से कोई Firebase प्रोजेक्ट नहीं ��ै, तो:

  1. Firebase कंसोल में साइन इन करें.

  2. प्रोजेक्ट बनाएं पर क्लिक करें और फिर इनमें से किसी एक विकल्प का इस्तेमाल करें:

    • पहला विकल्प: कोई नया Firebase प्रोजेक्ट (और उसके मौजूदा चरण) बनाना Google Cloud प्रोजेक्ट अपने-आप) "प्रोजेक्ट बनाएं" का पहला चरण वर्कफ़्लो.
    • दूसरा विकल्प: "Firebase जोड़ें" Google Cloud प्रोजेक्ट को इसके तहत, ड्रॉप-डाउन मेन्यू से अपने Google Cloud प्रोजेक्ट का नाम चुनकर "प्रोजेक्ट बनाएं" का पहला चरण वर्कफ़्लो.
  3. जब कहा जाए, तब आपको Google Analytics का इस्तेमाल करने की ज़रूरत नहीं है हल करें.

  4. अपना प्रोजेक्ट बनाने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.

अगर आपके पास पहले से ही Firebase प्रोजेक्ट है, तो:

अपने डेवलपमेंट एनवायरमेंट को कॉन्फ़िगर करें पर जाएं.

अपने डेवलपमेंट एनवायरमेंट को कॉन्फ़िगर करना

फ़ंक्शन लिखने के लिए, आपको Node.js एनवायरमेंट की ज़रूरत होगी Cloud Functions में फ़ंक्शन डिप्लॉय करने के लिए, आपको Firebase सीएलआई की ज़रूरत होगी रनटाइम.

  1. Node.js और npm इंस्टॉल करें.

    Node.js और npm इंस्टॉल करने के लिए, हम नोड वर्शन मैनेजर.

  2. Firebase सीएलआई इंस्टॉल करें पसंदीदा तरीका चुनें. उदाहरण के लिए, npm का इस्तेमाल करके सीएलआई इंस्टॉल करने के लिए, इसे चलाएं आदेश:

    npm install -g firebase-tools@latest
    

    इस निर्देश से, दुनिया भर में उपलब्ध firebase कमांड इंस्टॉल होता है. अगर यह आदेश व��फल होता है, तो आपको npm अनुमतियां बदलें.

    firebase-tools को नए वर्शन में अपडेट करने के लिए, उसी निर्देश को फिर से चलाएं.

  3. firebase-functions और firebase-admin इंस्टॉल करें और --save का इस्तेमाल करके बचत करें उन्हें आपके package.json में जोड़ दिया जाएगा:

    npm install firebase-functions@latest firebase-admin@latest --save
    

अब आप इसे लागू करने के लिए तैयार हैं समाधान.

लागू करना

2nd gen को बनाने, टेस्ट करने, और डिप्लॉय करने के लिए, यह तरीका अपनाएं Remote Config और Vertex AI के साथ Cloud Functions:

  1. Google Cloud कंसोल में, सुझाए गए Vertex AI एपीआई चालू करें.
  2. अपना प्रोजेक्ट शुरू करें और नोड डिपेंडेंसी इंस्टॉल करें.
  3. अपने Admin SDK सेवा खाते के लिए, आईएएम की अनुमतियां कॉन्फ़िगर करें और अपनी कुंजी सेव करें.
  4. फ़ंक्शन बनाएं.
  5. सर्वर के हिसाब से Remote Config टेंप्लेट बनाएं.
  6. अपना फ़ंक्शन डिप्लॉय करें और इसकी जांच Firebase Local Emulator Suite.
  7. अपने फ़ंक्शन को Google Cloud पर डिप्लॉय करें.

पहला चरण: Google Cloud कंसोल में, सुझाए गए Vertex AI एपीआई चालू करें

  1. खोलें Google Cloud console, और जब कहा जाए, तब अपना प्रोजेक्ट चुनें.
  2. कंसोल में सबसे ऊपर मौजूद Search फ़ील्ड में, टेक्स्ट बॉक्स में Vertex AI और नतीजे के तौर पर Vertex AI के दिखने तक इंतज़ार करें.
  3. Vertex AI चुनें. आपको Vertex AI डैशबोर्ड दिखेगा.
  4. सभी सुझाए गए एपीआई चालू करें पर क्लिक करें.

    एपीआई चालू करने की ��्रोसेस को पूरा होने में कुछ समय लग सकता है. पेज को बनाए रखें चालू रहेगा और उसे चालू किए जाने तक खुला रहेगा.

  5. अगर बिलिंग चालू नहीं है, तो आपको Cloud Billing खाता. बिलिंग खाता सक्षम करने के बाद, इस पर वापस जाएं Vertex AI डैशबोर्ड पर जाकर पुष्टि करें कि सुझाए गए सभी एपीआई चालू हैं.

दूसरा चरण: अपना प्रोजेक्ट शुरू करना और नोड डिपेंडेंसी इंस्टॉल करना

  1. अपने कंप्यूटर पर टर्मिनल खोलें और उस डायरेक्ट्री पर जाएं जहां आपको फ़ंक्शन बनाने के बारे में सोचें.
  2. Firebase में लॉग इन करें:

    firebase login
    
  3. Cloud Functions for Firebase शुरू करने के लिए, नीचे दिया गया कमांड चलाएं:

    firebase init functions
    
  4. किसी मौजूदा प्रोजेक्ट का इस्तेमाल करें को चुनें और अपना प्रोजेक्ट आईडी डालें.

  5. जब इस्तेमाल करने के लिए भाषा चुनने को कहा जाए, तब JavaScript चुनें और दबाएं Enter दबाएं.

  6. अन्य सभी विकल्पों के लिए, डिफ़ॉल्ट चुनें.

    मौजूदा डायरेक्ट्री में एक functions डायरेक्ट्री बनाई गई है. इसके अंदर, आपको कोई index.js फ़ाइल ढूंढें जिसका इस्तेमाल अपने फ़ंक्शन को बनाने के लिए करना है, node_modules डायरेक्ट्री, जिसमें आपके फ़ंक्शन की डिपेंडेंसी शामिल है, और एक package.json फ़ाइल जिसमें पैकेज डिपेंडेंसी शामिल हैं.

  7. इसे चलाकर, Admin SDK और Vertex AI पैकेज जोड़ें कमांड का इस्तेमाल करके, --save का इस्तेमाल करके यह पक्का किया जा सकता है कि यह आइटम आपके package.json फ़ाइल:

    cd functions
    npm install firebase-admin@latest @google-cloud/vertexai --save
    

आपकी functions/package.json फ़ाइल अब ऐसी दिखेगी जिसमें नवीनतम वर्शन निर्दिष्ट किए गए:

  {
    "name": "functions",
    "description": "Cloud Functions for Firebase",
    "scripts": {
      "serve": "firebase emulators:start --only functions",
      "shell": "firebase functions:shell",
      "start": "npm run shell",
      "deploy": "firebase deploy --only functions",
      "logs": "firebase functions:log"
    },
    "engines": {
      "node": "20"
    },
    "main": "index.js",
    "dependencies": {
      "@google-cloud/vertexai": "^1.1.0",
      "firebase-admin": "^12.1.0",
      "firebase-functions": "^5.0.0"
    },
    "devDependencies": {
      "firebase-functions-test": "^3.1.0"
    },
    "private": true
  }

ध्यान दें कि अगर ESLint का इस्तेमाल किया जा रहा है, तो आपको एक छंद दिखेगा. इसमें वह शामिल होगा. तय सीमा में इसके अलावा, पक्का करें कि नोड इंजन वर्शन, इंस्टॉल किए गए वर्शन से मेल खाता हो Node.js के साथ उस वर्शन को भी अपडेट करते हैं जिसे आपने Google Cloud पर चलाया है. उदाहरण के लिए, अगर आपके package.json में engines छंद को नोड के वर्शन 18 के तौर पर कॉन्फ़िगर किया गया है और अगर आप Node.js 20 का इस्तेमाल कर रहे हैं, तो फ़ाइल को अपडेट करके 20 का इस्तेमाल करें:

  "engines": {
    "node": "20"
  },

तीसरा चरण: अपने Admin SDK सेवा खाते के लिए IAM अनुमतियां कॉन्फ़िगर करना और अपनी कुंजी सेव करना

इस समाधान में, आपको Firebase Admin SDK सेवा खाते का इस्तेमाल करके आपके फ़ंक्शन का इस्तेमाल कैसे करना है.

  1. Google Cloud कंसोल में, IAM और एडमिन पेज, और Admin SDK सेवा खाता (जिसका नाम firebase-adminsdk है) का पता लगाएं.
  2. खाता चुनें और मूल रकम में बदलाव करें पर क्लिक करें. 'बदलाव करने का ऐक्सेस' पेज दिखा�� देता है.
  3. दूसरी भूमिका जोड़ें पर क्लिक करें और Remote Config दर्शक को चुनें.
  4. दूसरी भूमिका जोड़ें पर क्लिक करें और एआई प्लैटफ़ॉर्म डेवलपर को चुनें.
  5. दूसरी भूमिका जोड़ें पर क्लिक करें और Vertex AI उपयोगकर्ता चुनें.
  6. अन्य भूमिका जोड़ें पर क्लिक करें और Cloud Run Invoker चुनें.
  7. सेव करें पर क्लिक करें.

इसके बाद, Admin SDK सेवा खाते के क्रेडेंशियल एक्सपोर्ट करें और उन्हें सेव करें आपके GOOGLE_APPLICATION_CREDENTIALS एनवायरमेंट वैरिएबल में.

  1. Google Cloud कंसोल में, क्रेडेंशियल पेज.
  2. जानकारी पेज खोलने के लिए, Admin SDK सेवा खाते पर क्लिक करें.
  3. कुंजी पर क्लिक करें.
  4. कुंजी जोड़ें पर क्लिक करें > नई कुंजी बनाएं.
  5. पक्का करें कि JSON को कुंजी टाइप के तौर पर चुना गया हो. इसके बाद, बनाएं पर क्लिक करें.
  6. अपने कंप्यूटर पर कुंजी को किसी सुरक्षित जगह पर डाउनलोड करें.
  7. अपने टर्मिनल से, कुंजी को एनवायरमेंट वैरिएबल के तौर पर एक्सपोर्ट करें:

    export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/service-account-key.json"
    

चौथा चरण: फ़ंक्शन बनाना

इस चरण में, आपको एक ऐसा फ़ंक्शन बनाना है जो उपयोगकर्ता के इनपुट को मैनेज और जनरेट करता हो एआई से मिलने वाले जवाब. आपको एक कोड स्निपेट बनाने के लिए एक व्यापक फ़ंक्शन है जो Admin SDK और Vertex AI Gemini API, इसका इस्तेमाल करके डिफ़ॉल्ट पैरामीटर को कॉन्फ़िगर करता है Remote Config, सबसे नए Remote Config पैरामीटर और प्रोसेस फ़ेच करता है उपयोगकर्ता के इनपुट को स्ट्रीम करता है, और उपयोगकर्ता को जवाब के तौर पर जवाब देता है.

  1. अपने कोड बेस में, functions/index.js को टेक्स्ट एडिटर या IDE में खोलें.
  2. मौजूदा कॉन्टेंट को मिटाएं और फिर Admin SDK जोड़ें. Remote Config और Vertex AI SDK टूल की मदद से ऐप्लिकेशन को इस तरह शुरू करें फ़ाइल में निम्न कोड पेस्ट करना:

    const { onRequest } = require("firebase-functions/v2/https");
    const logger = require("firebase-functions/logger");
    
    const { initializeApp } = require("firebase-admin/app");
    const { VertexAI } = require('@google-cloud/vertexai');
    const { getRemoteConfig } = require("firebase-admin/remote-config");
    
    // Set and check environment variables.
    const project = process.env.GCLOUD_PROJECT;
    
    // Initialize Firebase.
    const app = initializeApp();
    
  3. ऐसी डिफ़ॉल्ट वैल्यू कॉन्फ़िगर करें जिनका इस्तेमाल आपका फ़ंक्शन, उससे कनेक्ट न होने पर करेगा Remote Config सर्वर. यह समाधान, textModel को कॉन्फ़िगर करता है, इस भूमिका में generationConfig, safetySettings, textPrompt, और location Remote Config के साथ काम करने वाले Remote Config पैरामीटर पैरामीटर को कॉन्फ़िगर किया जा सकता है, जिन्हें इस गाइड में आगे कॉन्फ़िगर किया जाएगा. ज़्यादा के लिए इन पैरामीटर के बारे में जानकारी पाने के लिए, Vertex AI Node.js क्लाइंट.

    इसके अलावा, एक पैरामीटर को कॉन्फ़िगर करके यह भी कंट्रोल किया जा सकता है कि आपको Vertex AI Gemini API को ऐक्सेस करें (इस उदाहरण में, vertex_enabled). यह सेटअप, आपके फ़ंक्शन की जांच करते समय मददगार हो सकता है. तय सीमा में नीचे दिया गया कोड स्निपेट जोड़ने के लिए, यह मान false पर सेट है, जो बेसिक फ़ंक्शन डिप्लॉयमेंट की जांच के दौरान, Vertex AI का इस्तेमाल करके. इसे इस पर सेट कर रहा है true, Vertex AI Gemini API शुरू करेगा.

    // Define default (fallback) parameter values for Remote Config.
    const defaultConfig = {
    
      // Default values for Vertex AI.
      model_name: "gemini-1.5-flash-preview-0514",
      generation_config: [{
        "stopSequences": [], "temperature": 0.7,
        "maxOutputTokens": 64, "topP": 0.1, "topK": 20
      }],
      prompt: "I'm a developer who wants to learn about Firebase and you are a \
        helpful assistant who knows everything there is to know about Firebase!",
      safety_settings: [{
        "category":
          "HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT",
        "threshold": "HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE"
      }],
      location: 'us-central1',
    
      // Disable Vertex AI Gemini API access for testing.
      vertex_enabled: false
    };
    
  4. फ़ंक्शन बनाएं और उसे सेट अप करें सर्वर-साइड Remote Config:

    // Export the function.
    exports.generateWithVertex = onRequest(async (request, response) => {
    
      try {
    
        // Set up Remote Config.
        const rc = getRemoteConfig(app);
    
        // Get the Remote Config template and assign default values.
        const template = await rc.getServerTemplate({
          defaultConfig: defaultConfig
        });
    
        // Add the template evaluation to a constant.
        const config = template.evaluate();
    
        // Obtain values from Remote Config.
        const textModel = config.getString("model_name") ||
            defaultConfig.model_name;
        const textPrompt = config.getString("prompt") || defaultConfig.prompt;
        const generationConfig = config.getString("generation_config") ||
            defaultConfig.generation_config;
        const safetySettings = config.getString("safety_settings") ||
            defaultConfig.safety_settings;
        const location = config.getString("location") ||
            defaultConfig.location;
        const vertexEnabled = config.getBoolean("is_vertex_enabled") ||
            defaultConfig.vertex_enabled;
    
  5. Vertex AI सेट अप करें. इसके बाद, चैट और जवाब देने का लॉजिक जोड़ें:

      // Allow user input.
      const userInput = request.query.prompt || '';
    
      // Instantiate Vertex AI.
        const vertex_ai = new VertexAI({ project: project, location: location });
        const generativeModel = vertex_ai.getGenerativeModel({
          model: textModel,
          safety_settings: safetySettings,
          generation_config: generationConfig,
        });
    
        // Combine prompt from Remote Config with optional user input.
        const chatInput = textPrompt + " " + userInput;
    
        if (!chatInput) {
          return res.status(400).send('Missing text prompt');
        }
        // If vertexEnabled isn't true, do not send queries to Vertex AI.
        if (vertexEnabled !== true) {
          response.status(200).send({
            message: "Vertex AI call skipped. Vertex is not enabled."
          });
          return;
        }
    
        logger.log("\nRunning with model ", textModel, ", prompt: ", textPrompt,
          ", generationConfig: ", generationConfig, ", safetySettings: ",
          safetySettings, " in ", location, "\n");
    
        const result = await generativeModel.generateContentStream(chatInput); 
        response.writeHead(200, { 'Content-Type': 'text/plain' });
    
        for await (const item of result.stream) {
          const chunk = item.candidates[0].content.parts[0].text;
          logger.log("Received chunk:", chunk);
          response.write(chunk);
        }
    
        response.end();
    
      } catch (error) {
        logger.error(error);
        response.status(500).send('Internal server error');
      }
    });
    
  6. फ़ाइल सेव करें और बंद करें.

पांचवां चरण: सर्वर के हिसाब से Remote Config टेंप्लेट बनाना

इसके बाद, सर्वर साइड Remote Config टेंप्लेट बनाएं और पैरामीटर कॉन्फ़िगर करें और आपके फ़ंक्शन में इस्तेमाल करने के लिए वैल्यू. खास तौर पर सर्वर के लिए Remote Config टेंप्लेट:

  1. Firebase कंसोल खोलें और नेविगेशन मेन्यू से, बड़ा करें चलाएं और चुनें Remote Config.
  2. सबसे ऊपर दिए गए क्लाइंट/सर्वर सिलेक्टर में से सर्वर चुनें Remote Config पेज.

    • अगर Remote Config या सर्वर टेंप्लेट का इस्तेमाल प��ली बार किया जा रहा है, तो कॉन्फ़िगरेशन बनाएं पर क्लिक करें. अपना पहला सर्वर-साइड बनाना पैरामीटर पैनल दिखेगा.
    • अगर Remote Config सर्वर टेंप्लेट का इस्तेमाल पहले भी किया जा रहा है, तो पैरामीटर जोड़ें पर क्लिक करें.
  3. इन Remote Config पैरामीटर को तय करें:

    पैरामीटर का नाम जानकारी टाइप डिफ़ॉल्ट वैल्यू
    model_name मॉडल का नाम
    अपने कोड में इस्तेमाल करने के लिए मॉडल के नामों की अप-टू-डेट सूचियां देखने के लिए, यह देखें मॉडल वर्शन और लाइफ़साइकल या उपलब्ध है मॉडल के नाम.
    स्ट्रिंग gemini-1.5-pro-preview-0514
    prompt उपयोगकर्ता की क्वेरी के शुरू होने से पहले दिखने वाला प्रॉम्प्ट. स्ट्रिंग I'm a developer who wants to learn about Firebase and you are a helpful assistant who knows everything there is to know about Firebase!
    generation_config पैरामीटर मॉडल पर भेजने के लिए. JSON [{"stopSequences": ["I hope this helps"],"temperature": 0.7,"maxOutputTokens": 512, "topP": 0.1,"topK": 20}]
    safety_settings सुरक्षा Vertex AI के लिए सेटिंग. JSON [{"category": "HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "HarmBlockThreshold.BLOCK_LOW_AND_ABOVE"}]
    location जगह की जानकारी Vertex AI सेवा और मॉडल को चलाने के लिए. स्ट्रिंग us-central1
    is_vertex_enabled वैकल्पिक पैरामीटर, जो यह कंट्रोल करता है कि क्वेरी Vertex AI. बूलियन true
  4. पैरामीटर जोड़ने के बाद, अपने पैरामीटर की दोबारा जांच करे�� ��र ��ुनें क�� ����के डेटा टाइप सही हों. इसके बाद, बदलावों को पब्लिश करें पर क्लिक करें.

छठा चरण: अपने फ़ंक्शन को डिप्लॉय करना और उसे Firebase Local Emulator Suite में टेस्ट करना

अब आप अपने फ़ंक्शन को स्थानीय तौर पर Firebase Local Emulator Suite.

  1. पक्का करें कि आपने GOOGLE_APPLICATION_CREDENTIALS को एनवायरमेंट के तौर पर सेट किया हो वैरिएबल को चरण 3 में बताया गया है: अपने खाते के लिए IAM अनुमतियां कॉन्फ़िगर करें Admin SDK सेवा खाता सेव करें और अपने बटन का इस्तेमाल करें. इसके बाद, अपनी functions डायरेक्ट्री की पैरंट डायरेक्ट्री, अपने फ़ंक्शन को Firebase एम्युलेटर:

    firebase emulators:start --project PROJECT_ID --only functions
    
  2. खोलें एम्युलेटर के लॉग पेज पर जाएं. इससे पता चलेगा कि आपका फ़ंक्शन लोड हो गया है.

  3. नीचे दिए गए निर्देश की मदद से, अपने फ़ंक्शन को ऐक्सेस करें, जहां PROJECT_ID आपका प्रोजेक्ट आईडी है और LOCATION वह इलाका है जहां आपने डिप्लॉय किया है फ़ंक्शन को (उदाहरण के लिए, us-central1):

    curl http://localhost:5001/PROJECT_ID/LOCATION/generateWithVertex
    
  4. जवाब मिलने का इंतज़ार करें, फिर Firebase एम्युलेटर लॉग पेज पर वापस जाएं या अपने कंसोल और किसी भी गड़बड़ी या चेतावनी की जांच करें.

  5. कुछ उपयोगकर्ता इनपुट भेजने की कोशिश करें, क्योंकि is_vertex_enabled यह है आपके Remote Config सर्वर टेंप्लेट में कॉन्फ़िगर किया गया है, तो इससे Gemini से Vertex AI Gemini API तक हुई है और यह हो सकता है कि शुल्क लगाए जाते हैं:

    curl http://localhost:5001/PROJECT_ID/LOCATION/generateWithVertex?prompt=Tell%20me%20everything%20you%20know%20about%20cats
    
  6. इस पर अपने Remote Config सर्वर टेंप्लेट में बदलाव करें कंसोल को Firebase पर सेट करें. इसके बाद, बदलावों को देखने के लिए अपने फ़ंक्शन को फिर से ऐक्सेस करें.

सातवां चरण: अपने फ़ंक्शन को Google Cloud में डिप्लॉय करना

अपने फ़ंक्शन की जांच और पुष्टि करने के बाद, इसे डिप्लॉय किया जा सकता है Google Cloud और लाइव फ़ंक्शन की जांच करें.

अपने फ़ंक्शन को डिप्लॉय करें

Firebase सीएलआई का इस्तेमाल करके अपने फ़ंक्शन को डिप्लॉय करें:

firebase deploy --only functions

फ़ंक्शन के लिए, बिना पुष्टि किए ऐक्सेस को ब्लॉक करें

जब Firebase का इस्तेमाल करके फ़ंक्शन डिप्लॉय किए जाते हैं, तो बिना पुष्टि वाले अनुरोध डिफ़ॉल्ट रूप से अनुमति दी जाएगी, अगर आपके संगठन की नीति इसे प्रतिबंधित नहीं करती है. जांच के दौर���न और App Check से सुरक्षित करने से पहले, हम बिना पुष्टि वाले ऐक्सेस को ब्लॉक करने का सुझाव दिया जाता है.

इस फ़ंक्शन को बिना पुष्टि किए ऐक्सेस देने से ब्लॉक करने के लिए:

  1. Google Cloud कंसोल में, खोलें Cloud Run.

  2. generateWithVertex पर क्लिक करने के बाद, सुरक्षा टैब पर क्लिक करें.

  3. पुष्टि करना ज़रूरी है को चालू करें. इसके बाद, सेव करें पर क्लिक करें.

अपने उपयोगकर्ता खाते को कॉन्फ़िगर करें, ताकि वह Admin SDK सेवा खाते के क्रेडेंशियल का इस्तेमाल कर सके

क्योंकि Admin SDK सेवा खाते के पास सभी ज़रूरी भूमिकाएं हैं और फ़ंक्शन को चलाने और Remote Config और Vertex AI Gemini API, आप इसका इस्तेमाल अपने फ़ंक्शन को चलाने के लिए करना चाहेंगे. ऐसा करें तो आपको अपने उपयोगकर्ता खाते से खाते के लिए टोकन बनाने की अनुमति होनी चाहिए.

यहां दिए गए चरणों में, उपयोगकर्ता खाते और फ़ंक्शन को कॉन्फ़िगर करने का तरीका बताया गया है को चलाने के लिए, Admin SDK सेवा खाते के खास अधिकार का इस्तेमाल करें.

  1. Google Cloud कंसोल में, इसे चालू करें IAM सेवा खाते के क्रेडेंशियल एपीआई.
  2. अपने उपयोगकर्ता खाते को सेवा खाता टोकन क्रिएटर की भूमिका दें: Google Cloud कंसोल, IAM और एडमिन > आईएएम, अपना उपयोगकर्ता चुनें खाते के लिंक पर टैप करें और फिर मूल रकम में बदलाव करें पर क्लिक करें > कोई अन्य भूमिका जोड़ें.
  3. सेवा खाता टोकन क्रिएटर चुनें. इसके बाद, सेव करें पर क्लिक करें.

    सेवा खाते के नाम पर काम करने के बारे में ज़्यादा जानने के लिए, यह लेख पढ़ें सेवा खाता झूठी पहचान बताना Google Cloud दस्तावेज़ में पढ़ें.

  4. Google Cloud कंसोल Cloud Functions पेज खोलें और फ़ंक्शन सूची में generateWithVertex फ़ंक्शन पर क्लिक करें.

  5. ट्रिगर चुनें > बदलाव करें को बड़ा करें और रनटाइम, बिल्ड, कनेक्शन और सुरक्षा सेटिंग.

  6. रनटाइम टैब से, रनटाइम सेवा खाते को एडमिन SDK खाता.

  7. आगे बढ़ें ��र क्लिक करें. इसके बाद, डिप्लॉय करें पर क्लिक करें.

gcloud सीएलआई सेट अप करें

कमांड लाइन से अपने फ़ंक्शन को सुरक्षित रूप से चलाने और उ��क�� ��री��्��ण क�����े के लिए आपको Cloud Functions सेवा से प्रमाणित करें और पुष्टि करने वाला टोकन.

टोकन जनरेट करने के लिए, gcloud सीएलआई इंस्टॉल और कॉन्फ़िगर करें:

  1. अगर आपके कंप्यूटर पर पहले से इंस्टॉल नहीं है, तो gcloud सीएलआई को gcloud इंस्टॉल करें सीएलआई.

  2. अपने Google Cloud खाते के लिए ऐक्सेस क्रेडेंशियल पाएं:

    gcloud auth login
    
  3. gcloud में अपना प्रोजेक्ट आईडी सेट करें:

    gcloud config set project PROJECT_ID
    

अपने फ़ंक्शन की जांच करें

अब आप Google Cloud में अपने फ़ंक्शन की जांच करने के लिए तैयार हैं. फ़ंक्शन की जांच करने के लिए, निम्न कमांड चलाएं:

curl -X POST https://LOCATION-PROJECT_ID.cloudfunctions.net/generateWithVertex \
  -H "Authorization: bearer $(gcloud auth print-identity-token)" \
  -H "Content-Type: application/json"

उपयोगकर्ता से मिले डेटा का इस्तेमाल करके, फिर से कोशिश करें:

curl -X POST https://LOCATION-PROJECT_ID.cloudfunctions.net/generateWithVertex?prompt=Tell%20me%20everything%20you%20know%20about%20dogs \
 -H "Authorization: bearer $(gcloud auth print-identity-token)" \
 -H "Content-Type: application/json"

अब आप अपने Remote Config सर्वर टेंप्लेट में बदलाव कर सकते हैं. इसके बाद, पब्लिश करें साथ ही, उनमें बदलाव करने के लिए कहा जा सकता है.

अगले चरण