Firebase Remote Config, Node.js (v12.1.0+), Python (v6.7.0+), Java (v9.7.0+), और Go (v4.17.0+) के लिए Firebase Admin SDK टूल का इस्तेमाल करके, सर्वर-साइड कॉन्फ़िगरेशन की सुविधा देता है.
इस सुविधा की मदद से, Remote Config का इस्तेमाल करके सर्वर साइड ऐप्लिकेशन के व्यवहार और कॉन्फ़िगरेशन को डाइनैमिक तरीके से मैनेज किया जा सकता है. इसमें Cloud Functions for Firebase जैसे सर्वरलेस इंप्लिमेंटेशन और Cloud Run पर कंटेनर वाली सेवाएं शामिल हैं.
Firebase क्लाइंट एसडीके, Remote Config टेंप्लेट से निकाले गए क्लाइंट के हिसाब से कॉन्फ़िगरेशन फ़ेच करते हैं. हालांकि, सर्वर-साइड Remote Config एसडीके, Firebase से पूरा Remote Config टेंप्लेट डाउनलोड या फ़ेच करता है. इसके बाद, आपका सर्वर हर अनुरोध के साथ टेंप्लेट का आकलन कर सकता है. साथ ही, अपने लॉजिक का इस्तेमाल करके, बहुत कम इंतज़ार के समय में, पसंद के मुताबिक जवाब दे सकता है. स्थितियों का इस्तेमाल करके, जवाबों को कंट्रोल और पसंद के मुताबिक बनाया जा सकता है. ऐसा, कस्टम सिग्नल में तय किए गए क्लाइंट एट्रिब्यूट और रैंडम पर्सेंटेज के आधार पर किया जा सकता है.
सर्वर-साइड Remote Config की मदद से, ये काम किए जा सकते हैं:
- अपने सर्वर पर चलने वाले या उसके ज़रिए ऐक्सेस किए जाने वाले ऐप्लिकेशन के लिए, कॉन्फ़िगरेशन पैरामीटर तय करें. इससे एआई मॉडल के पैरामीटर और प्रॉम्प्ट को रिमोटली कॉन्फ़िगर करने और अन्य इंटिग्रेशन जैसे इस्तेमाल के उदाहरणों को लागू करने में मदद मिलती है. इससे यह पक्का किया जा सकता है कि आपके एपीआई पासकोड सुरक्षित रहें.
- अपने एनवायरमेंट में होने वाले बदलावों या ऐप्लिकेशन में होने वाले अन्य बदलावों के हिसाब से, पैरामीटर में डाइनैमिक तौर पर बदलाव करें. जैसे, एलएलएम पैरामीटर और मॉडल एंडपॉइंट अपडेट करना.
- आपका सर्वर जिन एपीआई को कॉल करता है उन्हें रिमोट तरीके से अपडेट करके, लागत को कंट्रोल करें.
- आपके सर्वर को ऐक्सेस करने वाले क्लाइंट के लिए, तुरंत कस्टम कॉन्फ़िगरेशन जनरेट करना.
- यह रिकॉर्ड करना कि किन क्लाइंट को पैरामीटर वैल्यू मिली है. साथ ही, इसका इस्तेमाल Cloud Functions for Firebase में, एनटाइटलमेंट की पुष्टि करने वाले सिस्टम के हिस्से के तौर पर करना.
सर्वर-साइड Remote Config को Cloud Run, Cloud Functions for Firebase या खुद होस्ट किए गए सर्वर एनवायरमेंट पर डिप्लॉय किया जा सकता है.
शुरू करने से पहले
Firebase प्रोजेक्ट बनाने, सेवा खाता सेट अप करने, और अपने सर्वर में Firebase Admin SDK जोड़ने के लिए, अपने सर्वर में Firebase Admin SDK जोड़ें में दिए गए निर्देशों का पालन करें. पक्का करें कि आपके प्लैटफ़ॉर्म के लिए, Admin SDK के ऐसे वर्शन का इस्तेमाल किया जा रहा हो जो काम करता हो:
- Node.js: Firebase Admin Node.js SDK v12.1.0+
- Python: Firebase Admin Python SDK v6.7.0+
- Java: Firebase Admin Java SDK v9.7.0+
- Go: Firebase Admin Go SDK v4.17.0+
पहला चरण: Firebase Admin SDK टूल को शुरू करना और एपीआई अनुरोधों को अनुमति देना
जब Admin SDK को बिना किसी पैरामीटर के शुरू किया जाता है, तो SDK टूल Google ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल का इस्तेमाल करता है. साथ ही, GOOGLE_APPLICATION_CREDENTIALS एनवायरमेंट वैरिएबल से विकल्प पढ़ता है. एसडीके टूल को शुरू करें और अपने प्लैटफ़ॉर्म के लिए Remote Config को कॉन्फ़िगर करें:
Node.js
initializeApp और getRemoteConfig इंपोर्ट करें. इसके बाद, अपने Firebase ऐप्लिकेशन इंस्टेंस को शुरू करें:
import { initializeApp } from "firebase-admin/app";
import { getRemoteConfig } from "firebase-admin/remote-config";
// Initialize Firebase
const firebaseApp = initializeApp();
Python
firebase_admin को इंपोर्ट करें (एसिंक्रोनस टेंप्लेट लोड करने और JSON पार्स करने के लिए, asyncio और json के साथ), फिर ऐप्लिकेशन को शुरू करें:
import firebase_admin
import asyncio
import json
firebase_admin.initialize_app()
Java
FirebaseOptions और अपने सेवा खाते के क्रेडेंशियल का इस्तेमाल करके, Firebase Admin SDK टूल को शुरू करें:
// Initialize the Firebase Admin SDK
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.build();
FirebaseApp.initializeApp(options);
जाएं
Firebase ऐप्लिकेशन को शुरू करें और RemoteConfig क्लाइंट इंस्टेंस बनाएं:
ctx := context.Background()
// Initialize Firebase
app, err := firebase.NewApp(ctx, nil)
if err != nil {
log.Fatalln("Error initializing app:", err)
}
remoteConfig, err := app.RemoteConfig(ctx)
if err != nil {
log.Fatalln("Error initializing remote config client:", err)
}
दूसरा चरण: अपने सर्वर ऐप्लिकेशन के लिए डिफ़ॉल्ट पैरामीटर वैल्यू तय करना
अपने ऐप्लिकेशन में उन वैरिएबल की पहचान करें जिन्हें आपको Remote Config की मदद से डाइनैमिक तौर पर अपडेट करना है. इसके बाद, यह तय करें कि आपके ऐप्लिकेशन में कौनसे वैरिएबल डिफ़ॉल्ट रूप से सेट होने चाहिए और उनकी डिफ़ॉल्ट वैल्यू क्या होनी चाहिए. इससे यह पक्का होता है कि आपका ऐप्लिकेशन, Remote Config बैकएंड सर्वर से कनेक्शन टूटने पर भी सही तरीके से काम करता रहे.
उदाहरण के लिए, अगर कोई ऐसा सर्वर ऐप्लिकेशन लिखा जा रहा है जो जनरेटिव एआई फ़ंक्शन को मैनेज करता है, तो डिफ़ॉल्ट मॉडल का नाम, प्रॉम्प्ट की प्रस्तावना, और जनरेटिव एआई कॉन्फ़िगरेशन सेट किया जा सकता है. जैसे:
| पैरामीटर का नाम | ब्यौरा | टाइप | डिफ़ॉल्ट वैल्यू |
|---|---|---|---|
model_name |
मॉडल एपीआई का नाम | स्ट्रिंग | gemini-3.8-flash |
preamble_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"],
"maxOutputTokens": 512} |
तीसरा चरण: अपने सर्वर ऐप्लिकेशन को कॉन्फ़िगर करना
Remote Config के साथ इस्तेमाल किए जाने वाले पैरामीटर तय करने के बाद, अपने ऐप्लिकेशन को डिफ़ॉल्ट वैल्यू सेट करने, सर्वर के हिसाब से Remote Config टेंप्लेट फ़ेच करने, और उसकी वैल्यू का आकलन करने के लिए कॉन्फ़िगर करें.
Remote Config सर्वर टेंप्लेट को ऐक्सेस और लोड करें.
Node.js
initServerTemplate()का इस्तेमाल करके सर्वर टेंप्लेट को शुरू करें और बैकएंड से टेंप्लेट फ़ेच करने के लिएload()को कॉल करें:// Initialize server-side Remote Config const rc = getRemoteConfig(firebaseApp); const template = rc.initServerTemplate(); // Load Remote Config await template.load();अगर Cloud Functions for Firebase में Node.js का इस्तेमाल किया जा रहा है, तो एसिंक्रोनस
getServerTemplate()फ़ंक्शन का इस्तेमाल करके, टेंप्लेट को एक ही चरण में शुरू और लोड किया जा सकता है:// Initialize server-side Remote Config const rc = getRemoteConfig(firebaseApp); const template = await rc.getServerTemplate();Python
init_server_template()का इस्तेमाल करके सर्वर टेंप्लेट को शुरू करें और बैकएंड से टेंप्लेट फ़ेच करने के लिएload()को कॉल करें:from firebase_admin import remote_config # Initialize server-side Remote Config template = remote_config.init_server_template() # Load the template from the backend asyncio.run(template.load())इसके अलावा, अगर Cloud Functions for Firebase के साथ Python का इस्तेमाल किया जा रहा है, तो एसिंक्रोनस
get_server_template()फ़ंक्शन का इस्तेमाल करके, टेंप्लेट को एक ही चरण में शुरू और लोड किया जा सकता है:# Initialize server-side Remote Config template = await remote_config.get_server_template()Java
FirebaseRemoteConfig.getInstance()का इस्तेमाल करके, सर्वर-साइड Remote Config क्लाइंट को शुरू करें:// Initialize server-side Remote Config client FirebaseRemoteConfig rc = FirebaseRemoteConfig.getInstance();इसके अलावा, अगर Cloud Functions for Firebase के साथ Java का इस्तेमाल किया जा रहा है, तो
getServerTemplate()का इस्तेमाल करके, टेंप्लेट को एक ही चरण में शुरू और लोड किया जा सकता है:ServerTemplate template = rc.getServerTemplate();जाएं
InitServerTemplate()का इस्तेमाल करके सर्वर टेंप्लेट को शुरू करें और बैकएंड से टेंप्लेट फ़ेच करने के लिएLoad()को कॉल करें:// Initialize server-side Remote Config defaultConfig := make(map[string]any) templateDataJSON := "" template, err := remoteConfig.InitServerTemplate(defaultConfig, templateDataJSON) if err != nil { log.Fatalln("Error initializing server template:", err) } // Load Remote Config err = template.Load(ctx) if err != nil { log.Fatalln("Error fetching server template:", err) }टेंप्लेट को शुरू करने का दूसरा तरीका यह है कि ज़रूरी सर्वर टेंप्लेट को वापस पाने के लिए,
GetServerTemplateफ़ंक्शन का इस्तेमाल किया जाए. इस टेंप्लेट को JSON फ़ॉर्मैट में बदला जा सकता है, ताकि इसे डिवाइस में सेव किया जा सके. इसके बाद,InitServerTemplateफ़ंक्शन का इस्तेमाल करके, इस JSON टेंप्लेट को शुरू किया जा सकता है.यह पक्का करने के लिए कि आपका ऐप्लिकेशन, Remote Config बैकएंड सर्वर से कनेक्शन टूटने पर भी सही तरीके से काम करे, अपने ऐप्लिकेशन में हर पैरामीटर के लिए डिफ़ॉल्ट वैल्यू जोड़ें.
Node.js
अपने
initServerTemplateयाgetServerTemplateटेंप्लेट फ़ंक्शन मेंdefaultConfigऑब्जेक्ट जोड़ें:const template = rc.initServerTemplate({ defaultConfig: { model_name: "gemini-3.8-flash", generation_config: '{"stopSequences": [], "maxOutputTokens": 512}', preamble_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!" }, }); // Load Remote Config await template.load();Python
init_server_templateयाget_server_templateटेंप्लेट फ़ंक्शन मेंdefault_configडिक्शनरी जोड़ें:template = remote_config.init_server_template({ 'default_config': { 'model_name': "gemini-3.8-flash", 'generation_config': '{"stopSequences": [], "maxOutputTokens": 512}', 'preamble_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!" }, }) # Load Remote Config asyncio.run(template.load())टेंप्लेट को शुरू करने का दूसरा तरीका यह है कि ज़रूरी सर्वर टेंप्लेट को वापस पाने के लिए,
get_server_templateफ़ंक्शन का इस्तेमाल किया जाए.template.to_jsonफ़ंक्शन का इस्तेमाल करके, इस टेंप्लेट को JSON फ़ॉर्मैट में बदला जा सकता है. इस JSON टेंप्लेट को स्थानीय तौर पर सेव किया जा सकता है. इसके बाद,init_server_templateफ़ंक्शन का इस्तेमाल करके, इस JSON टेंप्लेट को शुरू किया जा सकता है.Java
अपने
getServerTemplateफ़ंक्शन में,KeysAndValuesका इस्तेमाल करकेdefaultConfigऑब्जेक्ट जोड़ें:// Initialize default config using KeysAndValues KeysAndValues defaultConfig = new KeysAndValues.Builder() .put("rc_param_1", "default value 1") .put("rc_param_2", "default value 2") .build(); ServerTemplate template = rc.getServerTemplate(defaultConfig);इसके अलावा, Remote Config को शुरू करते समय, डिफ़ॉल्ट रूप से कैश मेमोरी में सेव किया गया टेंप्लेट पास किया जा सकता है. इसका इस्तेमाल तब भी किया जा सकता है, जब Remote Config सर्वर से कनेक्शन टूट जाए:
String templateDataJSON = "{}"; // add your default template as JSON ServerTemplate template = rc.serverTemplateBuilder() .defaultConfig(defaultConfig) .cachedTemplate(templateDataJSON) .build();जाएं
अपने
InitServerTemplateयाGetServerTemplateटेंप्लेट फ़ंक्शन मेंdefaultConfigमैप जोड़ें:// Initialize server-side Remote Config defaultConfig := make(map[string]any) defaultConfig["model_name"] = "gemini-3.8-flash" // Assume the type generationConfig has been defined defaultConfig["generation_config"] = &generationConfig{ StopSequences: []string{"I hope this helps"}, MaxOutputTokens: 512, } defaultConfig["preamble_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!" templateDataJSON := "" template, err := remoteConfig.InitServerTemplate(defaultConfig, templateDataJSON) if err != nil { log.Fatalln("Error initializing server template:", err) } // Load Remote Config err = template.Load(ctx) if err != nil { log.Fatalln("Error fetching server template:", err) }टेंप्लेट लोड होने के बाद, टेंप्लेट से पैरामीटर और वैल्यू इंपोर्ट करने के लिए, टेंप्लेट का आकलन करें:
Node.js
template.evaluate()का इस्तेमाल करें:// Add template parameters to config const config = template.evaluate();Python
template.evaluate()का इस्तेमाल करें:# Add template parameters to config config = template.evaluate()Java
template.evaluate()का इस्तेमाल करें:// Add template parameters to config ServerConfig config = template.evaluate();जाएं
जब कोई शर्त लागू न हो, तो खाली आकलन कॉन्टेक्स्ट के साथ
template.Evaluate()का इस्तेमाल करें:// An empty evaluation context means no conditions are applied. evaluationContext := make(map[string]any) config, err := template.Evaluate(evaluationContext) if err != nil { log.Fatalln("Error evaluating template:", err) }अगर आपने Remote Config टेंप्लेट में शर्तें सेट की हैं, तो अपनी पसंद के मुताबिक कॉन्टेक्स्ट वैल्यू तय करें और उन्हें उपलब्ध कराएं:
- अगर प्रतिशत की शर्तों का इस्तेमाल किया जा रहा है, तो रैंडमाइज़ेशन आईडी (
randomizationId,randomization_idयाrandomizationID) जोड़ें. इसका इस्तेमाल, टेंप्लेट की जांच करने वाले फ़ंक्शन में अपनी शर्तों की जांच करने के लिए किया जाता है. - कस्टम सिग्नल का इस्तेमाल करने पर, एट्रिब्यूट और उनकी वैल्यू तय करें. कस्टम सिग्नल, Firebase Admin Node.js SDK टूल के 12.5.0 या इसके बाद के वर्शन, Python SDK टूल के 6.7.0 या इसके बाद के वर्शन, Java SDK टूल के 9.7.0 या इसके बाद के वर्शन, और Go SDK टूल के 4.17.0 या इसके बाद के वर्शन के साथ उपलब्ध हैं.
उदाहरण के लिए, रैंडमाइज़ेशन आईडी के तौर पर Firebase इंस्टॉलेशन आईडी या यूज़र आईडी सेट किया जा सकता है. इससे यह पक्का किया जा सकता है कि आपके सर्वर से संपर्क करने वाले हर उपयोगकर्ता को सही रैंडमाइज़ किए गए ग्रुप में जोड़ा जाए. साथ ही, क्लाइंट के खास वर्शन को टारगेट करने के लिए,
versionको कस्टम सिग्नल के तौर पर और क्लाइंट प्लैटफ़ॉर्म को टारगेट करने के लिए,platformको कस्टम सिग्नल के तौर पर जोड़ा जाए.शर्तों के बारे में ज़्यादा जानने के लिए, शर्त के नियम के टाइप देखें.
Node.js
template.evaluate()कोrandomizationIdऔर कोई कस्टम सिग्नल वाला इवैलुएशन कॉन्टेक्स्ट ऑब्जेक्ट पास करें:// Add template parameters to `config`. Evaluates the // template and returns the parameter value assigned to // the group assigned to the {randomizationId} and version. const config = template.evaluate({ randomizationId: "2ac93c28-c459-4760-963d-a3974ec26c04", version: "1.0", platform: "Android" });Python
template.evaluate()कोrandomization_idऔर कोई भी कस्टम सिग्नल वाली डिक्शनरी पास करें:# Add template parameters to `config`. Evaluates the # template and returns the parameter value assigned to # the group assigned to the {randomization_id} and version. config = template.evaluate({ 'randomization_id': "2ac93c28-c459-4760-963d-a3974ec26c04", 'version': "1.0", 'platform': "Android" })Java
randomizationIdऔर किसी भी कस्टम सिग्नल वालाKeysAndValuesकॉन्टेक्स्ट बनाएं. इसके बाद, उसेtemplate.evaluate()को पास करें:// Add custom signals and randomizationId KeysAndValues context = new KeysAndValues.Builder() .put("custom_signal_key", "99") .put("randomizationId", "2ac93c28") .build(); // Evaluate the template with signals ServerConfig config = template.evaluate(context);जाएं
template.Evaluate()कोrandomizationIDऔर कोई कस्टम सिग्नल वाला इवैलुएशन कॉन्टेक्स्ट मैप पास करें:// Add template parameters to `config`. Evaluates the // template and returns the parameter value assigned to // the group assigned to the {randomizationID}, version, and platform. evaluationContext := make(map[string]any) evaluationContext["randomizationID"] = "2ac93c28-c459-4760-963d-a3974ec26c04" evaluationContext["version"] = "1.0" evaluationContext["platform"] = "Android" config, err := template.Evaluate(evaluationContext) if err != nil { log.Fatalln("Error evaluating template:", err) }- अगर प्रतिशत की शर्तों का इस्तेमाल किया जा रहा है, तो रैंडमाइज़ेशन आईडी (
इसके बाद, आकलन किए गए कॉन्फ़िगरेशन ऑब्जेक्ट से, अपनी ज़रूरत के हिसाब से पैरामीटर वैल्यू निकालें. Remote Config से वैल्यू को सही फ़ॉर्मैट में कास्ट करने के लिए, getter मेथड का इस्तेमाल करें.
उदाहरण के लिए, अगर आपको अपने सर्वर पर Agent Platform को लागू करना है और मॉडल और मॉडल पैरामीटर बदलने हैं, तो
model_nameऔरgeneration_configके लिए पैरामीटर कॉन्फ़िगर किए जा सकते हैं. यहां इस्तेमाल किए जा सकने वाले गेटर तरीके दिए गए हैं. साथ ही, हर प्लैटफ़ॉर्म के लिए Remote Config वैल्यू को ऐक्सेस करने का उदाहरण दिया गया है:Node.js
गेटर के ये तरीके इस्तेमाल किए जा सकते हैं:
- बूलियन:
getBoolean - ऑब्जेक्ट:
getValue - नंबर:
getNumber - स्ट्रिंग:
getString
// Replace defaults with values from Remote Config. const generationConfig = JSON.parse( config.getString('generation_config')); const is_ai_enabled = config.getBoolean('is_ai_enabled'); const model = config.getString('model_name'); // Generates a prompt comprised of the Remote Config // parameter and prepends it to the user prompt const prompt = `${config.getString('preamble_prompt')} ${req.query.prompt}`;Python
गेटर के ये तरीके इस्तेमाल किए जा सकते हैं:
- बूलियन:
get_bool - पूरी संख्या:
get_int - फ़्लोट:
get_float - स्ट्रिंग:
get_string - वैल्यू का सोर्स:
get_value_source
# Replace defaults with values from Remote Config. generation_config = json.loads(config.get_string('generation_config')) is_ai_enabled = config.get_bool('is_ai_enabled') model = config.get_string('model_name') # Generates a prompt comprised of the Remote Config # parameter and prepends it to the user prompt. prompt = f"{config.get_string('preamble_prompt')}{req.args.get('prompt')}"Java
गेटर के ये तरीके इस्तेमाल किए जा सकते हैं:
- बूलियन:
getBoolean - स्ट्रिंग:
getString - डबल:
getDouble - लंबा फ़ॉर्मैट:
getLong - वैल्यू का सोर्स:
getValueSource
// Get the model name String modelName = config.getString("model_name"); // Get the origin of value assigned to param ValueSource modelNameSource = config.getValueSource("model_name");getValueSourceतरीका,ValueSourceदिखाता है. इससे पता चलता है कि पैरामीटर की वैल्यू का सोर्सSTATIC,REMOTEयाDEFAULTहै.जाएं
गेटर के ये तरीके इस्तेमाल किए जा सकते हैं:
- बूलियन:
GetBoolean - पूरी संख्या:
GetInt - फ़्लोट:
GetFloat - स्ट्रिंग:
GetString - वैल्यू का सोर्स:
GetValueSource
// Replace defaults with values from Remote Config. // Assume the type generationConfig has been defined var genConfig generationConfig err = json.Unmarshal([]byte(config.GetString("generation_config")), &genConfig) if err != nil { log.Fatalln("Error unmarshaling generation config:", err) } model := config.GetString("model_name") // Parameter created on the console isAIEnabled := config.GetBoolean("is_ai_enabled") // Generates a prompt comprised of the Remote Config // parameter and prepends it to the user prompt (assume it is extracted from the request body) userPrompt := "What is Remote Config?" prompt := fmt.Sprintf("%s %s", config.GetString("preamble_prompt"), userPrompt)- बूलियन:
अगर आपका सर्वर लंबे समय से चल रहा है और सर्वरलेस एनवायरमेंट नहीं है, तो समय-समय पर टेंप्लेट को फिर से लोड करें. उदाहरण के लिए, Node.js में
setIntervalया Java मेंjava.util.Timerका इस्तेमाल करें. इससे यह पुष्टि की जा सकेगी कि आपको Remote Config सर्वर से सबसे अप-टू-डेट टेंप्लेट मिल रहा है.
चौथा चरण: Remote Config में सर्वर के हिसाब से पैरामीटर वैल्यू सेट करना
इसके बाद, सर्वर Remote Config टेंप्लेट बनाएं. साथ ही, अपने ऐप्लिकेशन में इस्तेमाल करने के लिए, पैरामीटर और वैल्यू कॉन्फ़िगर करें.
यहां सर्वर के हिसाब से Remote Config टेंप्लेट बनाने का तरीका बताया गया है:
Firebase कंसोल में, DevOps और यूज़र ऐक्टिविटी > रिमोट कॉन्फ़िगरेशन > पैरामीटर पेज पर जाएं.
पेज पर सबसे ऊपर मौजूद, क्लाइंट/सर्वर सिलेक्टर से सर्वर चुनें.
अपने ऐप्लिकेशन में तय किए गए पैरामीटर के नाम और डेटा टाइप के हिसाब से, Remote Config पैरामीटर तय करें और वैल्यू दें. ये वैल्यू, अपने सर्वर ऐप्लिकेशन को कॉन्फ़िगर करें में सेट किए गए डिफ़ॉल्ट कॉन्फ़िगरेशन (
defaultConfigयाdefault_config) को बदल देंगी. ऐसा तब होगा, जब टेंप्लेट को फ़ेच और उसका आकलन किया जाएगा और इन वैल्यू को आपके वैरिएबल को असाइन किया जाएगा.इसके अलावा, आपके पास ऐसी शर्तें सेट करने का विकल्प होता है जिनसे इंस्टेंस के रैंडम सैंपल या आपके तय किए गए कस्टम सिग्नल पर, वैल्यू लगातार लागू होती रहें. शर्तों के बारे में ज़्यादा जानकारी के लिए, शर्तों के नियम के टाइप देखें.
पैरामीटर जोड़ने के बाद, बदलाव पब्लिश करें पर क्लिक करें.
बदलावों की समीक्षा करें और फिर से बदलावों को पब्लिश करें पर क्लिक करें.
पांचवां चरण: Cloud Functions for Firebase या Cloud Run का इस्तेमाल करके डिप्लॉय करना
अगर आपका सर्वर ऐप्लिकेशन हल्का है और इवेंट के हिसाब से काम करता है, तो आपको Cloud Functions for Firebase का इस्तेमाल करके अपना कोड डिप्लॉय करना चाहिए. उदाहरण के लिए, मान लें कि आपके पास एक ऐसा ऐप्लिकेशन है जिसमें जनरेटिव एआई एपीआई (जैसे, Google AI या Agent Platform) की मदद से, किरदार के डायलॉग शामिल किए गए हैं. इस मामले में, एलएलएम की सेवा देने वाले लॉजिक को ऐसे फ़ंक्शन में होस्ट किया जा सकता है जिसे आपका ऐप्लिकेशन मांग पर कॉल करता है.
सर्वर-साइड Remote Config के साथ दूसरी जनरेशन के Cloud Functions for Firebase का इस्तेमाल करने वाले समाधान के बारे में जानने के लिए, Cloud Functions for Firebase और Agent Platform के साथ सर्वर-साइड Remote Config का इस्तेमाल करना लेख पढ़ें.
Cloud Functions for Firebase की मदद से अपना ऐप्लिकेशन डिप्लॉय करने के बारे में ज़्यादा जानने के लिए, शुरू करें: अपने पहले फ़ंक्शन लिखें, टेस्ट करें, और डिप्लॉय करें लेख पढ़ें.
Remote Config और App Check के साथ Agent Platform Gemini API (formerly Vertex AI) को कॉल करें पर जाकर, सर्वर-साइड Remote Config और App Check के साथ कॉल किए जा सकने वाले फ़ंक्शन का सैंपल आज़माएं.
अगर आपको सर्वर पर रेंडर होने वाला वेब ऐप्लिकेशन बनाना है, तो App Hosting में लोकप्रिय वेब फ़्रेमवर्क के लिए सहायता उपलब्ध है.
अगर ऐसा नहीं है, तो Cloud Run. Cloud Run की मदद से अपने सर्वर ऐप्लिकेशन को डिप्लॉय करने के लिए, अपनी भाषा के हिसाब से क्विकस्टार्ट गाइड देखें:
- क्विकस्टार्ट: Cloud Run पर Node.js सेवा डिप्लॉय करना
- क्विकस्टार्ट: Cloud Run पर Python सेवा डिप्लॉय करना
- क्विकस्टार्ट: Cloud Run पर Java सेवा डिप्लॉय करना
- क्विकस्टार्ट: Cloud Run पर Go सेवा डिप्लॉय करना
अगले चरण
- पैरामीटर और शर्तें (सर्वर-साइड) में जाकर, सर्वर-साइड पैरामीटर और शर्तों के बारे में जानें.
- पूरी तरह से काम करने वाले समाधान का इस्तेमाल करें: Cloud Functions for Firebase और Agent Platform के साथ सर्वर-साइड Remote Config का इस्तेमाल करें.
- Remote Config टेंप्लेट के वर्शन मैनेज करने का तरीका जानें.