सिस्टम के निर्देश, "प्रस्तावना" की तरह होते हैं. इन्हें मॉडल को असली उपयोगकर्ता से कोई और निर्देश मिलने से पहले जोड़ा जाता है. इनकी मदद से, अपनी ज़रूरतों और इस्तेमाल के तरीकों के हिसाब से मॉडल के व्यवहार को कंट्रोल किया जा सकता है.
सिस्टम के निर्देश, सभी Gemini मॉडल के साथ काम करते हैं. ये Imagen मॉडल के साथ काम नहीं करते.
सिस्टम का निर्देश सेट करने पर, मॉडल को टास्क समझने के लिए ज़्यादा जानकारी मिलती है. साथ ही, वह ज़्यादा बेहतर जवाब देता है और मॉडल के साथ उपयोगकर्ता के पूरे इंटरैक्शन के दौरान, खास दिशा-निर्देशों का पालन करता है. सिस्टम के निर्देशों में, प्रॉडक्ट के लेवल पर व्यवहार तय किया जा सकता है. यह असली उपयोगकर्ताओं की ओर से दिए गए प्रॉम्प्ट से अलग होता है. उदाहरण के लिए, इसमें भूमिका या पर्सोना, काम की जानकारी, और फ़ॉर्मैटिंग के निर्देश शामिल किए जा सकते हैं.
सिस्टम के निर्देशों का इस्तेमाल कई तरीकों से किया जा सकता है. जैसे:
- किसी पर्सोना या भूमिका को तय करना (उदाहरण के लिए, चैटबॉट के लिए)
- आउटपुट फ़ॉर्मैट तय करना (मार्कडाउन, YAML वगैरह)
- आउटपुट की स्टाइल और टोन तय करना (उदाहरण के लिए, शब्दों की संख्या, औपचारिकता, और पढ़ने का टारगेट लेवल)
- टास्क के लिए लक्ष्य या नियम तय करना (उदाहरण के लिए, बिना किसी और जानकारी के कोड स्निपेट दिखाना)
- प्रॉम्प्ट के लिए ज़्यादा जानकारी देना (उदाहरण के लिए, नॉलेज कटऑफ़)
सिस्टम का निर्देश सेट करने पर, यह पूरे अनुरोध पर लागू होता है. प्रॉम्प्ट में शामिल होने पर, यह उपयोगकर्ता और मॉडल के कई टर्न में काम करता है. हालांकि, सिस्टम के निर्देश, प्रॉम्प्ट के कॉन्टेंट से अलग होते हैं. फिर भी, ये आपके सभी प्रॉम्प्ट का हिस्सा होते हैं. इसलिए, इन पर डेटा के इस्तेमाल से जुड़ी सामान्य नीतियां लागू होती हैं.
सिस्टम के निर्देश सेट करना
|
इस पेज पर, Gemini API प्रोवाइडर के हिसाब से कॉन्टेंट और कोड देखने के लिए, उस पर क्लिक करें. |
सामान्य इस्तेमाल के मामलों के लिए, सिस्टम के निर्देश सेट करना
Swift
GenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
import FirebaseAILogic
// Specify the system instructions as part of creating the `GenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko.")
)
Kotlin
GenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// Specify the system instructions as part of creating the `GenerativeModel` instance
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") }
)
Java
GenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// Specify the system instructions as part of creating the `GenerativeModel` instance
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
/* modelName */ "GEMINI_MODEL_NAME",
/* generationConfig (optional) */ null,
/* safetySettings (optional) */ null,
/* requestOptions (optional) */ new RequestOptions(),
/* tools (optional) */ null,
/* toolsConfig (optional) */ null,
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
GenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, {
model: "GEMINI_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko."
});
Dart
systemInstruction इंस्टेंस बनाते समय,
तय किया जाता है.GenerativeModel
// ...
// Specify the system instructions as part of creating the `GenerativeModel` instance
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
);
// ...
Unity
GenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
// Specify the system instructions as part of creating the `GenerativeModel` instance
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko.")
);
Gemini Live API के लिए, सिस्टम के निर्देश सेट करना
Swift
LiveModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
// Specify the system instructions as part of creating the `liveModel` instance
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko."),
// ...
)
// ...
Kotlin
LiveModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
modelName = "GEMINI_LIVE_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") },
// ...
)
// ...
Java
LiveModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
/* modelName */ "GEMINI_LIVE_MODEL_NAME",
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
// ...
);
LiveModelFutures liveModel = LiveModelFutures.from(lm);
// ...
Web
LiveGenerativeModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `LiveGenerativeModel` instance
const liveModel = getLiveGenerativeModel(ai, {
model: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko.",
// ...
});
// ...
Dart
इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.LiveGenerativeModel
// ...
// Specify the system instructions as part of creating the `liveGenerativeModel` instance
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_LIVE_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
// ...
);
// ...
Unity
LiveModel इंस्टेंस बनाते समय,
systemInstruction
तय किया जाता है.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko."),
// ...
);
// ...
सिस्टम के निर्देशों के उदाहरण
यहां सिस्टम के निर्देशों के कुछ उदाहरण दिए गए हैं. इनसे मॉडल के अनुमानित व्यवहार को कंट्रोल करने में मदद मिलती है. कुछ उदाहरणों में, ऐसे प्रॉम्प्ट का उदाहरण भी दिखाया गया है जिनके लिए सिस्टम का निर्देश मददगार साबित होगा.
कोड जनरेशन
सिस्टम का निर्देश:
आप कोडिंग के विशेषज्ञ हैं. आपको फ़्रंटएंड इंटरफ़ेस के लिए कोड रेंडर करने में महारत हासिल है. जब मैं अपनी बनाई जाने वाली वेबसाइट के किसी कॉम्पोनेंट के बारे में बताऊं, तो कृपया उसे बनाने के लिए ज़रूरी एचटीएमएल और सीएसएस कोड दें. इस कोड के बारे में कोई जानकारी न दें. यूआई डिज़ाइन के कुछ सुझाव भी दें.उपयोगकर्ता का प्रॉम्प्ट:
पेज के बीच में एक बॉक्स बनाएं. इसमें कैप्शन के साथ, घूमने वाली इमेज का कलेक्शन शामिल करें. पेज के बीच में मौजूद इमेज के पीछे शैडोइंग होनी चाहिए, ताकि वह अलग से दिखे. इसे साइट के किसी दूसरे पेज से भी लिंक किया जाना चाहिए. यूआरएल को खाली छोड़ें, ताकि मैं उसे भर सकूं.
संगीत से जुड़ा चैटबॉट
सिस्टम का निर्देश:
आप संगीत के इतिहासकार के तौर पर जवाब देंगे. साथ ही, संगीत की अलग-अलग शैलियों के बारे में पूरी जानकारी देंगे और उनसे जुड़े उदाहरण देंगे. आपकी टोन उत्साहित और जोश से भरी होगी, ताकि संगीत का आनंद फैलाया जा सके. अगर कोई सवाल संगीत से जुड़ा नहीं है, तो जवाब में "मुझे इसकी जानकारी नहीं है" लिखा होना चाहिए.उपयोगकर्ता का प्रॉम्प्ट:
अगर किसी व्यक्ति का जन्म 1960 के दशक में हुआ था, तो उस समय संगीत की सबसे लोकप्रिय शैली कौनसी थी? बुलेट पॉइंट में पांच गानों की सूची बनाएं.
फ़ॉर्मैट किया गया डेटा जनरेट करना
सिस्टम का निर्देश:
आप घर पर खाना बनाने वाले लोगों के लिए एक असिस्टेंट हैं. आपको सामग्री की सूची मिलती है और आप उन सामग्रियों का इस्तेमाल करके बनाई जा सकने वाली रेसिपी की सूची के साथ जवाब देते हैं. जिन रेसिपी के लिए किसी अन्य सामग्री की ज़रूरत नहीं होती उन्हें हमेशा उन रेसिपी से पहले लिस्ट किया जाना चाहिए जिनके लिए अन्य सामग्री की ज़रूरत होती है.आपका जवाब, JSON ऑब्जेक्ट होना चाहिए. इसमें तीन रेसिपी शामिल होनी चाहिए. रेसिपी ऑब्जेक्ट का स्कीमा इस तरह होना चाहिए:
- name: रेसिपी का नाम
- usedIngredients: रेसिपी में इस्तेमाल की गई वे सामग्रियां जो सूची में दी गई थीं
- otherIngredients: रेसिपी में इस्तेमाल की गई वे सामग्रियां जो सूची में नहीं दी गई थीं (अगर कोई अन्य सामग्री नहीं है, तो इसे छोड़ दिया जाता है)
- description: रेसिपी की कम शब्दों में जानकारी. इसे इस तरह लिखा जाना चाहिए, जैसे इसे बेचा जा रहा हो
उपयोगकर्ता का प्रॉम्प्ट:
- फ़्रोज़न ब्रोकली का 1 एलबी बैग
- गाढ़ी क्रीम का 1 पिंट
- चीज़ के टुकड़ों और स्लाइस का 1 एलबी पैक
कॉन्टेंट जनरेट करने को कंट्रोल करने के अन्य विकल्प
- प्रॉम्प्ट डिज़ाइन के बारे में ज़्यादा जानें, ताकि मॉडल को अपनी ज़रूरतों के हिसाब से आउटपुट जनरेट करने के लिए प्रभावित किया जा सके.
- मॉडल के पैरामीटर कॉन्फ़िगर करें, ताकि यह कंट्रोल किया जा सके कि मॉडल जवाब कैसे जनरेट करता है. Gemini मॉडल के लिए, इन पैरामीटर में ज़्यादा से ज़्यादा आउटपुट टोकन, बार-बार इस्तेमाल होने वाले आउटपुट टोकन की संभावना वगैरह शामिल हैं. वहीं, Imagen मॉडल के लिए, इनमें आसपेक्ट रेशियो, व्यक्ति जनरेशन, वॉटरमार्किंग वगैरह शामिल हैं.
- सेफ़्टी सेटिंग का इस्तेमाल करके, ऐसे जवाब मिलने की संभावना को कम करें जिन्हें नुकसान पहुंचाने वाला माना जा सकता है. इनमें नफ़रत फैलाने वाली भाषा और साफ़ तौर पर सेक्शुअल ऐक्ट दिखाने वाला कॉन्टेंट शामिल है.
- किसी खास आउटपुट स्कीमा को तय करने के लिए, प्रॉम्प्ट के साथ रिस्पॉन्स स्कीमा पास करें. इस सुविधा का इस्तेमाल आम तौर पर, JSON आउटपुट जनरेट करते समय किया जाता है. हालांकि, इसका इस्तेमाल क्लासिफ़िकेशन टास्क के लिए भी किया जा सकता है. जैसे, जब आपको मॉडल से खास लेबल या टैग का इस्तेमाल कराना हो.