# Failure Handling और Stop Conditions — एडवांस्ड Agent Workflows और Skills

Source: https://www.geekswithgeeks.com/hi/agent-workflows/rel-failure-limits

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

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

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

## सुरक्षित agent loop

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

```python
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 दस मिनट के सुधार और दिन भर के अंदाज़े में फ़र्क़ डालता है।

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

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

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