Firebase के एआई लॉजिक की मदद से, हाइब्रिड एआई प्रॉम्प्ट

पब्लिश होने की तारीख: 20 मई, 2025

आपके पास, Firebase के एआई लॉजिक के साथ क्लाउड पर फ़ॉलबैक सेट अप करने का विकल्प होता है. इससे, आपके उपयोगकर्ताओं को उनकी ज़रूरत के हिसाब से जवाब मिल पाएंगे. भले ही, वे कोई भी प्लैटफ़ॉर्म या हार्डवेयर इस्तेमाल कर रहे हों. इसके लिए, आपको Prompt API के साथ क्लाउड पर फ़ॉलबैक सेट अप करना होगा.

आधिकारिक Firebase दस्तावेज़ देखें.

हाइब्रिड एआई का इस्तेमाल करना

पहले से मौजूद एआई की कई फ़ायदे हैं. इनमें से कुछ मुख्य फ़ायदे यहां दिए गए हैं:

  • संवेदनशील डेटा को स्थानीय तौर पर प्रोसेस करना: अगर आपको संवेदनशील डेटा का इस्तेमाल करना है, तो एंड-टू-एंड एन्क्रिप्शन की सुविधा के साथ एआई की सुविधाएं उपलब्ध कराई जा सकती हैं.
  • ऑफ़लाइन होने पर एआई का इस्तेमाल करना: आपके उपयोगकर्ता, ऑफ़लाइन होने या इंटरनेट कनेक्शन न होने पर भी एआई की सुविधाओं को ऐक्सेस कर सकते हैं

ये फ़ायदे क्लाउड ऐप्लिकेशन पर लागू नहीं होते. हालांकि, आपके पास यह पक्का करने का विकल्प होता है कि जिन लोगों के पास एआई की सुविधा नहीं है उन्हें बेहतर अनुभव मिले.

Firebase का इस्तेमाल शुरू करना

  1. Firebase प्रोजेक्ट बनाएं और अपने वेब ऐप्लिकेशन को रजिस्टर करें.
  2. वेब ऐप्लिकेशन सेटअप करने के लिए, Firebase JavaScript SDK टूल का दस्तावेज़ पढ़ें.

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

एसडीके टूल इंस्टॉल करना

इस वर्कफ़्लो में npm का इस्तेमाल किया जाता है. इसके लिए, मॉड्यूल बंडलर या JavaScript फ़्रेमवर्क टूलिंग की ज़रूरत होती है. Firebase AI Logic को मॉड्यूल बंडलर के साथ काम करने के लिए ऑप्टिमाइज़ किया गया है, ताकि इस्तेमाल न होने वाले कोड को हटाया जा सके और एसडीके का साइज़ कम किया जा सके.

npm install firebase

इंस्टॉल हो जाने के बाद, अपने ऐप्लिकेशन में Firebase को शुरू करें.

Firebase AI Logic का इस्तेमाल करना

Firebase इंस्टॉल और शुरू करने के बाद, Gemini Developer API या Vertex AI Gemini API में से कोई एक चुनें. इसके बाद, शुरू करें और एक इंस्टेंस बनाएं.

मॉडल को शुरू करने के बाद, उसे टेक्स्ट या मल्टीमॉडल इनपुट दिया जा सकता है.

टेक्स्ट प्रॉम्प्ट

मॉडल को निर्देश देने के लिए, सामान्य टेक्स्ट का इस्तेमाल किया जा सकता है. उदाहरण के लिए, मॉडल से कोई चुटकुला सुनाने के लिए कहा जा सकता है.

यह पक्का करने के लिए कि getGenerativeModel फ़ंक्शन में उपलब्ध होने पर, पहले से मौजूद एआई का इस्तेमाल किया जाए, mode को prefer_on_device पर सेट करें.

// Initialize the Google AI service.
const googleAI = getAI(firebaseApp);

// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(googleAI, { mode: 'prefer_on_device' });

const prompt = 'Tell me a joke';

const result = await model.generateContentStream(prompt);

for await (const chunk of result.stream) {
  const chunkText = chunk.text();
  console.log(chunkText);
}
console.log('Complete response', await result.response);

टेक्स्ट, इमेज वगैरह को प्रोसेस करने वाले Gemini मॉडल में प्रॉम्प्ट सबमिट करने की सुविधा

टेक्स्ट के अलावा, इमेज या ऑडियो का इस्तेमाल करके भी प्रॉम्प्ट दिया जा सकता है. मॉडल को किसी इमेज में मौजूद कॉन्टेंट के बारे में बताने या किसी ऑडियो फ़ाइल को ट्रांसक्राइब करने के लिए कहा जा सकता है.

इमेज को Base64 एन्कोड की गई स्ट्रिंग के तौर पर, Firebase FileDataPart ऑब्जेक्ट के तौर पर पास करना होगा. इसके लिए, fileToGenerativePart() हेल्पर फ़ंक्शन का इस्तेमाल किया जा सकता है.

// Converts a File object to a `FileDataPart` object.
// https://firebase.google.com/docs/reference/js/vertexai.filedatapart
async function fileToGenerativePart(file) {
    const base64EncodedDataPromise = new Promise((resolve) => {
      const reader = new FileReader();
      reader.onload = () => resolve(reader.result.split(',')[1]);
      reader.readAsDataURL(file);
    });

    return {
      inlineData: { data: await base64EncodedDataPromise, mimeType: file.type },
    };
  }

  const fileInputEl = document.querySelector('input[type=file]');

  fileInputEl.addEventListener('change', async () => {
    const prompt = 'Describe the contents of this image.';

    const imagePart = await fileToGenerativePart(fileInputEl.files[0]);

    // To generate text output, call generateContent with the text and image
    const result = await model.generateContentStream([prompt, imagePart]);

    for await (const chunk of result.stream) {
      const chunkText = chunk.text();
      console.log(chunkText);
    }
    console.log(Complete response: ', await result.response);
  });

डेमो

अलग-अलग डिवाइसों और ब्राउज़र पर, Firebase के एआई लॉजिक का डेमो देखें. इससे यह देखा जा सकता है कि मॉडल का जवाब, डिवाइस में पहले से मौजूद एआई मॉडल से मिला है या क्लाउड से.

Chrome में, इस सुविधा के साथ काम करने वाले हार्डवेयर पर डेमो के लिए, Prompt API और Gemini Nano का इस्तेमाल किया जाता है. मुख्य दस्तावेज़, JavaScript फ़ाइल, और सीएसएस फ़ाइल के लिए सिर्फ़ तीन अनुरोध किए गए हैं.

Chrome में चल रहा Firebase का एआई लॉजिक, जो पहले से मौजूद एआई एपीआई का इस्तेमाल करता है.

जब किसी दूसरे ब्राउज़र या एआई की सुविधा के बिना वाले ऑपरेटिंग सिस्टम का इस्तेमाल किया जाता है, तब Firebase एंडपॉइंट https://firebasevertexai.googleapis.com को एक अतिरिक्त अनुरोध भेजा जाता है.

Safari में Firebase AI Logic चल रहा है और Firebase सर्वर से अनुरोध कर रहा है.

हिस्सा लें और सुझाव/राय दें या शिकायत करें

Firebase AI Logic, आपके वेब ऐप्लिकेशन में एआई की सुविधाएं इंटिग्रेट करने का एक बेहतरीन विकल्प हो सकता है. Prompt API उपलब्ध न होने पर, SDK क्लाउड पर फ़ॉलबैक की सुविधा देता है. इससे, एआई सुविधाओं को ज़्यादा लोगों तक पहुंचाया जा सकता है और उन पर भरोसा किया जा सकता है.

ध्यान रखें कि क्लाउड ऐप्लिकेशन, निजता और काम करने के तरीके के लिए नई उम्मीदें पैदा करते हैं. इसलिए, अपने उपयोगकर्ताओं को यह बताना ज़रूरी है कि उनके डेटा को कहां प्रोसेस किया जा रहा है.