पाठ 10 / 29

चरण-दर-चरण Reasoning (Chain of Thought)

जिन समस्याओं को चाहिए उनमें बीच के चरण माँगें।

हल करने की जगह

बहु-चरणीय समस्याओं (अंकगणित, तर्क, योजना, कोड विश्लेषण) में उत्तर से पहले मॉडल के बीच के चरण लिखने पर सटीकता अक्सर सुधरती है, क्योंकि हर बना चरण अगले के लिए संदर्भ बन जाता है। आम शब्दांकन: "इसे चरण-दर-चरण हल करो, फिर अंतिम उत्तर Final answer: से शुरू होने वाली पंक्ति में दो"। उत्तर को निश्चित पंक्ति में रखने से उसे parse करना आसान होता है। ध्यान दें कि नए reasoning models यह भीतर ही करते हैं, और उनके लिए लंबे दिखाई देने वाले चरण थोपना कुछ नहीं जोड़ सकता; अपने मॉडल का मार्गदर्शन देखें। व्याख्या को प्रमाण न मानें: धाराप्रवाह श्रृंखला में भी ग़लत चरण हो सकता है।

चरणों में सोचें, नतीजा जाँचें

जटिल कार्य तब सुधरते हैं जब चरणों में बाँटे जाएँ, कई बार sample हों या सत्यापित हों।

चार औज़ार: चरण-दर-चरण, वोट, chain, verify।
चित्र 3.1 — चरण-दर-चरण, वोट, chain और verify।

चरण-दर-चरण उत्तर parse करना, चलाकर

मैंने यह सादा-Python (सिर्फ़ standard library) उदाहरण चलाया। उत्तर (format दिखाने को हाथ से लिखा) चरण और Final answer: पंक्ति दिखाता है। कोड 54 निकालता है और स्वतंत्र रूप से 12 x 5 घटा 10% = 54.0 दोबारा गणित करता है।

import re

reply = """Step 1: 12 pens at 5 rupees each cost 12 * 5 = 60.
Step 2: A 10 percent discount is 6.
Step 3: 60 - 6 = 54.
Final answer: 54"""

m = re.search(r"Final answer:\s*(\d+)", reply)
print("parsed answer:", int(m.group(1)))
print("check:", 12 * 5 - 0.10 * (12 * 5))

Output:

parsed answer: 54
check: 54.0

हो सके तो कोड से जाँचें

अंकगणित और तर्क के लिए लिखे चरणों पर भरोसा करने की जगह कोड में उत्तर दोबारा निकालें।

त्वरित जाँच: अंतिम उत्तर निश्चित पंक्ति में क्यों रखें?

  • ताकि आपका कोड उसे भरोसे से parse कर सके
  • Reasoning छिपाने के लिए
  • क़ीमत घटाने के लिए
  • चरण छोड़ने के लिए
Answer

ताकि आपका कोड उसे भरोसे से parse कर सके — अनुमेय चिह्न निष्कर्षण सरल बनाता है।