Firebase SDK टूल में, Vertex AI के GA वर्शन से Firebase AI Logic SDKs पर माइग्रेट करना


Firebase AI Logic और उसके क्लाइंट SDK को पहले "Vertex AI in Firebase" कहा जाता था. अपनी बढ़ी हुई सेवाओं और सुविधाओं को बेहतर तरीके से दिखाने के लिए, हमने अपनी सेवाओं का नाम बदल दिया है और उन्हें Firebase AI Logic में फिर से पैकेज किया है. उदाहरण के लिए, अब हम Gemini Developer API के साथ काम करते हैं!

अपने मोबाइल या वेब ऐप्लिकेशन से, Google के जनरेटिव एआई मॉडल को सुरक्षित तरीके से ऐक्सेस करने के लिए, अब आपके पास "Gemini API" सेवा देने वाली कंपनी चुनने का विकल्प है. इसमें, Vertex AI Gemini API या Gemini Developer API में से किसी एक को चुना जा सकता है. Vertex AI Gemini API सेवा पहले से उपलब्ध है, जबकि Gemini Developer API सेवा हाल ही में लॉन्च की गई है. इसका मतलब है कि अब आपके पास Gemini Developer API का इस्तेमाल करने का विकल्प है. इसमें, बिना किसी शुल्क के, किराये की उचित सीमाओं और कोटा के साथ टीयर की सुविधा मिलती है.

Firebase AI Logic SDK टूल पर माइग्रेट करने के तरीके की खास जानकारी

  • पहला चरण: अपने ऐप्लिकेशन और इस्तेमाल के उदाहरणों के लिए, सबसे अच्छा "Gemini API" सेवा देने वाली कंपनी चुनें.

  • दूसरा चरण: अपना Firebase प्रोजेक्ट सेट अप करें, ताकि आप Gemini Developer API का इस्तेमाल कर सकें.
    यह सिर्फ़ तब लागू होता है, जब Vertex AI Gemini API के बजाय Gemini Developer API का इस्तेमाल किया जा रहा हो.

  • तीसरा चरण: अपने ऐप्लिकेशन में इस्तेमाल की गई लाइब्रेरी को अपडेट करें.

  • चौथा चरण: अपने ऐप्लिकेशन में, शुरू करने की प्रोसेस को अपडेट करें.

  • पांचवां चरण: इस्तेमाल की जा रही सुविधाओं के हिसाब से अपना कोड अपडेट करें.

पहला चरण: अपने ऐप्लिकेशन के लिए, "Gemini API" की सेवा देने वाली सबसे अच्छी कंपनी चुनना

इस माइग्रेशन के बाद, आपके पास "Gemini API" की सेवा देने वाली कंपनी चुनने का विकल्प होगा:

  • पुराने "Vertex AI in Firebase" SDK, सिर्फ़ Vertex AI Gemini API का इस्तेमाल कर सकते थे.

  • नए Firebase AI Logic SDK टूल की मदद से, यह चुना जा सकता है कि आपको सीधे अपने मोबाइल या वेब ऐप्लिकेशन से, "Gemini API" सेवा देने वाली किस कंपनी को कॉल करना है – Gemini Developer API या Vertex AI Gemini API.

Gemini API की सेवा देने वाली दो कंपनियों के बीच के अंतर की समीक्षा करें. खास तौर पर, काम करने वाली सुविधाओं, कीमत, और किराये की सीमाओं के मामले में. उदाहरण के लिए, Gemini Developer API में Cloud Storage यूआरएल का इस्तेमाल करके फ़ाइलें उपलब्ध कराने की सुविधा नहीं है. हालांकि, अगर आपको बिना किसी शुल्क के मिलने वाले टीयर और तय कोटे का फ़ायदा लेना है, तो यह एक अच्छा विकल्प हो सकता है.

दूसरा चरण: अपना Firebase प्रोजेक्ट सेट अप करें, ताकि आप Gemini Developer API का इस्तेमाल कर सकें

यह चरण सिर्फ़ तब ज़रूरी है, जब आपको Gemini Developer API के बजाय Firebase AI Logic क्लाइंट SDK टूल का इस्तेमाल करना हो. हालांकि, अगर आपको Vertex AI Gemini API का इस्तेमाल जारी रखना है, तो अगले चरण पर जाएं.

ध्यान दें कि आपके प्रोजेक्ट में "Gemini API" की सेवा देने वाली दोनों कंपनियों के API को एक साथ चालू किया जा सकता है.

  1. Firebase console में, Firebase AI Logic पेज पर जाएं.

  2. सेटिंग टैब पर जाएं और Gemini Developer API को चुनें.

  3. Gemini Developer API चालू करें.

    कंसोल यह पक्का करेगा कि ज़रूरी एपीआई चालू हों. साथ ही, आपके Firebase प्रोजेक्ट में Gemini एपीआई पासकोड जनरेट करेगा.
    अपने ऐप्लिकेशन के कोडबेस में इस Gemini एपीआई कुंजी को न जोड़ें. ज़्यादा जानें.

  4. अपने ऐप्लिकेशन में लाइब्रेरी और शुरू करने की प्रोसेस को अपडेट करने के लिए, माइग्रेशन से जुड़ी इस गाइड को पढ़ें.

तीसरा चरण: अपने ऐप्लिकेशन में इस्तेमाल की गई लाइब्रेरी को अपडेट करना

Firebase AI Logic लाइब्रेरी का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन का कोडबेस अपडेट करें.

Swift

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

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

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

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

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

  4. नई लाइब्रेरी जोड़ें: + बटन चुनें. इसके बाद, Firebase पैकेज से FirebaseAI जोड़ें.

  5. अपने ऐप्लिकेशन को माइग्रेट करने के बाद (इस गाइड के बाकी सेक्शन देखें), पुरानी लाइब्रेरी को हटाना न भूलें:
    FirebaseVertexAI चुनें और फिर बटन दबाएं.

Kotlin

  1. अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर <project>/<app-module>/build.gradle.kts या <project>/<app-module>/build.gradle) में, पुरानी डिपेंडेंसी को (जहां लागू हो) इनके साथ बदलें.

    ध्यान दें कि पुरानी डिपेंडेंसी को मिटाने से पहले, अपने ऐप्लिकेशन के कोडबेस को माइग्रेट करना आसान हो सकता है. इसके लिए, इस गाइड के बाकी सेक्शन देखें.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.14.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. अपने Android प्रोजेक्ट को Gradle फ़ाइलों के साथ सिंक करें.

ध्यान दें कि अगर आपको Firebase Android BoM का इस्तेमाल नहीं करना है, तो सिर्फ़ firebase-ai लाइब्रेरी के लिए डिपेंडेंसी जोड़ें और Android Studio के सुझाए गए नए वर्शन को स्वीकार करें.

Java

  1. अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) Gradle फ़ाइल (आम तौर पर <project>/<app-module>/build.gradle.kts या <project>/<app-module>/build.gradle) में, पुरानी डिपेंडेंसी को (जहां लागू हो) इनके साथ बदलें.

    ध्यान दें कि पुरानी डिपेंडेंसी को मिटाने से पहले, अपने ऐप्लिकेशन के कोडबेस को माइग्रेट करना आसान हो सकता है. इसके लिए, इस गाइड के बाकी सेक्शन देखें.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:33.14.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. अपने Android प्रोजेक्ट को Gradle फ़ाइलों के साथ सिंक करें.

ध्यान दें कि अगर आपको Firebase Android BoM का इस्तेमाल नहीं करना है, तो सिर्फ़ firebase-ai लाइब्रेरी के लिए डिपेंडेंसी जोड़ें और Android Studio के सुझाए गए नए वर्शन को स्वीकार करें.

Web

  1. npm का इस्तेमाल करके, वेब के लिए Firebase JS SDK टूल का नया वर्शन पाएं:

    npm i firebase@latest

    या

    yarn add firebase@latest
  2. आपने लाइब्रेरी को जहां भी इंपोर्ट किया है वहां अपने इंपोर्ट स्टेटमेंट को अपडेट करें, ताकि firebase/ai का इस्तेमाल किया जा सके.

    ध्यान दें कि पुराने इंपोर्ट मिटाने से पहले, अपने ऐप्लिकेशन के कोडबेस को माइग्रेट करना आसान हो सकता है. इसके लिए, इस गाइड के बाकी सेक्शन देखें.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. अपनी pubspec.yaml फ़ाइल में firebase_ai पैकेज का इस्तेमाल करने के लिए, Flutter प्रोजेक्ट डायरेक्ट्री से यह कमांड चलाएं:

    flutter pub add firebase_ai
  2. अपना Flutter प्रोजेक्ट फिर से बनाएं:

    flutter run
  3. ऐप्लिकेशन को माइग्रेट करने के बाद (इस गाइड के बाकी सेक्शन देखें), पुराने पैकेज को मिटाना न भूलें:

    flutter pub remove firebase_vertexai

Unity

"Vertex AI in Firebase" में, Unity के लिए सहायता उपलब्ध नहीं थी.

Unity के लिए Firebase AI Logic SDK टूल का इस्तेमाल शुरू करने का तरीका जानें.

चौथा चरण: अपने ऐप्लिकेशन में शुरुआती प्रोसेस को अपडेट करना

इस पेज पर, सेवा देने वाली कंपनी से जुड़ा कॉन्टेंट और कोड देखने के लिए, Gemini API पर क्लिक करें.

अपने चुने गए एपीआई प्रोवाइडर के लिए, सेवा को शुरू करने का तरीका अपडेट करें और GenerativeModel इंस्टेंस बनाएं.

Swift


import FirebaseAI

// Initialize the Vertex AI Gemini API backend service
let ai = FirebaseAI.firebaseAI(backend: .vertexAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.0-flash")

Kotlin


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
                        .generativeModel("gemini-2.0-flash")

Java


// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.0-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, VertexAIBackend } from "firebase/ai";

// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Vertex AI Gemini API backend service
const ai = getAI(firebaseApp, { backend: new VertexAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.0-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.vertexAI().generativeModel(model: 'gemini-2.0-flash');

Unity

"Vertex AI in Firebase" में, Unity के लिए सहायता उपलब्ध नहीं थी.

Unity के लिए Firebase AI Logic SDK टूल का इस्तेमाल शुरू करने का तरीका जानें.

ध्यान दें कि इस्तेमाल की जा रही सुविधा के हिसाब से, हो सकता है कि आपके पास हमेशा GenerativeModel इंस्टेंस बनाने का विकल्प न हो.

पांचवां चरण: इस्तेमाल की जा रही सुविधाओं के हिसाब से अपना कोड अपडेट करना

इस चरण में, उन बदलावों के बारे में बताया गया है जो आपके इस्तेमाल की जाने वाली सुविधाओं के आधार पर ज़रूरी हो सकते हैं.

  • अगर आपने Cloud Storage यूआरएल का इस्तेमाल किया है और इस माइग्रेशन में Gemini Developer API का इस्तेमाल करने के लिए स्विच किया है, तो आपको अपने कई मोड वाले अनुरोधों को अपडेट करना होगा, ताकि फ़ाइलों को इनलाइन डेटा के तौर पर शामिल किया जा सके (या वीडियो के लिए YouTube यूआरएल का इस्तेमाल किया जा सके).

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

Swift

कोई और बदलाव नहीं.

Kotlin

  • Live API

    • ResponseModality एट्रिब्यूट की वैल्यू के तौर पर, UNSPECIFIED एट्रिब्यूट की वैल्यू हटाई गई. इसके बजाय, null का इस्तेमाल करें.

Java

  • Live API

    • ResponseModality एट्रिब्यूट की वैल्यू के तौर पर, UNSPECIFIED एट्रिब्यूट की वैल्यू हटाई गई. इसके बजाय, null का इस्तेमाल करें.
  • Java बिल्डर के अलग-अलग तरीकों में बदलाव किया गया है, ताकि अब वे void के बजाय अपनी क्लास का इंस्टेंस सही तरीके से दिखा सकें.

Web

सिर्फ़ तब बदलाव करें, जब Vertex AI Gemini API के बजाय Gemini Developer API का इस्तेमाल शुरू किया जा रहा हो:

  • सुरक्षा सेटिंग

    • इस्तेमाल न किए जा सकने वाले SafetySetting.method एट्रिब्यूट के इस्तेमाल को हटा दिया गया है.
  • इनलाइन डेटा

    • इस्तेमाल न किए जा सकने वाले InlineDataPart.videoMetadata एट्रिब्यूट के इस्तेमाल को हटा दिया गया है.

Dart

कोई और बदलाव नहीं.

Unity

Unity के लिए सहायता, "Vertex AI in Firebase" से उपलब्ध नहीं थी.

Unity के लिए Firebase AI Logic SDK टूल का इस्तेमाल शुरू करने का तरीका जानें.


Firebase AI Logic के साथ अपने अनुभव के बारे में सुझाव/राय दें या शिकायत करें