इस पेज पर, सर्वर प्रॉम्प्ट टेंप्लेट के लिए कुछ सबसे सही तरीके और ध्यान रखने वाली बातें बताई गई हैं. इनमें अभी तक उपलब्ध नहीं कराई गई सुविधाएं भी शामिल हैं. ध्यान दें कि इनमें से कई सुविधाएं, सर्वर प्रॉम्ट टेंप्लेट की शुरुआती रिलीज़ में उपलब्ध नहीं हैं. इसलिए, अपडेट के लिए रिलीज़ नोट देखें!
सबसे सही तरीके
इनमें से कई सबसे सही तरीकों के बारे में, अपने टेंप्लेट मैनेज करना लेख में भी बताया गया है.
अपने टेंप्लेट का वर्शन बनाना
ऐसे टेंप्लेट आईडी बनाएं जिनमें सिमैंटिक वर्शनिंग (सेमवर) का इस्तेमाल करने वाले वर्शन जोड़े गए हों.
Firebase Remote Config का इस्तेमाल करें, ताकि आप अपने अनुरोध में टेंप्लेट और अन्य वैल्यू आसानी से बदल सकें.
अपने टेंप्लेट को सुरक्षित रखना
प्रोडक्शन के लिए रिलीज़ करने से पहले, अपने टेंप्लेट को लॉक करें. साथ ही, प्रोडक्शन में इस्तेमाल किए जा रहे टेंप्लेट में बदलाव न करें.
टेंप्लेट को लॉक करने से, अनजाने में होने वाले बदलावों से सुरक्षा मिलती है. हालांकि, लॉक करने से, बदलाव करने की सुविधा पूरी तरह से बंद नहीं होती है. प्रोजेक्ट का कोई सदस्य, टेंप्लेट में बदलाव करने के लिए उसे कभी भी अनलॉक कर सकता है. इसके लिए, उसके पास ज़रूरी अनुमतियां होनी चाहिए.
हमारा सुझाव है कि उन टेंप्लेट को लॉक कर दें जिनका इस्तेमाल कोड में किया जा रहा है. खास तौर पर, प्रोडक्शन कोड में.
अपने इनपुट वैरिएबल के लिए, इनपुट की पुष्टि करने की सुविधा को बेहतर तरीके से लागू करें. इससे आपको इन कामों में मदद मिल सकती है:
- इससे प्रॉम्प्ट इंजेक्शन (ग़लत निर्देशों) से बचने में मदद मिल सकती है.
- इससे यह पक्का करने में मदद मिलती है कि अनुरोध पूरे हो जाएं और जवाब आपकी उम्मीद के मुताबिक हों.
ऐसी सुविधाएं जो अभी काम नहीं करती हैं
इनमें से कई सुविधाएं, शुरुआती रिलीज़ में उपलब्ध नहीं हैं. इसलिए, अपडेट के लिए रिलीज़ नोट देखें!
Firebase AI Logic की ऐसी सुविधाएं जो फ़िलहाल उपलब्ध नहीं हैं
सर्वर प्रॉम्प्ट टेंप्लेट में, फ़िलहाल Firebase AI Logic की इन सुविधाओं का इस्तेमाल नहीं किया जा सकता. इनमें से कई सुविधाएं जल्द ही उपलब्ध होंगी!
- चैट
- टूल का इस्तेमाल करना. इनमें फ़ंक्शन कॉलिंग और Google Search के साथ ग्राउंडिंग शामिल है
- Gemini मॉडल की मदद से, इमेज में बार-बार बदलाव करना (चैट की सुविधा ज़रूरी है)
- Imagen मॉडल की मदद से इमेज में बदलाव करना
- दोनों दिशाओं में स्ट्रीमिंग (Gemini Live API)
- हाइब्रिड ऑन-डिवाइस
- आउटपुट को एनम की सूची तक सीमित करना
यह भी ध्यान दें कि अगर Firebase console में एआई मॉनिटरिंग का इस्तेमाल किया जाता है, तो किसी भी रिकॉर्ड में टेंप्लेट आईडी अभी तक नहीं भरा गया है.
Dotprompt के ऐसे सामान्य एलिमेंट जो अब तक काम नहीं करते हैं
सर्वर प्रॉम्प्ट टेंप्लेट में, Dotprompt के इन सामान्य एलिमेंट के लिए जल्द ही सहायता उपलब्ध होगी:
अपने फ़्रंटमैटर में इनपुट और आउटपुट स्कीमा के लिए, JSON स्कीमा स्पेसिफ़िकेशन का इस्तेमाल करें.
- ध्यान दें कि यह स्पेसिफ़िकेशन, सर्वर टेंप्लेट के अलावा अन्य टेंप्लेट के अनुरोधों के साथ भी काम नहीं करता. फ़िलहाल, हम सिर्फ़ OpenAPI स्कीमा स्पेसिफ़िकेशन का इस्तेमाल करते हैं.
*का इस्तेमाल करके, वाइल्डकार्ड फ़ील्ड की परिभाषा तय करना.@keyका इस्तेमाल करना या आम तौर पर किसी ऑब्जेक्ट इनपुट के फ़ील्ड पर बार-बार काम करना (यह वह स्थिति है जहां@keyकाम का है).@rootका इस्तेमाल करके, जो आपको मौजूदाthisके बावजूद रूट वैरिएबल के कॉन्टेक्स्ट को रेफ़रंस करने की सुविधा देता है.
सर्वर प्रॉम्प्ट टेंप्लेट में, Dotprompt के इन सामान्य एलिमेंट का इस्तेमाल शायद नहीं किया जा सकेगा:
- पार्शियल का इस्तेमाल करके. ये ऐसे टेंप्लेट स्निपेट होते हैं जिन्हें दोबारा इस्तेमाल किया जा सकता है और दूसरे टेंप्लेट में शामिल किया जा सकता है.
दूसरी ज़रूरी बातें
डिफ़ॉल्ट रूप से, Firebase कंसोल में गाइडेड यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करने पर, हम Firebase AI Logic के लिए उपलब्ध सभी इलाकों में टेंप्लेट उपलब्ध कराते हैं. अगर Vertex AI Gemini API का इस्तेमाल किया जाता है और इस्तेमाल के लिए बताए गए मामले में, जगह के हिसाब से पाबंदियां लगाने की ज़रूरत है, तो REST API का इस्तेमाल करके, अपने टेंप्लेट के लिए जगह की जानकारी दी जा सकती है.
अगर आपको Firebase कंसोल के गाइडेड यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करने के बजाय, सर्वर प्रॉम्प्ट टेंप्लेट को फ़ाइल के तौर पर उपलब्ध कराना है, तो REST API का इस्तेमाल किया जा सकता है. ध्यान दें कि सर्वर प्रॉम्प्ट टेंप्लेट, ऐप्लिकेशन कोड में तय किए गए और टेंप्लेट में पास किए गए स्कीमा के साथ काम नहीं करते.
टेंप्लेट सर्वर पर मौजूद होने के बावजूद, यह आपके Firebase प्रोजेक्ट के अन्य सर्वर-साइड संसाधनों (जैसे कि डेटाबेस) के साथ सीधे तौर पर इंटरैक्ट नहीं कर सकता. सिर्फ़ Cloud Storage for Firebase यूआरएल के साथ इंटरैक्ट किया जा सकता है.Cloud Storage for Firebase यूआरएल को इनपुट वैरिएबल के तौर पर दिया जा सकता है.