SaaSBench: Exploring the Boundaries of Coding Agents in Long-Horizon Enterprise SaaS Engineering
यह शोधपत्र SaaSBench प्रस्तुत करता है, जो जटिल, बहु-घटक एंटरप्राइज SaaS परिवेशों में स्वायत्त कोडिंग एजेंटों का मूल्यांकन करने के लिए डिज़ाइन किया गया पहला बेंचमार्क है, जो यह प्रकट करता है कि अत्याधुनिक मॉडलों के लिए प्राथमिक बाधा कोड लॉजिक उत्पन्न करने में नहीं, बल्कि विषम सिस्टम घटकों को सफलतापूर्वक कॉन्फ़िगर और एकीकृत करने में निहित है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
मुख्य विचार: "एक वाक्य लिखने" से "एक गगनचुंबी इमारत बनाने" तक
कल्प_िए कि आपके पास एक रोबोट सहायक है जो कोड लिखने में बहुत माहिर है। वर्तमान में, इन रोबोटों के लिए अधिकांश परीक्षण उन्हें एक अकेला वाक्य लिखने या किसी पैराग्राफ में टाइपिंग की गलती सुधारने के लिए कहने जैसा है। वे इन परीक्षणों को आसानी से पास कर लेते हैं।
लेकिन वास्तविक दुनिया में, सॉफ्टवेयर बनाना केवल एक वाक्य लिखने के बारे में नहीं है; यह एक गगनचुंबी इमारत (skyscraper) बनाने के बारे में है। आपको नींव डालनी पड़ती है, दीवारें खड़ी करनी पड़ती हैं, प्लंबिंग लगानी पड़ती है, बिजली की वायरिंग करनी पड़ती है, और यह सुनिश्चित करना पड़ता है कि कोई भी वहां रहने से पहले लिफ्ट काम करे।
SaaSBench एक नया, अत्यंत कठिन परीक्षण है जिसे यह देखने के लिए डिज़ाइन किया गया है कि क्या ये AI रोबोट केवल एक लिखित विवरण के आधार पर, बिना किसी इंसान की मदद के, वास्तव में एक पूरी "गगनचुंबी इमारत" (एक जटिल व्यावसायिक सॉफ्टवेयर सिस्टम) बना सकते हैं।
समस्या: "खिलौना" बनाम "असली चीज़"
लेखकों का तर्क है कि पिछले परीक्षण एक रोबोट को LEGO महल बनाने के लिए कहने जैसे थे। यह मज़ेदार है, लेकिन इसके लिए वास्तविक इंजीनियरिंग कौशल की आवश्यकता नहीं होती। वास्तविक व्यावसायिक सॉफ्टवेयर (SaaS) अव्यवस्थित होता है। इसमें शामिल है:
- कई भाषाएँ: जैसे एक निर्माण दल अलग-अलग भाषाएँ बोल रहा हो (Python, Go, JavaScript, आदि)।
- कई उपकरण: विभिन्न डेटाबेस और फ्रेमवर्क का उपयोग करना जिन्हें एक-दूसरे से बात करनी होती है।
- जटिल नियम: यदि आप एक उपयोगकर्ता को हटा देते हैं, तो उनके डेटा का क्या होता है? यदि सर्वर क्रैश हो जाता है, तो क्या सिस्टम रिकवर करता है?
मौजूदा परीक्षणों ने यह जांचा ही नहीं कि क्या रोबलेट इस अव्यवस्था को संभाल सकता है। उन्होंने केवल यह जांचा कि क्या रोबोट कोड की कुछ पंक्तियाँ लिख सकता है जो अकेले काम करती हैं।
समाधान: SaaSBench (द "रियल एस्टेट" परीक्षा)
शोधकर्ताओं ने SaaSBench बनाया है, जो एक मास्टर आर्किटेक्ट की अंतिम परीक्षा की तरह है।
- ब्लूप्रिंट (PRD): एक साधारण प्रॉम्प्ट जैसे "एक टू-डू लिस्ट बनाओ" के बजाय, AI को एक विशाल, 4,000+ लाइनों वाला दस्तावेज़ (प्रोडक्ट रिक्वायरमेंट्स डॉक्यूमेंट - PRD) दिया जाता है। यह एक वास्तविक व्यावसायिक उत्पाद, जैसे कि वीडियो कॉन्फ्रेंसिंग ऐप, बिलिंग सिस्टम, या प्रोजेक्ट मैनेजमेंट टूल के लिए विस्तृत ब्लूप्रिंट है।
- निर्माण स्थल (Construction Site): AI को एक डिजिटल निर्माण स्थल (एक Docker कंटेनर) में छोड़ दिया जाता है। उसे करना होता है:
- सभी टूल्स इंस्टॉल करना।
- डेटाबेस सेटअप करना।
- कोड लिखना।
- फ्रंट एंड (जो उपयोगकर्ता देखते हैं) को बैक एंड (जो लॉजिक है) से जोड़ना।
- सिस्टम को डिप्लॉय करना ताकि वह वास्तव में इंटरनेट पर चल सके।
- निरीक्षक (The DAG Evaluation): यह सबसे चतुर हिस्सा है। केवल यह जाँचने के बजाय कि "क्या यह काम कर गया?", यह परीक्षण एक डिपेंडेंसी मैप (एक Directed Acyclic Graph) का उपयोग करता है।
- कल्पना कीजिए कि एक चेकलिस्ट है जहाँ चरण B तब तक चेक नहीं किया जा सकता जब तक चरण A एकदम सही न हो।
- यदि AI डेटाबेस सेट करने (चरण A) में विफल रहता है, तो टेस्ट स्वचालित रूप से लॉगिन स्क्रीन (चरण B) को चेक करने को छोड़ देता है और इसे "विफल" (Failed) के बजाय "स्किप" (Skipped) के रूप में चिह्नित करता है। यह AI को एक ही मूल त्रुटि के लिए दो बार दंडित होने से बचाता है।
- यह 5,370 अलग-अलग "वैलिडेशन नोड्स" की जांच करता है, जैसे "क्या सर्वर चल रहा है?" से लेकर "क्या बिलिंग लॉजिक टैक्स की गणना सही ढंग से करता है?" तक।
परिणाम: "अति-आत्मविश्वासी निर्माता"
शोधकर्ताओं ने उपलब्ध सबसे स्मार्ट AI एजेंटों (जैसे Claude, GPT, और अन्य) का इस परीक्षा पर परीक्षण किया। परिणाम आश्चर्यजनक और विनम्र करने वाले थे:
- स्कोर कम है: सबसे अच्छा AI भी केवल लगभग 20% कार्यों को ही पास कर पाया।
- रुकावट "दिमाग" में नहीं है: AI इसलिए विफल नहीं हुआ क्योंकि वह जटिल व्यावसायिक लॉजिक (जैसे ब्याज दर की गणना करना) नहीं लिख सका।
- रुकावट "हाथों" में है: 95% से अधिक विफलताएं तब हुईं जब AI व्यावसायिक लॉजिक तक पहुँचने से पहले ही रुक गया।
- AI सही सॉफ्टवेयर पैकेज इंस्टॉल करने की कोशिश में फंस गया।
- वह डेटाबेस कनेक्शन कॉन्फ़िगर करने में विफल रहा।
- उसने सर्वर शुरू करने की कोशिश की और तुरंत क्रैश हो गया।
- वह "अति-आत्मविश्वासी" हो गया, उसे लगा कि उसका काम पूरा हो गया है, और वह काम करना बंद कर दिया, जिससे इमारत आधी अधूरी रह गई।
उपमा: यह एक ऐसे प्रतिभाशाली आर्किटेक्ट की तरह है जो कागज पर एक आदर्श इमारत का डिज़ाइन तो बना सकता है, लेकिन कंक्रीट मिलाने के प्रयास में ही अटक जाता है। वे उन कमरों को बनाने तक कभी पहुँच ही नहीं पाते जो वे वास्तव में बनाना चाहते थे।
निष्कर्ष
SaaSBench हमें दिखाता है कि जबकि AI कोड स्निपेट्स लिखने में बेहतर हो रहा है, वह अभी भी सिस्टम इंजीनियरिंग करने में बहुत खराब है। इसमें वातावरण (environment) सेट करने, डिपेंडेंसी प्रबंधित करने और पूरे सिस्टम को स्थिर रूप से चलाने का अनुशासन की कमी है।
पेपर यह निष्कर्ष निकालता है कि AI को वास्तव में हमें सॉफ्टवेयर बनाने में मदद करने के लिए, हमें उन्हें "LEGO महलों" पर टेस्ट करना बंद करना होगा और "गगनचुंबी इमारतों" पर टेस्ट करना शुरू करना होगा। जब तक वे नींव और प्लंबिंग को विश्वसनीय रूप से सेट अप नहीं कर सकते, वे असली चीज़ बनाने के लिए तैयार नहीं हैं।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।