पाठ 22 / 25

Failure Handling और Stop Conditions

Retries, timeouts, step limits और human checkpoints जोड़ें ताकि agents सुरक्षित रूप से विफल हों।

ग़लत होने की योजना

Agents loop में फँसते हैं, उसी विफल step को दोहराते हैं, या भटकते हैं। बचाव के लिए अधिकतम steps, समय सीमा, ख़र्च सीमा और ऐसे checkpoints रखें जहाँ डेटा हटाने या deploy करने जैसे जोखिम भरे कामों पर इंसान मंज़ूरी दे। सीमा छूते ही आगे बढ़ने की जगह रुकें और साफ़ रिपोर्ट करें।

सुरक्षित agent loop

step एक model-और-tool बारी चलाता है और is_done नतीजा जाँचता है। Loop अनंत नहीं चल सकता और बिना सीमा ख़र्च नहीं कर सकता।

MAX_STEPS, MAX_COST = 15, 2.00   # dollars
spent = 0.0
for i in range(MAX_STEPS):
    result, cost = step(state)
    spent += cost
    if is_done(result):
        break
    if spent > MAX_COST:
        raise RuntimeError("Cost cap reached; stopping for review")
else:
    raise RuntimeError("Step limit reached without finishing")

विफलताएँ दिखाई दें

हर tool call और निर्णय log करें। रात 3 बजे कुछ बिगड़े तो पढ़ने योग्य trace दस मिनट के सुधार और दिन भर के अंदाज़े में फ़र्क़ डालता है।

त्वरित जाँच: स्वायत्त loop के लिए अच्छी stop condition कौन-सी है?

  • चाहे जो हो, model के "पूरा" कहने तक चलाएँ
  • अधिकतम steps और ख़र्च की सीमा
  • कभी न रुकें
  • मनमाने ढंग से रुकें
Answer

अधिकतम steps और ख़र्च की सीमा — कड़ी सीमाएँ गारंटी देती हैं कि loop तब भी ख़त्म होगा जब model कभी तय न करे कि काम पूरा है।