ऑटोमेशन नियम
आने वाली एजेंट ट्रेस को filter, sample और action नियमों से स्वचालित रूप से रूट करें। Potato हर आने वाली ट्रेस पर प्रत्येक नियम चलाता है ताकि उसे एनोटेशन क़्यू में भेजा जाए, किसी डेटासेट में संकलित किया जाए, कोई इवैल्यूएटर चलाया जाए, webhook फ़ायर किया जाए या एनोटेटरों को सूचित किया जाए।
ऑटोमेशन नियम प्रोडक्शन-से-मूल्यांकन के चक्र को पूरा करते हैं: एक प्रोग्राम-योग्य filter → sampling rate → actions पाइपलाइन Potato में प्रवेश करने वाली हर आइटम पर चलती है, चाहे वह डेटा फ़ाइलों से लोड हुई हो या रनटाइम पर trace webhook अथवा tracing SDK के ज़रिए ग्रहण की गई हो। मेल खाने वाला हर नियम आइटम को एनोटेशन क़्यू में रूट कर सकता है, उसे किसी eval डेटासेट में संकलित कर सकता है, कोई इवैल्यूएटर चला सकता है, बाहरी webhook फ़ायर कर सकता है, या एनोटेटरों को सूचित कर सकता है।
सक्रिय करना
automation:
enabled: true
rules:
- name: route-errors
when: {field: status, in: [error, failed]}
sample_rate: 1.0 # 0.0–1.0 (default 1.0 = every match)
actions:
- {type: add_to_queue, priority: 100, reason: "Agent errored"}
- {type: add_to_dataset, dataset: errors-to-fix}
- {type: run_evaluator, evaluator: trajectory_match}
- {type: fire_webhook, url: "https://example.com/hook"}
- {type: notify, message: "New error trace"}नियम कब सक्रिय होता है
नियम तब सक्रिय होता है जब दोनों शर्तें पूरी हों:
whenमेल खाए — साझा शर्त व्याकरण (ट्राइएज जैसा ही):equals,in,contains,exists,lt/lte/gt/gte, डॉटेड फ़ील्ड पथ (metadata.score)। शर्तों की सूची AND से जुड़ती है; खालीwhenहर चीज़ से मेल खाता है।sample_rateउसे चुने —(item id, rule name)के हैश पर निर्धारक (deterministic) सैंपलिंग, इसलिए एक ही आइटम को दोबारा प्रोसेस करने पर वही निर्णय मिलता है (idempotent, replay-सुरक्षित)।
एक्शन
| एक्शन | कब चलता है | प्रभाव |
|---|---|---|
add_to_queue | इनलाइन (तेज़) | आइटम की ट्राइएज प्राथमिकता बढ़ाता है ताकि वह सबसे पहले सामने आए |
add_to_dataset | इनलाइन (तेज़) | आइटम को उदाहरण के रूप में किसी डेटासेट में जोड़ता है |
notify | इनलाइन (तेज़) | जुड़े हुए एनोटेटरों को SSE के ज़रिए सूचित करता है |
run_evaluator | बैकग्राउंड वर्कर | आइटम को किसी इवैल्यूएटर से स्कोर करता है; स्कोर आइटम पर संग्रहीत होता है |
fire_webhook | बैकग्राउंड वर्कर | किसी बाहरी URL पर {rule, item_id, item_data} POST करता है |
तेज़ एक्शन इंजेशन पथ में इनलाइन चलते हैं। भारी एक्शन (run_evaluator, fire_webhook) बैकग्राउंड वर्कर को सौंपे जाते हैं, इसलिए इंजेशन कभी किसी बाहरी कॉल का इंतज़ार नहीं करता। हर एक्शन का परिणाम दर्ज होता है, और विफलताएँ raise होने के बजाय पकड़ ली जाती हैं, इसलिए कोई ख़राब नियम इंजेशन को तोड़ नहीं सकता।
निरीक्षण
एडमिन डैशबोर्ड Automation (/admin/automation) से लिंक करता है, जो कॉन्फ़िगर किए गए नियम, गतिविधि काउंटर और हाल के एक्शन परिणाम दिखाता है (JSON के रूप में /admin/automation/status और /admin/automation/outcomes पर भी उपलब्ध)।
संबंधित
- Read the Docs पर पूर्ण संदर्भ — सभी एक्शन प्रकार और शर्त व्याकरण, संस्करण-अनुरूप
- डेटासेट और प्रयोग —
add_to_datasetके लक्ष्य - प्रोग्रामेटिक इवैल्यूएटर —
run_evaluator - ट्राइएज क़्यू — शर्त व्याकरण साझा करता है
- Tracing SDK — आने वाली ट्रेस का एक स्रोत