ईमेल एजंट्स तयार करताना येणारे सामान्य अडथळे
तुमचा ईमेल एजंट टेस्टिंगमध्ये व्यवस्थित काम करतो. मग तुम्ही तो लाँच करता. रातोरात, तो एजंट स्वतःच्याच मेसेजेसना उत्तर देऊ लागतो. ग्राहकांना एकाच प्रश्नाचे तीन वेळा उत्तर मिळते. संभाषणाचे थ्रेड्स विस्कळीत होतात.
या त्रुटी तुमच्या LLM प्रॉम्प्टमुळे नाही, तर इन्फ्रास्ट्रक्चर लेव्हलवर (infrastructure level) घडतात.
लाँच करण्यापूर्वी या नऊ गोष्टी तपासा:
इन्फिनाइट लूप (The Infinite Loop) जेव्हा तुमचा एजंट उत्तर पाठवतो, तेव्हा वेबहुक (webhook) ट्रिगर होतो. यामुळे पुन्हा दुसरा वेबहुक ट्रिगर होतो आणि एक लूप तयार होतो. उपाय: तुमच्या कोडच्या सुरुवातीलाच एजंटचा ईमेल पत्ता फिल्टर करा. जर पाठवणारा (sender) एजंट असेल, तर प्रक्रिया थांबवा.
ड्युप्लिकेट मेसेजेस (Duplicate Messages) नेटवर्कमध्ये अडथळे येऊ शकतात. तुमचा एंडपॉइंट (endpoint) पुरेसा वेगाने प्रतिसाद देत नसेल, तर सिस्टम पुन्हा तोच नोटिफिकेशन पाठवते. उपाय: मेसेज आयडीवर (message ID) ॲटॉमिक चेक (atomic check) वापरा. प्रत्येक आयडी फक्त एकदाच प्रोसेस होईल याची खात्री करण्यासाठी Redis किंवा Postgres वापरा.
रेस कंडिशन्स (Race Conditions) दोन वर्कर्स एकाच मिलिसेकंदात एकाच इव्हेंटवर प्रक्रिया करतात. अशा वेळी फक्त ड्युप्लिकेशन काढणे (deduplication) पुरेसे ठरत नाही. उपाय: ३० सेकंदांच्या मर्यादेसह 'पर-थ्रेड लॉक' (per-thread lock) वापरा. त्या लॉकच्या आत एजंटने आधीच उत्तर दिले आहे का, हे तपासा.
ट्रंकेटेड डेटा (Truncated Data) वेबहुक्समध्ये अनेकदा फक्त सारांश असतो, पूर्ण मजकूर नसतो. मोठे ईमेल ट्रंकेटेड (अपूर्ण) इव्हेंट म्हणून येऊ शकतात. उपाय: आयडीचा वापर करून नेहमी API मधून पूर्ण मेसेज मिळवा. मजकुरासाठी केवळ वेबहुक पेलोडवर (webhook payload) अवलंबून राहू नका.
ब्रोकन थ्रेड्स (Broken Threads) प्रतिसाद (reply) हा नवीन मेसेज म्हणून पाठवल्यास Gmail किंवा Outlook मधील संभाषणाचे गट (conversation grouping) विस्कळीत होतात. उपाय: प्रत्येक प्रतिसादात reply_to_message_id पाठवा. प्रतिसादांची जुळवाजुळव thread_id ने करा, सब्जेक्ट लाईनने (subject line) कधीही करू नका.
मानवी सुधारणा (The Human Correction) एखादा माणूस आपला पहिला ईमेल पाठवल्यानंतर काही सेकंदातच सुधारित ईमेल पाठवतो. तुमचा एजंट या दोन्ही ईमेलना उत्तर देतो. उपाय: ३० ते ६० सेकंदांचा 'कूलडाउन' (cooldown) कालावधी वापरा. सलग येणारे मेसेजेस एकाच प्रतिसादात एकत्रित (batch) करा.
रिप्लाय स्टॉर्म (The Reply Storm) लॉजिकमधील त्रुटीमुळे एजंट एकाच वेळी शेकडो ईमेल पाठवू शकतो. उपाय: प्रत्येक थ्रेडसाठी मेसेज पाठवण्याची मर्यादा (send budget) ठरवा. जर एजंटने ५ मिनिटांत ३ मेसेजेस पाठवले, तर प्रक्रिया थांबवा आणि माणसाला (human) अलर्ट करा.
गारबेज इनपुट (Garbage Input) स्पॅम आणि 'आउट-ऑफ-ऑफिस' रिप्लायमुळे तुमचा LLM ट्रिगर होतो. यामुळे निरर्थक इन्फरन्ससाठी (inference) तुम्हाला पैसे मोजावे लागतात. उपाय: चुकीचे सेंडर्स ब्लॉक करण्यासाठी किंवा ऑटोमेटेड मेल दुसऱ्या फोल्डरमध्ये पाठवण्यासाठी इनबॉक्स रूल्सचा (inbox rules) वापर करा.
४०३ एरर ट्रॅप (The 403 Error Trap) आऊटबाउंड रूल्स (outbound rules) ईमेल पाठवणे ब्लॉक करू शकतात. यामुळे ४०३ एरर येतो. स्टँडर्ड 'रिट्राय लॉजिक' (retry logic) या एररला वारंवार ट्रिगर करत राहील. उपाय: ४०३ ला 'टर्मिनल एरर' (terminal error) माना. तो पुन्हा प्रयत्न (retry) करू नका. जर ५०३ एरर आला, तर तुम्ही पुन्हा प्रयत्न करू शकता.
फिल्टर्स, लॉक्स आणि मर्यादा (caps) यांसारखे कंटाळवाणे उपायच एजंटला सुरक्षित ठेवतात.
स्रोत: https://dev.to/qasim157/common-pitfalls-building-email-agents-and-fixes-29kg
पर्यायी लर्निंग कम्युनिटी: https://t.me/GyaanSetuAi