मॉडल को भेजे गए हर कॉल में पैरामीटर वैल्यू शामिल होती हैं. इनसे यह कंट्रोल होता है कि मॉडल, जवाब कैसे जनरेट करता है. मॉडल, अलग-अलग पैरामीटर वैल्यू के लिए अलग-अलग नतीजे जनरेट कर सकता है. टास्क के लिए सबसे अच्छी वैल्यू पाने के लिए, पैरामीटर की अलग-अलग वैल्यू आज़माएं. अलग-अलग मॉडल के लिए उपलब्ध पैरामीटर अलग-अलग हो सकते हैं.
कॉन्फ़िगरेशन, शुरू की गई Vertex AI सेवा और मॉडल इंस्टेंस के लाइफ़टाइम के लिए बनाए रखा जाता है. मॉडल कॉन्फ़िगरेशन को अपडेट करने के लिए, मॉडल इंस्टेंस को फिर से शुरू करना होगा.
इस पेज पर आगे, मॉडल पैरामीटर कॉन्फ़िगर करने का तरीका जानें.
हर पैरामीटर के बारे में जानकारी
सबसे सामान्य पैरामीटर ये हैं:
इस पेज के नीचे दिए गए सेक्शन में, इनमें से हर पैरामीटर के बारे में जानें.
ज़्यादा से ज़्यादा आउटपुट टोकन
जवाब में जनरेट किए जा सकने वाले टोकन की ज़्यादा से ज़्यादा संख्या. टोकन में करीब चार वर्ण होते हैं. 100 टोकन, करीब 20 शब्दों के बराबर होते हैं.
कम शब्दों वाले जवाबों के लिए कम वैल्यू और ज़्यादा शब्दों वाले जवाबों के लिए ज़्यादा वैल्यू डालें.
तापमान
रिस्पॉन्स जनरेट करने के दौरान, तापमान का इस्तेमाल सैंपलिंग के लिए किया जाता है. ऐसा तब होता है, जब topP
और topK
लागू किए जाते हैं. तापमान से, टोकन चुनने के लिए रैंडम तरीके से तय किए गए आंकड़े की डिग्री कंट्रोल होती है. कम तापमान, उन प्रॉम्प्ट के लिए अच्छा होता है जिनके लिए ज़्यादा सटीक और कम ओपन-एंड या क्रिएटिव जवाब की ज़रूरत होती है. वहीं, ज़्यादा तापमान से अलग-अलग या क्रिएटिव नतीजे मिल सकते हैं. 0
का तापमान, डिटरमिनिस्टिक होता है. इसका मतलब है कि सबसे ज़्यादा संभावना वाले जवाब को हमेशा चुना जाता है.
ज़्यादातर इस्तेमाल के उदाहरणों के लिए, 0.2
के तापमान से शुरू करें. अगर मॉडल का जवाब बहुत सामान्य, बहुत छोटा या फ़ॉलबैक जवाब है, तो टेम्परेचर बढ़ाकर देखें.
टॉप-K
Top-K से, मॉडल के आउटपुट के लिए टोकन चुनने के तरीके में बदलाव होता है. 1
के लिए टॉप-K का मतलब है कि चुना गया अगला टोकन, मॉडल की शब्दावली (जिसे ग्रैडी डीकोडिंग भी कहा जाता है) में मौजूद सभी टोकन में से सबसे ज़्यादा संभावना वाला टोकन है. वहीं, 3
के लिए टॉप-K का मतलब है कि अगला टोकन, टेम्परेचर का इस्तेमाल करके सबसे ज़्यादा संभावना वाले तीन टोकन में से चुना जाता है.
टोकन चुनने के हर चरण के लिए, सबसे ज़्यादा संभावना वाले टॉप-K टोकन सैंपल किए जाते हैं. इसके बाद, टोकन को टॉप-P के आधार पर और फ़िल्टर किया जाता है. साथ ही, टेंपरेचर सैंपलिंग का इस्तेमाल करके आखिरी टोकन चुना जाता है.
कम यादृच्छिक जवाबों के लिए कम वैल्यू और ज़्यादा यादृच्छिक जवाबों के लिए ज़्यादा वैल्यू डालें. डिफ़ॉल्ट तौर पर, टॉप-K की वैल्यू 40
होती है.
Top-P
Top-P, मॉडल के आउटपुट के लिए टोकन चुनने के तरीके में बदलाव करता है. टोकन को सबसे ज़्यादा (टॉप-K देखें) से लेकर सबसे कम संभावना वाले टोकन तक तब तक चुना जाता है, जब तक उनकी संभावनाओं का योग टॉप-P वैल्यू के बराबर न हो जाए. उदाहरण के लिए, अगर टोकन A, B, और C की संभावना 0.3, 0.2, और 0.1 है और टॉप-P वैल्यू 0.5
है, तो मॉडल अगले टोकन के तौर पर A या B को चुनेगा. इसके लिए, वह टेम्परेचर का इस्तेमाल करेगा और C को उम्मीदवार के तौर पर शामिल नहीं करेगा.
कम यादृच्छिक जवाबों के लिए कम वैल्यू और ज़्यादा यादृच्छिक जवाबों के लिए ज़्यादा वैल्यू डालें. डिफ़ॉल्ट तौर पर, top-P 0.95
होता है.
मॉडल के पैरामीटर कॉन्फ़िगर करना
मॉडल को शुरू करने के दौरान, generationConfig
में मॉडल पैरामीटर कॉन्फ़िगर किए जाते हैं. यहां एक बुनियादी उदाहरण दिया गया है:
Kotlin+KTX
// ...
val config = generationConfig {
maxOutputTokens = 200
stopSequences = listOf("red")
temperature = 0.9f
topK = 16
topP = 0.1f
}
val generativeModel = Firebase.vertexAI.generativeModel(
modelName = "MODEL_NAME",
generationConfig = config
)
// ...
Java
// ...
GenerationConfig.Builder configBuilder = new GenerationConfig.Builder();
configBuilder.maxOutputTokens = 200;
configBuilder.stopSequences = List.of("red");
configBuilder.temperature = 0.9f;
configBuilder.topK = 16;
configBuilder.topP = 0.1f;
GenerationConfig generationConfig = configBuilder.build();
GenerativeModel gm = FirebaseVertexAI.getInstance().generativeModel(
"MODEL_NAME",
generationConfig
);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// ...
कॉन्टेंट जनरेशन को कंट्रोल करने के अन्य विकल्प
- प्रॉम्प्ट डिज़ाइन के बारे में ज़्यादा जानें, ताकि आप अपनी ज़रूरतों के हिसाब से आउटपुट जनरेट करने के लिए, मॉडल पर असर डाल सकें.
- सुरक्षा सेटिंग का इस्तेमाल करके, ऐसे जवाबों के मिलने की संभावना को कम करें जिन्हें नुकसान पहुंचाने वाला माना जा सकता है. इनमें नफ़रत फैलाने वाली भाषा और साफ़ तौर पर सेक्शुअल ऐक्ट दिखाने वाला कॉन्टेंट शामिल है.
- मॉडल के व्यवहार को कंट्रोल करने के लिए, सिस्टम के निर्देश सेट करें. यह सुविधा, "प्रीऐब्सटेंस" की तरह है. इसे मॉडल को असली उपयोगकर्ता से मिलने वाले निर्देशों के ज़रिए इस्तेमाल करने से पहले जोड़ा जाता है.
- किसी खास आउटपुट स्कीमा की जानकारी देने के लिए, प्रॉम्प्ट के साथ रिस्पॉन्स स्कीमा पास करें. आम तौर पर, JSON आउटपुट जनरेट करने के लिए इस सुविधा का इस्तेमाल किया जाता है. हालांकि, इसका इस्तेमाल वर्गीकरण के टास्क के लिए भी किया जा सकता है. जैसे, जब आपको मॉडल को खास लेबल या टैग का इस्तेमाल करना हो.