System prompt और temperature: वे क्या करते हैं और उन्हें कैसे सेट करें
OpenAI-संगत अनुरोध में system संदेश और temperature क्या करते हैं, Python और curl उदाहरणों के साथ जिन्हें आप CheapTokens मॉडल पर भेज सकते हैं।

इस पृष्ठ पर
एक system prompt system रोल वाला संदेश होता है जो मॉडल को हर उत्तर में व्यवहार करने का तरीका बताता है: वह कौन है, कौन-सा फ़ॉर्मैट इस्तेमाल करना है, किससे बचना है। Temperature एक संख्या है, आमतौर पर 0 से 2 के बीच (रेंज मॉडल पर निर्भर करती है), जो तय करती है कि शब्दावली कितनी बदल सकती है: कम मान केंद्रित, दोहराने योग्य उत्तर देते हैं, अधिक मान अधिक विविध उत्तर देते हैं। दोनों एक ही Chat Completions अनुरोध में जाते हैं, जिसे आप https:/ पर भेजते हैं।
नीचे: हर एक क्या है, किन मानों से शुरुआत करें, और एक अनुरोध जिसे आप Python या curl में चला सकते हैं। अगर आपने अभी तक कोई अनुरोध नहीं भेजा है, तो CheapTokens के साथ अपने पहले API अनुरोध से शुरू करें।
system prompt क्या है?#
एक chat अनुरोध संदेशों की सूची है, और हर संदेश का एक रोल होता है। Chat Completions संदर्भ चार सूचीबद्ध करता है: system, user, assistant और tool (DeepSeek API संदर्भ, 22 अक्टूबर 2026 को जाँचा गया)। पहले अनुरोध के लिए आपको तीन चाहिए:
system— आपकी, डेवलपर की, स्थायी निर्देश। मॉडल इन्हें बातचीत के नियम मानता है।user— इस टर्न में व्यक्ति क्या पूछता या देता है।assistant— मॉडल के पिछले उत्तर। बातचीत जारी रखते समय आप इन्हें स्वयं जोड़ते हैं।
एक system संदेश के लिए role को system पर सेट करना और content को स्ट्रिंग के रूप में देना आवश्यक है। name फ़ील्ड वैकल्पिक है।
"messages": [
{"role": "system", "content": "You are an editor. Rewrite the user's text to be shorter and friendlier. Return only the rewritten text."},
{"role": "user", "content": "Send me the report by tonight or I will be upset."}
]system संदेश पहले आता है। user संदेश वास्तविक कार्य है।
उपयोगी system prompt कैसे लिखें#
- एक वाक्य में बताएँ कि मॉडल क्या कर रहा है: "You are an editor", "You classify support tickets"।
- आउटपुट फ़ॉर्मैट बताएँ: "Return only the rewritten text", "Answer in two sentences", "Reply with valid JSON"।
- नियम छोटे, सीधे वाक्यों में दें। कई स्पष्ट पंक्तियाँ एक लंबे पैराग्राफ़ से बेहतर काम करती हैं।
- इसे छोटा रखें। system prompt हर अनुरोध के साथ भेजा जाता है और इनपुट टोकन के रूप में गिना जाता है, इसलिए लंबे वाले का भुगतान हर बार होता है। इनपुट और आउटपुट का बिलिंग कैसे होता है, यह input vs output tokens में है।
temperature क्या करता है?#
मॉडल हर अगला टोकन संभावित उम्मीदवारों के एक सेट से चुनता है। Temperature नियंत्रित करता है कि वह सबसे संभावित वाले पर कितनी सख्ती से टिकता है। DeepSeek API संदर्भ (22 अक्टूबर 2026 को जाँचा गया) के अनुसार, temperature 0 से 2 तक के मान स्वीकार करता है, डिफ़ॉल्ट 1 के साथ: अधिक मान अधिक यादृच्छिक आउटपुट देते हैं, कम मान अधिक केंद्रित, नियतात्मक आउटपुट देते हैं। रेंज मॉडल के बीच भिन्न होती हैं: DeepSeek 0 से 2 दस्तावेज़ित करता है, Z.ai GLM-5.3 के लिए 0 से 1 दस्तावेज़ित करता है (दोनों 22 अक्टूबर 2026 को जाँचे गए), इसलिए 0 से 1 के मान दोनों पर सुरक्षित हैं। अपने मॉडल की रेंज डॉक्स में देखें।
शुरुआती बिंदु जो अधिकांश कार्यों के लिए काम करते हैं। ये अंगूठे के नियम हैं, गारंटी नहीं:
तालिका को दाईं ओर स्क्रॉल करें →
| कार्य | इससे शुरू करें |
|---|---|
| निष्कर्षण, वर्गीकरण, कोड, सख्त फ़ॉर्मैट | 0 से 0.3 |
| प्रश्नोत्तर, सारांश, पुनर्लेखन | 0.3 से 0.7 |
| विचार-मंथन, नाम, रचनात्मक पाठ | 0.8 से 1 |
तीन बातें जानने योग्य:
- कम temperature अधिक दोहराने योग्य है, समान नहीं। बाइट-दर-बाइट समान उत्तरों पर भरोसा न करें।
- temperature या top_p बदलें, दोनों नहीं। यह DeepSeek की सिफ़ारिश है;
top_pएक दूसरा सैंपलिंग पैरामीटर है जिसका डिफ़ॉल्ट 1 है। सीखते समय इसे अकेला छोड़ दें। - कुछ मोड temperature को अनदेखा करते हैं। DeepSeek संदर्भ कहता है कि thinking मोड में temperature का कोई प्रभाव नहीं होता, और non-thinking मोड में
top_p1.0 पर स्थिर है। अगर आप कोई मान बदलते हैं और कोई अंतर नहीं दिखता, तो पहले मॉडल का मोड जाँचें।
दोनों के साथ एक अनुरोध भेजें#
कुंजी को एनवायरनमेंट वेरिएबल के रूप में सेट करें, ताकि वह कभी कोड में न आए (API key क्या है और इसे सुरक्षित रूप से कैसे स्टोर करें देखें)। सटीक मॉडल id CheapTokens डॉक्स से लें: अलग-अलग प्रदाता एक ही मॉडल को अलग नाम देते हैं। यह उदाहरण MiniMax-M2.7 का उपयोग करता है।
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7",
messages=[
{"role": "system", "content": "You are an editor. Rewrite the user's text to be shorter and friendlier. Return only the rewritten text."},
{"role": "user", "content": "Send me the report by tonight or I will be upset."},
],
temperature=0.3,
max_tokens=1000,
)
print(response.choices[0].message.content)
print(response.choices[0].finish_reason)curl के साथ वही अनुरोध:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [
{"role": "system", "content": "You are an editor. Rewrite the user'\''s text to be shorter and friendlier. Return only the rewritten text."},
{"role": "user", "content": "Send me the report by tonight or I will be upset."}
],
"temperature": 0.3,
"max_tokens": 1000
}'आपको क्या दिखना चाहिए: वाक्य का एक छोटा, अधिक मैत्रीपूर्ण संस्करण और finish_reason के रूप में stop। अगर finish_reason length है, तो उत्तर max_tokens सीमा तक पहुँच गया; AI उत्तर वाक्य के बीच में क्यों रुकता है देखें।
temperature को काम करते देखें#
temperature को समझने का सबसे अच्छा तरीका एक ही प्रश्न को कई बार पूछना है। यह लूप ऊपर के उदाहरण से client का उपयोग करते हुए एक छोटा अनुरोध 0 पर तीन बार और 1 पर तीन बार भेजता है:
for temp in (0, 1):
print("temperature", temp)
for _ in range(3):
r = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7",
messages=[
{"role": "system", "content": "Answer with one word."},
{"role": "user", "content": "Name a fruit."},
],
temperature=temp,
max_tokens=500,
)
print(" ", r.choices[0].message.content)0 पर तीन पंक्तियाँ आमतौर पर एक ही शब्द होती हैं; 1 पर आप आमतौर पर अधिक अलग शब्द देखेंगे। जो मॉडल उत्तर देने से पहले सोचते हैं, वे उस सोच पर max_tokens का कुछ हिस्सा खर्च कर सकते हैं, इसलिए एक-शब्द के उत्तर के लिए भी सीमा उदार रखें। फिर केवल system prompt बदलें (उदाहरण के लिए, "Answer with one word, in French") और इसे फिर से चलाएँ: system संदेश के नियम हर temperature पर लागू होते हैं।
ऐसे प्रयोग छोटे होते हैं। मोटे अंदाज़े के लिए, यहाँ लगभग 120 इनपुट और 80 आउटपुट टोकन वाले 100 अनुरोधों की लागत है (एक उदाहरण वर्कलोड; टोकन की संख्या आपके प्रॉम्प्ट पर निर्भर करती है):
| मॉडल | इनपुट $/1M | आउटपुट $/1M | प्रति अनुरोध | 100 अनुरोध | OpenRouter, 100 अनुरोध |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.0000056 | $0.00056 | $0.0011 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.0000098 | $0.00098 | $0.0018 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.000018 | $0.0018 | $0.0132 |
प्रति अनुरोध 120 इनपुट और 80 आउटपुट टोकन। प्रति 1M टोकन की कीमतें वर्तमान हैं और हमारे टैरिफ के साथ बदलती रहती हैं; OpenRouter कॉलम समान कार्यभार के लिए संदर्भ कीमतें दिखाता है।
इसे किस मॉडल पर आज़माएँ#
- MiniMax-M2.7 कई छोटे परीक्षण अनुरोधों के लिए एक अच्छा पहला विकल्प है, और आप उत्तरों की तुलना करने के लिए उसी system prompt को उस पर दोबारा इस्तेमाल कर सकते हैं: 180K कॉन्टेक्स्ट, 8,192 आउटपुट टोकन तक, दोनों तरफ़ OpenRouter के संदर्भ मूल्य से सस्ता। वर्तमान मूल्य: इनपुट $0.05, आउटपुट $0.15 प्रति 1M टोकन।
एक बैलेंस उन सभी को कवर करता है, इसलिए मॉडल बदलना model का एक-पंक्ति का बदलाव है। सभी वर्तमान मूल्य मूल्य पृष्ठ पर हैं।
अगर यह काम न करे#
- 401 या प्रमाणीकरण त्रुटि: कुंजी गायब है, गलत टाइप की गई है या इस टर्मिनल में एनवायरनमेंट वेरिएबल सेट नहीं है।
echo $CHEAPTOKENS_जाँचें।API_ KEY - Model not found: मॉडल id को डॉक्स से ठीक वैसे ही कॉपी करें, प्रीफ़िक्स सहित।
- अमान्य पैरामीटर के बारे में त्रुटि:
temperatureको अपने मॉडल की समर्थित रेंज के भीतर रखें (0 से 1 सुरक्षित है) और संख्याएँ पास करें, स्ट्रिंग नहीं। - मॉडल आपके नियम को अनदेखा करता है: इसे एक छोटा, सीधा वाक्य बनाएँ, इसे system संदेश के शीर्ष पर ले जाएँ, और जो सटीक फ़ॉर्मैट आप चाहते हैं उसे दोहराएँ।
- temperature बदलने से कुछ नहीं बदलता: हो सकता है आप ऐसा मोड इस्तेमाल कर रहे हों जो इसे अनदेखा करता है (ऊपर देखें), या उत्तर इतना सीमित है ("one word", "valid JSON") कि बहुत कम विविधताएँ मौजूद हैं।
- उत्तर कट गया है:
max_tokensबढ़ाएँ; max_tokens गाइड बताता है कि कैसे।
अगला कदम#
system संदेश में एक स्पष्ट नियम रखें, तालिका से एक temperature चुनें, और अपने स्वयं के कार्य पर ऊपर का लूप चलाएँ। जब परिणाम वही हो जो आप चाहते हैं, तो system prompt को छोटा रखें और उसे दोबारा इस्तेमाल करें। कुंजी प्राप्त करें और वर्तमान मूल्य डॉक्स में देखें।



