Firebase AI Logic का इस्तेमाल करके, एआई की मदद से काम करने वाले Android ऐप्लिकेशन और सुविधाएं बनाई जा सकती हैं. इसके लिए, हाइब्रिड इन्फ़रेंस का इस्तेमाल किया जाता है. हाइब्रिड इन्फ़्रेंस की मदद से, डिवाइस पर मौजूद मॉडल का इस्तेमाल करके इन्फ़्रेंस चलाया जा सकता है. अगर डिवाइस पर मौजूद मॉडल उपलब्ध नहीं हैं, तो क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल किया जा सकता है. इसके उलट भी किया जा सकता है.
इस पेज पर, क्लाइंट एसडीके का इस्तेमाल शुरू करने का तरीका बताया गया है. साथ ही, कॉन्फ़िगरेशन के अतिरिक्त विकल्प और सुविधाएं दिखाई गई हैं.
ध्यान दें कि Firebase AI Logic के ज़रिए ऑन-डिवाइस इन्फ़रेंस की सुविधा, Firebase AI Logic SDK के 17.10.0 या इसके बाद के वर्शन (BoM 34.10.0 या इसके बाद के वर्शन) का इस्तेमाल करने वाले Android ऐप्लिकेशन के लिए उपलब्ध है. साथ ही, यह सुविधा चुनिंदा डिवाइसों पर काम करती है. यह ML Kit की शर्तों के साथ-साथ, ML Kit के जेन एआई से जुड़े पहलुओं की खास शर्तों के तहत काम करता है.
इस्तेमाल के सुझाए गए उदाहरण और उपलब्ध सुविधाएं
इस्तेमाल के सुझाए गए उदाहरण
उपयोगकर्ता के डिवाइस पर मौजूद मॉडल का इस्तेमाल करके अनुमान लगाने से ये फ़ायदे मिलते हैं:
- बेहतर निजता
- लोकल कॉन्टेक्स्ट
- बिना किसी शुल्क के अनुमान लगाना
- ऑफ़लाइन काम करने की सुविधा
हाइब्रिड फ़ंक्शनैलिटी वाले ऑफ़र का इस्तेमाल करके:
- उपयोगकर्ता के डिवाइस पर मॉडल की उपलब्धता और इंटरनेट कनेक्टिविटी के हिसाब से, अपने दर्शकों तक ज़्यादा पहुंचें
डिवाइस पर मौजूद एआई मॉडल से अनुमान लगाने की सुविधा के लिए, इस्तेमाल की जा सकने वाली सुविधाएं
उपयोगकर्ता के डिवाइस पर मौजूद मॉडल से अनुमान लगाने की सुविधा, सिर्फ़ एक बार में टेक्स्ट जनरेट करने (चैट नहीं) की सुविधा देती है. इसमें स्ट्रीमिंग या बिना स्ट्रीमिंग वाला आउटपुट मिलता है. यह टेक्स्ट जनरेट करने की इन सुविधाओं के साथ काम करता है:
टेक्स्ट और इमेज वाले इनपुट से टेक्स्ट जनरेट करना. खास तौर पर, इनपुट के तौर पर एक Bitmap इमेज का इस्तेमाल करना
इस पेज पर सबसे नीचे दी गई, उपयोगकर्ता के डिवाइस पर अनुमान लगाने की सुविधा के लिए, फ़िलहाल उपलब्ध नहीं हैं की सूची ज़रूर देखें.
शुरू करने से पहले
इन बातों का ध्यान रखें:
इन एपीआई के साथ काम करता है:
क्लाउड में मौजूद इन्फ़्रेंस, आपकी चुनी गई Gemini API सेवा देने वाली कंपनी (Gemini Developer API या Agent Platform Gemini API (formerly Vertex AI)) का इस्तेमाल करता है.
ऑन-डिवाइस इन्फ़रेंस, ML Kit के प्रॉम्प्ट एपीआई का इस्तेमाल करता है. यह बीटा वर्शन में है और सिर्फ़ कुछ डिवाइसों पर उपलब्ध है.
इस पेज पर, शुरू करने का तरीका बताया गया है.
इस स्टैंडर्ड सेटअप को पूरा करने के बाद, कॉन्फ़िगरेशन के अतिरिक्त विकल्पों और सुविधाओं के बारे में जानें.
Android के जिन डिवाइसों पर यह सुविधा काम करती है और उनके ऑन-डिवाइस मॉडल
उपयोगकर्ता के डिवाइस पर अनुमान लगाने की सुविधा (जो ML Kit के Prompt API का इस्तेमाल करती है) के लिए, ML Kit के दस्तावेज़ में सुविधा के साथ काम करने वाले डिवाइसों और उनके उपयोगकर्ता के डिवाइस पर मॉडल की सूची देखी जा सकती है.
शुरू करें
'शुरू करें' सेक्शन में दिए गए इन चरणों में, किसी भी ऐसे प्रॉम्प्ट अनुरोध के लिए ज़रूरी सामान्य सेटअप के बारे में बताया गया है जिसे आपको भेजना है.
पहला चरण: Firebase प्रोजेक्ट सेट अप करना और अपने ऐप्लिकेशन को Firebase से कनेक्ट करना
Firebase कंसोल में साइन इन करें. इसके बाद, अपना Firebase प्रोजेक्ट चुनें.
Firebase console में, एआई सेवाएं > एआई लॉजिक पर जाएं.
शुरू करें पर क्लिक करके, निर्देशों के साथ काम करने वाला वर्कफ़्लो लॉन्च करें. इससे आपको अपने प्रोजेक्ट के लिए ज़रूरी एपीआई और संसाधन सेट अप करने में मदद मिलेगी.
अगर कहा जाए, तो स्क्रीन पर दिए गए निर्देशों का पालन करके अपने ऐप्लिकेशन को रजिस्टर करें. साथ ही, अपने ऐप्लिकेशन में Firebase कॉन्फ़िगरेशन जोड़ें.
"Gemini API उपलब्ध कराने वाली कंपनी" चुनने के लिए कहा जाने पर, हम Gemini Developer API को चुनने का सुझाव देते हैं. इससे आपको बिना किसी शुल्क के तुरंत शुरुआत करने में मदद मिलती है.
बाद में किसी भी समय, Agent Platform Gemini API (formerly Vertex AI) को सेट अप किया जा सकता है. साथ ही, बिलिंग के लिए ज़रूरी शर्तें भी पूरी की जा सकती हैं.
Firebase AI Logic के लिए ज़रूरी एपीआई और उनसे जुड़ी सेवाओं को सेट अप करने के लिए, वर्कफ़्लो में आगे बढ़ें.
जुलाई 2026 की शुरुआत से, वर्कफ़्लो का यह चरण AI Logic के लिए Firebase App Check को अपने-आप लागू कर देगा. यह ज़रूरी सेवा है, ताकि Gemini API को सुरक्षित रखने में मदद मिल सके. ऐसा तब होता है, जब आपके ऐप्लिकेशन से सीधे तौर पर Gemini API को ऐक्सेस किया जाता है. शुरू करने के लिए, आपको App Check डीबग प्रोवाइडर को कॉन्फ़िगर करना होगा. इसके बारे में इस गाइड में बाद में बताया गया है. ऐसा तब करना होगा, जब App Check लागू किया गया हो.
अपने ऐप्लिकेशन में ज़रूरी एसडीके टूल जोड़ने के लिए, इस गाइड में दिए गए अगले चरण पर जाएं.
दूसरा चरण: ज़रूरी एसडीके जोड़ना
Firebase AI Logic Android के लिए SDK टूल (firebase-aifirebase-ai-ondevice
अपनी मॉड्यूल (ऐप्लिकेशन-लेवल) की Gradle फ़ाइल (जैसे, <project>/<app-module>/build.gradle.kts) में, Android के लिए Firebase AI Logic और App Check लाइब्रेरी की डिपेंडेंसी जोड़ें:
Kotlin
dependencies { // ... other androidx dependencies // Add the dependencies for the Firebase AI Logic and App Check libraries // Note that the on-device SDK is not yet included in the Firebase Android BoM implementation("com.google.firebase:firebase-ai:17.17.0") implementation("com.google.firebase:firebase-ai-ondevice:16.0.0-beta05") implementation("com.google.firebase:firebase-appcheck-debug:19.4.1") }
Java
Java के लिए, आपको दो और लाइब्रेरी जोड़नी होंगी.
dependencies { // ... other androidx dependencies // Add the dependencies for the Firebase AI Logic and App Check libraries // Note that the on-device SDK is not yet included in the Firebase Android BoM implementation("com.google.firebase:firebase-ai:17.17.0") implementation("com.google.firebase:firebase-ai-ondevice:16.0.0-beta05") implementation("com.google.firebase:firebase-appcheck-debug:19.4.1") // Required for one-shot operations (to use `ListenableFuture` from Guava Android) implementation("com.google.guava:guava:31.0.1-android") // Required for streaming operations (to use `Publisher` from Reactive Streams) implementation("org.reactivestreams:reactive-streams:1.0.4") }
तीसरा चरण: लोकल डेवलपमेंट के लिए, App Check डीबग प्रोवाइडर को कॉन्फ़िगर करना
जुलाई 2026 की शुरुआत से, कंसोल में AI Logic के लिए, सेटअप करने के तरीके से जुड़े वर्कफ़्लो के तहत, Firebase App Check को अपने-आप लागू किया जाता है, ताकि Gemini API को सुरक्षित रखा जा सके. लोकल डेवलपमेंट के लिए, आपको App Check debug provider को कॉन्फ़िगर करना होगा, ताकि पुष्टि को बायपास किया जा सके. हालांकि, App Check को लागू करना ज़रूरी है.
अपनी डीबग बिल्ड में, डीबग प्रोवाइडर फ़ैक्ट्री का इस्तेमाल करने के लिए App Check को कॉन्फ़िगर करें:
Kotlin
Firebase.initialize(context = this) Firebase.appCheck.installAppCheckProviderFactory( DebugAppCheckProviderFactory.getInstance(), )Java
FirebaseApp.initializeApp(/*context=*/ this); FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance(); firebaseAppCheck.installAppCheckProviderFactory( DebugAppCheckProviderFactory.getInstance());अपना डीबग टोकन पाएं:
अपने ऐप्लिकेशन को एम्युलेटर में या टेस्ट के लिए डिवाइस पर चलाएं.
अपने लॉग में App Check डीबग टोकन ढूंढें. उदाहरण के लिए:
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678टोकन कॉपी करें. उदाहरण के लिए,
123a4567-b89c-12d3-e456-789012345678.
App Check में अपना डीबग टोकन रजिस्टर करें:
Firebase कंसोल में, सुरक्षा > App Check > ऐप्लिकेशन टैब पर जाएं.
अपना ऐप्लिकेशन ढूंढें. इसके बाद, ओवरफ़्लो मेन्यू () पर क्लिक करें. इसके बाद, डीबग टोकन मैनेज करें चुनें.
अपने डीबग टोकन को रजिस्टर करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.
डीबग करने की सुविधा देने वाली कंपनी के बारे में जानकारी पाने के लिए (इसमें नया डीबग टोकन पाने का तरीका भी शामिल है), आधिकारिक App Check दस्तावेज़ देखें.
चौथा चरण: यह देखना कि उपयोगकर्ता के डिवाइस पर मौजूद मॉडल उपलब्ध है या नहीं
FirebaseAIOnDevice का इस्तेमाल करके, यह देखें कि उपयोगकर्ता के डिवाइस पर मॉडल उपलब्ध है या नहीं. अगर मॉडल उपलब्ध नहीं है, तो उसे डाउनलोड करें.
डाउनलोड होने के बाद, AICore मॉडल को अपने-आप अपडेट करता रहेगा. AICore और उपयोगकर्ता के डिवाइस पर मॉडल डाउनलोड करने की सुविधा को मैनेज करने के बारे में ज़्यादा जानने के लिए, स्निपेट के बाद दिए गए नोट देखें.
Kotlin
val status = FirebaseAIOnDevice.checkStatus()
when (status) {
OnDeviceModelStatus.UNAVAILABLE -> {
Log.w(TAG, "On-device model is unavailable")
}
OnDeviceModelStatus.DOWNLOADABLE -> {
FirebaseAIOnDevice.download().collect { status ->
when (status) {
is DownloadStatus.DownloadStarted ->
Log.w(TAG, "Starting download - ${status.bytesToDownload}")
is DownloadStatus.DownloadInProgress ->
Log.w(TAG, "Download in progress ${status.totalBytesDownloaded} bytes downloaded")
is DownloadStatus.DownloadCompleted ->
Log.w(TAG, "On-device model download complete")
is DownloadStatus.DownloadFailed ->
Log.e(TAG, "Download failed ${status}")
}
}
}
OnDeviceModelStatus.DOWNLOADING -> {
Log.w(TAG, "On-device model is being downloaded")
}
OnDeviceModelStatus.AVAILABLE -> {
Log.w(TAG, "On-device model is available")
}
}
Java
Checking for, downloading, and warming up the model is not yet available for Java.
However, all other APIs and interactions in this guide are available for Java.
उपयोगकर्ता के डिवाइस पर मॉडल डाउनलोड करने के बारे में यहां दी गई बातों का ध्यान रखें:
डिवाइस पर मौजूद मॉडल को डाउनलोड करने में लगने वाला समय कई बातों पर निर्भर करता है. जैसे, आपका नेटवर्क.
अगर आपका कोड, मुख्य या फ़ॉलबैक अनुमान के लिए उपयोगकर्ता के डिवाइस पर मौजूद मॉडल का इस्तेमाल करता है, तो पक्का करें कि मॉडल को आपके ऐप्लिकेशन के लाइफ़साइकल की शुरुआत में ही डाउनलोड कर लिया गया हो. इससे, उपयोगकर्ता के डिवाइस पर मौजूद मॉडल, आपके ऐप्लिकेशन में कोड का सामना करने से पहले ही उपलब्ध हो जाएगा.
अगर उपयोगकर्ता के डिवाइस पर मौजूद मॉडल, उपयोगकर्ता के डिवाइस पर अनुमान लगाने के लिए किए गए अनुरोध के समय उपलब्ध नहीं है, तो एसडीके, उपयोगकर्ता के डिवाइस पर मौजूद मॉडल को अपने-आप डाउनलोड करने की प्रोसेस को ट्रिगर नहीं करेगा. एसडीके, क्लाउड पर होस्ट किए गए मॉडल पर वापस आ जाएगा या एक अपवाद दिखाएगा. इनफ़्रेंस मोड के व्यवहार के बारे में ज़्यादा जानकारी देखें.
AICore (Android की एक सिस्टम सर्विस) यह मैनेज करती है कि आपके डिवाइस पर कौनसे मॉडल और वर्शन डाउनलोड किए गए हैं. साथ ही, यह मॉडल को अपडेट रखती है. ध्यान दें कि डिवाइस पर सिर्फ़ एक मॉडल डाउनलोड किया जाएगा. इसलिए, अगर डिवाइस पर मौजूद किसी दूसरे ऐप्लिकेशन ने पहले ही उपयोगकर्ता के डिवाइस पर काम करने वाला मॉडल डाउनलोड कर लिया है, तो इस जांच में यह पता चलेगा कि मॉडल उपलब्ध है.
लेटेंसी ऑप्टिमाइज़ेशन
पहले अनुमान कॉल के लिए ऑप्टिमाइज़ करने के लिए, आपका ऐप्लिकेशन onDeviceExtension?.warmUp() को कॉल कर सकता है. फ़िलहाल, यह सुविधा सिर्फ़ Kotlin के लिए उपलब्ध है. इससे उपयोगकर्ता के डिवाइस पर मौजूद मॉडल, मेमोरी में लोड हो जाता है और रनटाइम कॉम्पोनेंट शुरू हो जाते हैं.
पांचवां चरण: सेवा शुरू करना और मॉडल इंस्टेंस बनाना
|
इस पेज पर, सेवा देने वाली कंपनी के हिसाब से कॉन्टेंट और कोड देखने के लिए, Gemini API पर क्लिक करें. |
मॉडल को प्रॉम्प्ट का अनुरोध भेजने से पहले, इन्हें सेट अप करें.
एपीआई की सेवा देने वाली कंपनी के लिए, सेवा शुरू करें.
GenerativeModelइंस्टेंस बनाएं औरmodeको इनमें से किसी एक पर सेट करें. यहां दी गई जानकारी बहुत सामान्य है. हालांकि, इन्फ़रेंस मोड सेट करना में जाकर, इन मोड के काम करने के तरीके के बारे में ज़्यादा जानकारी पाई जा सकती है.PREFER_ON_DEVICE: उपयोगकर्ता के डिवाइस पर मौजूद मॉडल का इस्तेमाल करने की कोशिश करें. अगर ऐसा नहीं होता है, तो क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करें.ONLY_ON_DEVICE: उपयोगकर्ता के डिवाइस पर मौजूद मॉडल का इस्तेमाल करने की कोशिश करें. अगर ऐसा नहीं होता है, तो अपवाद दिखाएं.PREFER_IN_CLOUD: क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करने की कोशिश करें. अगर ऐसा नहीं होता है, तो उपयोगकर्ता के डिवाइस पर मौजूद मॉडल का इस्तेमाल करें.ONLY_IN_CLOUD: क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करने की कोशिश करें. अगर ऐसा नहीं होता है, तो अपवाद दिखाएं.
Kotlin
// Using this SDK to access on-device inference is an Experimental release and requires opt-in
@OptIn(PublicPreviewAPI::class)
// ...
// Initialize the Gemini Developer API backend service
// Create a GenerativeModel instance with a model that supports your use case
// Set the inference mode (like PREFER_ON_DEVICE to use the on-device model if available)
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel(
modelName = "CLOUD_MODEL_NAME",
onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)
)
Java
// Initialize the Gemini Developer API backend service
// Create a GenerativeModel instance with a model that supports your use case
// Set the inference mode (like PREFER_ON_DEVICE to use the on-device model if available)
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"CLOUD_MODEL_NAME",
new OnDeviceConfig(InferenceMode.PREFER_ON_DEVICE)
);
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
छठा चरण: किसी मॉडल को प्रॉम्प्ट का अनुरोध भेजना
इस सेक्शन में बताया गया है कि अलग-अलग तरह के आउटपुट जनरेट करने के लिए, अलग-अलग तरह का इनपुट कैसे भेजा जाता है. इसमें ये शामिल हैं:
सिर्फ़ टेक्स्ट वाले इनपुट से टेक्स्ट जनरेट करना
| इस सैंपल को आज़माने से पहले, पक्का करें कि आपने इस गाइड का शुरू करें सेक्शन पूरा कर लिया हो. |
टेक्स्ट वाले प्रॉम्प्ट से टेक्स्ट जनरेट करने के लिए, generateContent() का इस्तेमाल किया जा सकता है:
Kotlin
// Imports + initialization of Gemini API backend service + creation of model instance
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = model.generateContent(prompt)
print(response.text)
Java
// Imports + initialization of Gemini API backend service + creation of model instance
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
ध्यान दें कि Firebase AI Logic, generateContentStream का इस्तेमाल करके टेक्स्ट वाले जवाबों की स्ट्रीमिंग को भी सपोर्ट करता है. हालांकि, इसके लिए generateContent का इस्तेमाल नहीं किया जाता.
टेक्स्ट और इमेज (टेक्स्ट, इमेज, और वीडियो वगैरह का इस्तेमाल करके) वाले इनपुट से टेक्स्ट जनरेट करना
| इस सैंपल को आज़माने से पहले, पक्का करें कि आपने इस गाइड का शुरू करें सेक्शन पूरा कर लिया हो. |
टेक्स्ट और ज़्यादा से ज़्यादा एक इमेज फ़ाइल
(सिर्फ़ बिटमैप) वाले प्रॉम्प्ट से टेक्स्ट जनरेट करने के लिए, generateContent() का इस्तेमाल किया जा सकता है. इसके लिए, हर इनपुट फ़ाइल का mimeType और फ़ाइल खुद उपलब्ध कराएं.
Kotlin
// Imports + initialization of Gemini API backend service + creation of model instance
// Loads an image from the app/res/drawable/ directory
val bitmap: Bitmap = BitmapFactory.decodeResource(resources, R.drawable.sparky)
// Provide a prompt that includes the image specified above and text
val prompt = content {
image(bitmap)
text("What developer tool is this mascot from?")
}
// To generate text output, call generateContent with the prompt
val response = model.generateContent(prompt)
print(response.text)
Java
// Imports + initialization of Gemini API backend service + creation of model instance
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.sparky);
// Provide a prompt that includes the image specified above and text
Content content = new Content.Builder()
.addImage(bitmap)
.addText("What developer tool is this mascot from?")
.build();
// To generate text output, call generateContent with the prompt
ListenableFuture<GenerateContentResponse> response = model.generateContent(content);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
ध्यान दें कि Firebase AI Logic, generateContentStream का इस्तेमाल करके टेक्स्ट वाले जवाबों की स्ट्रीमिंग को भी सपोर्ट करता है. हालांकि, इसके लिए generateContent का इस्तेमाल नहीं किया जाता.
तुम और क्या कर सकती हो?
हाइब्रिड अनुभवों के लिए, कॉन्फ़िगरेशन के कई अन्य विकल्प और सुविधाएं इस्तेमाल की जा सकती हैं:
यह तय करना कि डिवाइस पर या क्लाउड में इन्फ़रेंस का इस्तेमाल किया गया था.
जवाबों को कंट्रोल करने के लिए, मॉडल कॉन्फ़िगरेशन का इस्तेमाल करें.
उपयोगकर्ता के डिवाइस पर मौजूद डेटा के आधार पर अनुमान लगाने की सुविधा के लिए, फ़िलहाल ये सुविधाएं उपलब्ध नहीं हैं
एक्सपेरिमेंट के तौर पर रिलीज़ किए जाने की वजह से, क्लाउड मॉडल की सभी सुविधाएं उपयोगकर्ता के डिवाइस पर अनुमान लगाने के लिए उपलब्ध नहीं हैं.
इस सेक्शन में दी गई सुविधाएं, फ़िलहाल डिवाइस पर उपलब्ध नहीं हैं. अगर आपको इनमें से किसी सुविधा का इस्तेमाल करना है, तो हमारा सुझाव है कि आप ONLY_IN_CLOUD इन्फ़रेंस मोड का इस्तेमाल करें, ताकि आपको बेहतर अनुभव मिल सके.
बिटमैप के अलावा, इमेज फ़ाइल के अन्य टाइप से टेक्स्ट जनरेट करना (मेमोरी में लोड की गई इमेज)
एक से ज़्यादा इमेज फ़ाइलों से टेक्स्ट जनरेट करना
ऑडियो, वीडियो, और दस्तावेज़ों (जैसे कि PDF) से टेक्स्ट जनरेट करना
Gemini मॉडल का इस्तेमाल करके इमेज जनरेट करना
मल्टीमॉडल अनुरोधों में यूआरएल का इस्तेमाल करके फ़ाइलें उपलब्ध कराना. आपको उपयोगकर्ता के डिवाइस पर मौजूद मॉडल को फ़ाइलें, इनलाइन डेटा के तौर पर देनी होंगी
ऐसे अनुरोध भेजना जिनमें 4,000 से ज़्यादा टोकन हों. जैसे, करीब 3,000 अंग्रेज़ी शब्द.
सिलसिलेवार बातचीत
जवाब जनरेट करने में मदद करने के लिए, मॉडल को टूल उपलब्ध कराना (जैसे कि फ़ंक्शन कॉल करना, कोड एक्ज़ीक्यूट करना, यूआरएल कॉन्टेक्स्ट,
Google Search के साथ ग्राउंडिंग, औरGoogle Maps के साथ ग्राउंडिंग)
Firebase कंसोल में एआई मॉनिटरिंग, उपयोगकर्ता के डिवाइस पर अनुमान लगाने (इसमें डिवाइस लॉग भी शामिल हैं) से जुड़ा कोई भी डेटा नहीं दिखाती है. हालांकि, क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल करने वाले किसी भी अनुमान को Firebase AI Logic के ज़रिए, अन्य अनुमान की तरह ही मॉनिटर किया जा सकता है.
अन्य सीमाएं
ऊपर दी गई बातों के अलावा, उपयोगकर्ता के डिवाइस पर अनुमान लगाने की सुविधा से जुड़ी येसीमाएं हैं. इनके बारे में ज़्यादा जानने के लिए, ML Kit का दस्तावेज़ पढ़ें:
आपके ऐप्लिकेशन के असली उपयोगकर्ता के पास, उपयोगकर्ता के डिवाइस पर अनुमान लगाने की सुविधा के लिए काम करने वाला डिवाइस होना चाहिए.
आपका ऐप्लिकेशन, उपयोगकर्ता के डिवाइस पर अनुमान लगाने की सुविधा का इस्तेमाल सिर्फ़ तब कर सकता है, जब वह फ़ोरग्राउंड में हो.
उपयोगकर्ता के डिवाइस पर मौजूद मॉडल से अनुमान लगाने की सुविधा के लिए, सिर्फ़ अंग्रेज़ी और कोरियन भाषा की पुष्टि की गई है.
उपयोगकर्ता के डिवाइस पर मौजूद मॉडल से अनुमान पाने के पूरे अनुरोध के लिए, टोकन की ज़्यादा से ज़्यादा सीमा 4,000 टोकन है. अगर आपके अनुरोध इस सीमा से ज़्यादा हो सकते हैं, तो पक्का करें कि आपने ऐसा अनुमान लगाने वाला मोड कॉन्फ़िगर किया हो जो क्लाउड पर होस्ट किए गए मॉडल का इस्तेमाल कर सके.
हमारा सुझाव है कि डिवाइस पर इन्फ़रेंस के ऐसे इस्तेमाल के उदाहरणों से बचें जिनमें लंबे आउटपुट (256 से ज़्यादा टोकन) की ज़रूरत होती है.
AICore (Android की एक सिस्टम सर्विस, जो उपयोगकर्ता के डिवाइस पर मौजूद मॉडल को मैनेज करती है) हर ऐप्लिकेशन के लिए अनुमान लगाने का कोटा लागू करती है. कम समय में बहुत ज़्यादा एपीआई अनुरोध करने पर, आपको
ErrorCode.BUSYजवाब मिलेगा. अगर आपको यह गड़बड़ी दिख रही है, तो अनुरोध को फिर से भेजने के लिए, एक्स्पोनेंशियल बैकऑफ़ का इस्तेमाल करें. इसके अलावा, अगर कोई ऐप्लिकेशन लंबे समय तक के कोटे (जैसे, रोज़ का कोटा) से ज़्यादा डेटा ट्रांसफ़र करता है, तोErrorCode.PER_APP_BATTERY_USE_QUOTA_EXCEEDEDको वापस किया जा सकता है.
Firebase AI Logic के साथ अपने अनुभव के बारे में सुझाव/राय दें या शिकायत करें