Firebase में Vertex AI के GA वर्शन का इस्तेमाल करने के लिए माइग्रेट करना


Vertex AI in Firebase को 21 अक्टूबर, 2024 को सभी के लिए लॉन्च किया गया था.

अगर आपने Vertex AI in Firebase लाइब्रेरी (FirebaseVertexAI-Preview) के झलक वाले वर्शन का इस्तेमाल किया है, तो लाइब्रेरी (FirebaseVertexAI) के GA वर्शन का इस्तेमाल करने के लिए, आपको अपग्रेड करने के लिए ये बदलाव करने होंगे.

माइग्रेट करने के लिए ज़रूरी बदलावों की हाइलाइट की सूची यहां दी गई है:

आपको अपने Firebase प्रोजेक्ट में Vertex AI in Firebase एपीआई को चालू करना होगा और उसे अपनी Firebase एपीआई पासकोड की अनुमति वाली सूची में जोड़ना होगा. यह एक नया एपीआई है. Vertex AI in Firebase के GA वर्शन का इस्तेमाल करने के लिए, यह एपीआई ज़रूरी है.

  1. Firebase console में, Gemini का इस्तेमाल करके ऐप्लिकेशन बनाएं पेज पर जाएं.

  2. Vertex AI in Firebase कार्ड में, शुरू करें पर क्लिक करके, एक वर्कफ़्लो लॉन्च करें. इससे, इस एपीआई को चालू करने और उसे अपनी Firebase API पासकोड की अनुमति वाली सूची में जोड़ने में मदद मिलेगी.

  3. आपके पास कंसोल में बाकी वर्कफ़्लो को छोड़ने का विकल्प है.

लाइब्रेरी के GA वर्शन पर अपडेट करें (सभी के लिए ज़रूरी है)

लाइब्रेरी के GA वर्शन का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन के कोडबेस को अपडेट करने के लिए इन निर्देशों का पालन करें:

  1. Xcode में, अपना ऐप्लिकेशन प्रोजेक्ट खोलकर, Firebase पैकेज को 11.4.0 या उसके बाद के वर्शन पर अपडेट करें. इसके लिए, इनमें से कोई एक विकल्प इस्तेमाल करें:

    • पहला विकल्प: सभी पैकेज अपडेट करें: फ़ाइल > पैकेज > पैकेज के नए वर्शन पर अपडेट करें पर जाएं.

    • दूसरा विकल्प: Firebase को अलग से अपडेट करना: पैकेज की डिपेंडेंसी सेक्शन में जाकर, Firebase पैकेज पर जाएं. Firebase पैकेज पर राइट क्लिक करें. इसके बाद, पैकेज अपडेट करें को चुनें.

  2. पक्का करें कि Firebase पैकेज में अब 11.4.0 या उसके बाद का वर्शन दिख रहा हो. अगर ऐसा नहीं है, तो पुष्टि करें कि आपने जो पैकेज की ज़रूरी शर्तें बताई हैं वे 11.9.0 या उसके बाद के वर्शन में अपडेट करने की अनुमति देती हैं.

  3. Project Editor में अपने ऐप्लिकेशन का टारगेट चुनें. इसके बाद, फ़्रेमवर्क, लाइब्रेरी, और एम्बेड किया गया कॉन्टेंट सेक्शन पर जाएं.

  4. + बटन चुनें. इसके बाद, Firebase पैकेज से FirebaseVertexAI जोड़ें.

  5. FirebaseVertexAI-Preview चुनें. इसके बाद, बटन दबाएं.

अन्य बदलाव (आपने जिन सुविधाओं का इस्तेमाल किया है उनके हिसाब से ज़रूरी है)

SDK टूल के GA वर्शन के लिए कई बदलाव किए गए हैं. अपने ऐप्लिकेशन में SDK टूल के GA वर्शन का इस्तेमाल करने के लिए, आपको अपने कोड में कुछ बदलाव करने पड़ सकते हैं. इन बदलावों के बारे में जानने के लिए, यहां दी गई सूचियां देखें.

  • फ़ंक्शन कॉलिंग
    अगर आपने GA से पहले इस सुविधा को लागू किया है, तो आपको अपने स्कीमा को तय करने के तरीके में अपडेट करने होंगे. हमारा सुझाव है कि फ़ंक्शन के एलान लिखने का तरीका जानने के लिए, अपडेट की गई फ़ंक्शन कॉल करने की गाइड देखें.

  • responseSchema का इस्तेमाल करके स्ट्रक्चर्ड आउटपुट (जैसे, JSON) जनरेट करना
    अगर आपने GA से पहले इस सुविधा को लागू किया है, तो आपको अपने स्कीमा को तय करने के तरीके में अपडेट करने होंगे. हमारा सुझाव है कि JSON स्कीमा लिखने का तरीका जानने के लिए, स्ट्रक्चर्ड आउटपुट की नई गाइड पढ़ें.

  • टाइम आउट

    • अनुरोधों के लिए डिफ़ॉल्ट टाइम आउट को 180 सेकंड पर सेट किया गया.
  • एनोमेरेशन

    • ज़्यादातर enum टाइप को स्टैटिक वैरिएबल वाले struct से बदल दिया गया. इस बदलाव से, एपीआई को बेहतर बनाने के लिए ज़्यादा विकल्प मिलते हैं. साथ ही, यह पुराने वर्शन के साथ काम करता है. switch स्टेटमेंट का इस्तेमाल करते समय, अब आपको default: केस शामिल करना होगा, ताकि अनजान या मैनेज नहीं की जा सकने वाली वैल्यू को कवर किया जा सके. इसमें, आने वाले समय में SDK में जोड़ी गई नई वैल्यू भी शामिल हैं.

    • BlockThreshold एनोटेशन का नाम बदलकर HarmBlockThreshold किया गया; यह टाइप अब struct है.

    • इन सूचियों (अब struct) से unknown और unspecified के मामले हटा दिए गए हैं: HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason, और FinishReason.

    • एनोटेशन ModelContent.Part को Part नाम के प्रोटोकॉल से बदला गया, ताकि नए टाइप को पुराने सिस्टम के साथ काम करने वाले तरीके से जोड़ा जा सके. इस बदलाव के बारे में ज़्यादा जानकारी, कॉन्टेंट के हिस्से सेक्शन में दी गई है.

  • कॉन्टेंट के हिस्से

    • ThrowingPartsRepresentable प्रोटोकॉल को हटा दिया गया है. साथ ही, ModelContent के लिए, कॉम्पाइलर की गड़बड़ियों से बचने के लिए, इनिशलाइज़र को आसान बनाया गया है. सही तरीके से एन्कोड न हुई इमेज का इस्तेमाल generateContent में करने पर भी गड़बड़ियां दिखेंगी.

    • ModelContent.Part केस को Part प्रोटोकॉल के मुताबिक, यहां दिए गए struct टाइप से बदल दिया गया है:

      • .text से TextPart
      • .data से InlineDataPart
      • .fileData से FileDataPart
      • .functionCall से FunctionCallPart
      • .functionResponse से FunctionResponsePart
  • नुकसान पहुंचाने की कैटगरी

    • HarmCategory को बदला गया, ताकि वह अब SafetySetting टाइप में नेस्ट न हो. अगर आपने इसे SafetySetting.HarmCategory के तौर पर रेफ़र किया है, तो इसे HarmCategory से बदला जा सकता है.
  • सुरक्षा से जुड़ा सुझाव, शिकायत या राय देना

    • SafetyFeedback टाइप हटा दिया गया है, क्योंकि इसका इस्तेमाल किसी भी जवाब में नहीं किया गया था.
  • साइटेशन का मेटाडेटा

    • CitationMetadata में, citationSources प्रॉपर्टी का नाम बदलकर citations किया गया.
  • बिल किए जा सकने वाले कुल वर्ण

    • CountTokensResponse में totalBillableCharacters प्रॉपर्टी को वैकल्पिक के तौर पर बदला गया है, ताकि उन स्थितियों को दिखाया जा सके जहां कोई वर्ण नहीं भेजा जाता.
  • उम्मीदवार का जवाब

    • अन्य प्लैटफ़ॉर्म से मैच करने के लिए, CandidateResponse को Candidate में बदला गया.
  • जनरेशन कॉन्फ़िगरेशन

    • GenerationConfig की सार्वजनिक प्रॉपर्टी को internal में बदला गया. ये सभी, initializer में कॉन्फ़िगर किए जा सकते हैं.

माइग्रेट करने से जुड़ी संभावित गड़बड़ियां

Vertex AI in Firebase के GA वर्शन का इस्तेमाल करने के लिए माइग्रेट करने पर, आपको गड़बड़ियां दिख सकती हैं. ऐसा तब होगा, जब आपने माइग्रेशन की इस गाइड में बताए गए सभी ज़रूरी बदलाव न किए हों.

403 गड़बड़ी: Requests to this API firebasevertexai.googleapis.com ... are blocked.

अगर आपको 403 कोड वाली गड़बड़ी का मैसेज मिलता है, जिसमें Requests to this API firebasevertexai.googleapis.com ... are blocked. लिखा है, तो आम तौर पर इसका मतलब है कि आपकी Firebase कॉन्फ़िगरेशन फ़ाइल/ऑब्जेक्ट में मौजूद एपीआई पासकोड की अनुमति वाली सूची में, उस प्रॉडक्ट के लिए ज़रूरी एपीआई मौजूद नहीं है जिसका इस्तेमाल किया जा रहा है.

पक्का करें कि आपके ऐप्लिकेशन में इस्तेमाल की गई एपीआई पासकोड में, ऐसे सभी ज़रूरी एपीआई शामिल हों जो पासकोड की "एपीआई से जुड़ी पाबंदियों" की अनुमति वाली सूची में शामिल हैं. Vertex AI in Firebase के लिए, आपकी एपीआई पासकोड की अनुमति वाली सूची में कम से कम Vertex AI in Firebase एपीआई होना चाहिए. Firebase कंसोल की मदद से नए एपीआई को चालू करने पर, यह एपीआई आपकी एपीआई कुंजी की अनुमति वाली सूची में अपने-आप जुड़ जाना चाहिए.

Google Cloud कंसोल में, एपीआई और सेवाएं > क्रेडेंशियल पैनल में जाकर, अपनी सभी एपीआई कुंजियां देखी जा सकती हैं.