पाठ 4 / 25
Token Budget का आवंटन
हर खंड को हिस्सा और कटौती प्राथमिकता दें।
आरक्षित करें, बाँटें, क्रम से काटें
Window आकार से शुरू करें, अनुमत सबसे लंबे उत्तर के लिए आउटपुट tokens आरक्षित करें, और हर खंड को budget दें। अनुरोध बहुत बड़ा हो तो स्पष्ट प्राथमिकता से काटें: system नियम या वर्तमान प्रश्न कभी न हटाएँ; दस्तावेज़ों को सबसे अच्छे कुछ तक काटें, फिर पुरानी history का सार बनाएँ या काटें, फिर उदाहरण घटाएँ। इसे code के रूप में लिखना व्यवहार को अनुमान-योग्य और testable बनाता है, production में API त्रुटि या चुपचाप कटौती के बजाय। कटौती होने पर log करें: बार-बार कटौती retrieval या summarisation सुधारने का संकेत है।
ख़त्म होने से पहले बँटवारा तय करें
Token budget overflow को crash से नीति में बदल देता है।
कटौती प्राथमिकता वाला budget, चलाकर
मैंने यह सादे Python 3 (सिर्फ़ standard library) से चलाया; डेटा गढ़ा हुआ उदाहरण डेटा है। 8,000-token window में 1,000 आउटपुट के लिए आरक्षित करने पर इनपुट को 7,000 बचते हैं। अनुरोध 8,620 माँगता है, इसलिए code दस्तावेज़ों को 1,620 काटता है और system नियम, उदाहरण, history और प्रश्न अछूते छोड़ता है।
window = 8000 # model context window (tokens)
reserve_output = 1000 # room for the answer
parts = {"system": 600, "examples": 1200, "history": 2600, "documents": 4100, "question": 120}
budget = window - reserve_output
used = sum(parts.values())
print("budget for input:", budget, "| requested:", used, "| over by:", used - budget)
# trim in priority order: documents first, then history; never system or question
for name in ["documents", "history", "examples"]:
over = sum(parts.values()) - budget
if over <= 0:
break
cut = min(over, parts[name])
parts[name] -= cut
print(f"trim {name:<9} by {cut}")
print("final:", parts, "| total:", sum(parts.values()))
Output:
budget for input: 7000 | requested: 8620 | over by: 1620
trim documents by 1620
final: {'system': 600, 'examples': 1200, 'history': 2600, 'documents': 2480, 'question': 120} | total: 7000Overflow रास्ता परखें
बहुत बड़ी history और दस्तावेज़ों वाला test लिखें; overflow रास्ता ही production में टूटता है।
त्वरित जाँच: आम तौर पर क्या कभी नहीं काटना चाहिए?
- कम score वाले दस्तावेज़
- System नियम और वर्तमान प्रश्न
- बहुत पुराने history turns
- अतिरिक्त उदाहरण
Answer
System नियम और वर्तमान प्रश्न — सबसे कम मूल्यवान सामग्री पहले काटें।