पाठ 5 / 25

"पूरा हुआ" की परिभाषा

ऐसी सफलता-शर्त लिखें जिसे कोड जाँच सके, model के दावे पर भरोसा करने की जगह।

जाँचा हुआ दावे से बेहतर

Model का "मैंने कर दिया" दावा है, प्रमाण नहीं। जहाँ संभव हो, "पूरा" को ऐसी चीज़ बनाएँ जिसे कोड जाँच सके: tests पास, फ़ाइल मौजूद, schema वैध, record में नई स्थिति। तब loop प्रमाण पर ख़त्म होता है और झूठा "done" पकड़ा जाता है।

Loop ख़त्म होने के चार तरीक़े

Loop सफलता से पूरा हो सकता है, कड़ी सीमा छू सकता है, प्रगति न होना पकड़ सकता है, या बाहर से रोका जा सकता है।

चार निकास: सफलता, सीमा, प्रगति नहीं, बाहरी stop।
चित्र 2.1 — सफलता, कड़ी सीमा, अटका हुआ और रद्द।

मानने से पहले जाँचें

जाँच विफल हो तो लौटने की जगह विफलता को अगले message के रूप में वापस दें। tests_pass आपका असली test command चलाता है।

if reply.stop_reason == "end_turn":
    ok, report = tests_pass()
    if ok:
        return final_text(reply)
    messages.append({"role": "user",
                     "content": f"Tests still fail:\n{report}\nPlease fix them."})

Retries को भी सीमित करें

"विफलता वापस दें" अपने आप में एक loop है। गिनें कि जाँच कितनी बार विफल हुई और तीन जैसी छोटी संख्या के बाद साफ़ रिपोर्ट के साथ हार मान लें।

त्वरित जाँच: कौन-सी "पूरा हुआ" शर्त सबसे मज़बूत है?

  • Model कहता है कि पूरा हुआ
  • Loop 10 बार चला
  • Test suite पास होती है
  • Reply लंबी थी
Answer

Test suite पास होती है — पास होती test suite ऐसा प्रमाण है जिसे कोड जाँच सकता है; दावा नहीं।