𝗧𝗵𝗲 𝗡𝘂𝗹𝗹 𝗜𝗻𝗽𝘂𝘁 𝗧𝗵𝗮𝘁 𝗕𝗿𝗼𝗸𝗲 𝗠𝘆 𝗣𝗿𝗼𝗱𝘂𝗰𝘁𝗶𝗼𝗻 𝗔𝗴𝗲𝗻𝘁 माझ्या प्रोडक्शन एजंटला कोलमडवणारा तो 'नल्ल इनपुट' (Null Input)

डेमो तीन आठवडे अगदी व्यवस्थित चालला. प्रत्येक टेस्ट इनपुटने काम केले. प्रत्येक आउटपुट योग्य ठिकाणी पोहोचले. मला वाटले की ही सिस्टम विश्वसनीय आहे.

मग एका पुरवठादाराने (supplier) रिकाम्या सब्जेक्ट लाईनसह (subject line) एक ईमेल पाठवला.

एजंटने ऑर्डर रेफरन्स काढण्यासाठी एका स्ट्रिंगची (string) अपेक्षा केली होती. त्याऐवजी, त्याला एक 'नल्ल व्हॅल्यू' (null value) मिळाली. सिस्टम क्रॅश झाली नाही. तसे झाले असते तर अधिक चांगले झाले असते. त्याने एक बनावट ऑर्डर रेफरन्स तयार केला जो अगदी खरा वाटत होता. डाउनस्ट्रीम सिस्टमने (downstream system) त्यावर प्रक्रिया केली. चार तास कोणाचेही लक्ष गेले नाही.

डेमोमध्ये तुम्ही अपेक्षित असलेले इनपुट्स वापरले जातात. प्रोडक्शनमध्ये तुम्ही न अपेक्षित असलेले इनपुट्स वापरले जातात.

मी aienterprise.dk वर एजंट ऑपरेशन चालवतो. मी संपूर्ण ट्रेस (trace) पाहिला. प्रॉम्प्टने एजंटला सब्जेक्ट लाईनमधून ऑर्डर रेफरन्स काढण्यास सांगितले होते. जर सब्जेक्ट लाईन उपलब्ध असेल, तर हे काम करते.

जर सब्जेक्ट लाईन नसेल, तर लार्ज लँग्वेज मॉडेल (LLM) ती पोकळी भरून काढते. ते काहीतरी असे तयार करते जे बरोबर वाटते. हा कोणताही रँडम नॉइज (random noise) नाही. हा 'स्ट्रक्चर्ड नॉइज' (structured noise) आहे. हे धोकादायक आहे कारण ते बरोबर वाटते. तुम्ही बिघाड (failure) पकडू शकता, पण आत्मविश्वासाने दिलेले चुकीचे उत्तर सहज पकडता येत नाही.

मी मॉडेलला पुन्हा ट्रेन (retrain) केले नाही. मी प्रॉम्प्टमध्येही बदल केला नाही. मी मॉडेल कॉल करण्यापूर्वी एक 'गार्ड' (guard) जोडला.

आता, प्रथम एक साधी तपासणी केली जाते. ती विचारते: सब्जेक्ट फील्ड उपलब्ध आहे का आणि ते रिकामे नाही ना? जर उत्तर 'नाही' असेल, तर तो मेसेज मानवी हस्तक्षेपासाठी 'होल्ड क्यू' (hold queue) मध्ये पाठवला जातो. एजंटला तो चुकीचा इनपुट कधीच दिसत नाही.

हा गार्ड केवळ बारा ओळींचा कोड आहे. या वर्षी मी तयार केलेली ही सर्वात महत्त्वाची गोष्ट आहे.

हे स्वरूप (pattern) सोपे आहे. जर एखादा एजंट स्ट्रक्चरची अपेक्षा करत असेल, तर प्रोडक्शनमधून कधी ना कधी अनस्ट्रक्चर्ड डेटा (unstructured data) येईलच. याचे निराकरण अधिक स्मार्ट मॉडेल शोधणे हे नाही. याचे निराकरण म्हणजे एक 'बाउंड्री' (boundary) तयार करणे होय. तुम्हाला अशा तपासणीची गरज आहे जी मॉडेलला अंदाज लावू देण्याऐवजी चुकीचा इनपुट मानवी मदतीकडे वळवेल.

विश्वसनीयता (Reliability) हेच एकमेव वैशिष्ट्य आहे. डेमो दाखवतो की एजंट एखादे काम करू शकतो. प्रोडक्शन दाखवते की एजंट पहाटे ३ वाजता चुकीच्या इनपुटवरही ते काम करू शकतो. तुमच्या ग्राहकांसाठी फक्त दुसरा भाग महत्त्वाचा असतो.

माझा एजंट आता दररोज कोणत्याही अडचणीशिवाय २०० ऑपरेशन्स पूर्ण करतो. आठवड्यातून दोनदा होल्ड क्यू सक्रिय होते. एखादा माणूस त्या विचित्र डेटाची तपासणी करतो. प्रोडक्शन प्रत्यक्षात कसे असते, हे मला यातून समजते.

जर तुम्ही EU AI Act अंतर्गत उच्च-जोखीम असलेल्या श्रेणींसाठी एजंट्स बनवत असाल, तर २ डिसेंबर २०२७ ही अंतिम मुदत आहे. यामध्ये रोजगार, बायोमेट्रिक्स आणि शिक्षण यांचा समावेश आहे. चुकीच्या इनपुटवर अंदाज लावणारी सिस्टम ऑडिटमध्ये अपयशी ठरेल. हा गार्ड अनुपालनासाठी (compliance) किमान आवश्यकता आहे.

विश्वसनीयता हे असे वैशिष्ट्य नाही जे तुम्ही नंतर जोडू शकता.

Source: https://dev.to/kimlike/the-null-input-that-broke-my-production-agent-and-what-fixed-it-1e77

Optional learning community: https://t.me/GyaanSetuAi