बहुतेक इंजिनिअरिंग टीम्स अजूनही AI एजंट्सचे मूल्यमापन गणिती गृहपाठ तपासल्याप्रमाणेच करतात. ते फक्त अंतिम आउटपुट पाहतात. जर उत्तर बरोबर असेल, तर ते रिलीजला परवानगी देतात आणि पुढे जातात. हा एक धोकादायक शॉर्टकट आहे. एक बरोबर उत्तर आतून पूर्णपणे बिघडलेली प्रणाली लपवून ठेवू शकते.

खरी गोष्ट त्या मार्गामध्ये असते जो एजंटने तिथे पोहोचण्यासाठी घेतला आहे. त्या मार्गाला 'एजंट ट्रॅजेक्टरी' (agent trajectory) म्हणतात. यामध्ये प्रत्येक टूल कॉल (tool call), प्रत्येक राउटिंग निर्णय आणि एजंटने विचार करण्यासाठी घेतलेला प्रत्येक विराम समाविष्ट असतो. तुम्ही याला एजंटने मागे सोडलेल्या खुणा (trail of breadcrumbs) म्हणून समजू शकता. आणि जर तुम्ही फक्त लक्ष्याकडे पाहिले, तर वाटेत विखुरलेल्या सर्व धोक्याच्या सूचना तुमच्या नजरेतून सुटतात.

विस्कळीत मार्गांमुळे उद्भवणाऱ्या समस्या

एखादा एजंट एखाद्या मद्यधुंद चालवणाऱ्या ड्रायव्हरसारखे वागतानाही योग्य उत्तरापर्यंत पोहोचू शकतो. तो चुकीच्या टूल्समधून वळण घेतो, पुन्हा राऊटरकडे परत येतो आणि शेवटी काहीतरी बरोबर सापडण्यापूर्वी अनावश्यक तर्क (reasoning) करत राहतो. वापरकर्त्याला एक स्वच्छ निकाल दिसतो. पण पडद्यामागे, प्रणाली संसाधने (resources) वाया घालवत असते आणि जोखीम वाढवत असते.

प्रत्यक्ष व्यवहारात ही विस्कळीतता नेमकी कशी दिसते?

पहिले म्हणजे, अनावश्यक टूल कॉल (redundant tool call). एजंट तुमच्या कस्टमर डेटाबेसमध्ये क्वेरी करतो, निकाल मिळवतो, पाच सेकंदांनंतर तो विसरतो आणि पुन्हा त्याच पॅरामीटर्ससह तोच रेकॉर्ड क्वेरी करतो. ही डेटाची समस्या नाही, तर ही ट्रॅजेक्टरीची समस्या आहे. एजंट 'स्टेट' (state) टिकवून ठेवण्यात अपयशी ठरला, म्हणून तो तेच काम पुन्हा करतो.

त्यानंतर 'चुकीचे टूल प्रथम वापरणे' (wrong-tool-first) हा पॅटर्न येतो. एखादा कोडिंग एजंट अशा फंक्शन डेफिनेशनसाठी वेबवर शोधण्याचा प्रयत्न करू शकतो जी आधीच लोकल रिपॉझिटरीमध्ये उपलब्ध आहे. किंवा एखादा सपोर्ट एजंट बिलिंग API वापरण्याचा प्रयत्न करू शकतो, जेव्हा वापरकर्त्याच्या प्रश्नासाठी स्पष्टपणे अकाउंट सेटिंग्स टूलची गरज असते. प्रत्येक चुकीचा निर्णय टोकन्स खर्च करतो, लॅटन्सी (latency) वाढवतो आणि प्रत्यक्ष काम सुरू होण्यापूर्वीच कॉन्टेक्स्ट लिमिट्स (context limits) संपण्याची शक्यता वाढवतो.

राऊटर लूप्स (Router loops) हा आणखी एक धोक्याचा संकेत आहे. निर्णय घेणारा नोड (decision node) कोणताही ठोस निर्णय घेऊ शकत नाही. तो कार्य 'ब्रांच A' कडे पाठवतो, मग आपला निर्णय बदलतो, ते परत घेतो, 'ब्रांच B' कडे पाठवतो आणि नंतर विनाकारण जनरल-पर्पज फॉलबॅक नोडद्वारे राउट करतो. प्रत्येक लूपमुळे नेटवर्क हॉप (network hop) वाढतो आणि शेवटी डीबग लॉगमध्ये गोंधळाचा आणखी एक स्तर जोडला जातो.

शेवटी, वारंवार होणारे विश्लेषण (repeated analysis). एजंट एखादा निष्कर्ष निश्चित मानण्याऐवजी प्रत्येक टप्प्यावर तोच निष्कर्ष पुन्हा पुन्हा काढत राहतो. हे एखाद्या सुतारासारखे आहे जो प्रत्येक कापण्यापूर्वी फळी दहा वेळा मोजतो. पहिले मोजमाप बरोबर होते, पण पुढची नऊ मोजमापे म्हणजे केवळ वेळेचा अपव्यय आहे.

या अतिरिक्त पायऱ्यांचे वास्तविक परिणाम होतात. लॅटन्सी (latency) वाढत जाते. सिंक्रोनस चॅट इंटरफेसमध्ये, अतिरिक्त तीन सेकंद हे खूप जास्त वाटतात. मोठ्या प्रमाणावर काम करताना, हे सेकंद संगणकीय खर्चाच्या (compute) हजारो डॉलर्समध्ये रूपांतरित होतात. अपयशाची जोखीमही वाढते. प्रत्येक अनावश्यक हॉपमुळे बाह्य API टाइम आउट होण्याची, कॉन्टेक्स्ट विंडो ओव्हरफ्लो होण्याची किंवा रेस कंडिशन (race condition) निर्माण होण्याची शक्यता वाढते. आणि जेव्हा काहीतरी बिघडते, तेव्हा स्पॅगेटीसारख्या गुंतागुंतीच्या दिसणाऱ्या ट्रेसचा (trace) डीबग करणे खूप कठीण होते. एजंटने सातवा टप्पा का घेतला हे शोधण्यात तुम्ही तासनतास घालवाल आणि शेवटी तुम्हाला समजेल की सातवा टप्पा कधीच नसावा.

कन्वर्जन्स (Convergence) म्हणजे नक्की काय

जर ट्रॅजेक्टरी म्हणजे मार्ग असेल, तर कन्वर्जन्स (convergence) हे त्याच्या कार्यक्षमतेचे मोजमाप आहे. वापरकर्त्याची विनंती आणि योग्य तोडगा यामधील सर्वात लहान आणि व्यवहार्य मार्गाचे एजंट किती काटेकोरपणे पालन करते, हे कन्वर्जन्स सांगते.

हे अचूकतेसारखे (accuracy) नाही. अचूकता हे एक साधे साधन आहे. ते फक्त अंतिम स्थिती बरोबर आहे की नाही हे विचारते. कन्वर्जन्स हे विचारते की तो प्रवास तर्कसंगत होता की नाही. उच्च अचूकता आणि कमी कन्वर्जन्स असलेला एजंट म्हणजे 'यशाचा मुखवटा घातलेली एक जबाबदारी' (liability) आहे. उच्च कन्वर्जन्स आणि मध्यम अचूकता असलेला एजंट सुधारणे सहसा सोपे असते, कारण त्याचे तर्क (reasoning) स्पष्ट असतात आणि त्याच्या चुका मर्यादित असतात.

तुम्ही एजंटने प्रत्यक्षात घेतलेल्या पायऱ्यांची तुलना त्या टास्क क्लाससाठी तुम्ही ठरवलेल्या सर्वात लहान मार्गाशी करून एक अंदाजित कन्वर्जन्स स्कोअर काढू शकता. जर एका मानक रिफंड क्वेरीसाठी नेमके तीन टूल कॉल लागणे अपेक्षित असेल आणि एजंटने नऊ वापरले असतील, तर तुमचा कन्वर्जन्स रेशो (convergence ratio) कमी होत आहे. तुम्ही विविध प्रकारच्या अपव्ययाला वजन (weighting) देऊन हे अधिक अचूक करू शकता. टूलची लॅटन्सी आणि किंमत यावर अवलंबून, एक चुकीचा टूल कॉल एका अनावश्यक कॉलपेक्षा जास्त महाग पडू शकतो. कोणताही मूल्य न वाढवणारा राऊटर लूप सर्वात मोठा दंड (penalty) म्हणून गणला जाऊ शकतो, कारण तो आर्किटेक्चरल