इस साइट की सामग्री का अनुवाद कृत्रिम बुद्धिमत्ता (AI) या मशीन अनुवाद तकनीक का उपयोग करके किया गया है, और इसमें त्रुटियाँ हो सकती हैं.

Skip to content

हमने रोब्लॉक्स इंजीनियरों की तरह सोचने के लिए मॉडलों को सिखाकर एआई कोड स्वीकृति को कैसे दोगुना किया

डोमेन-अवेयर कोड इंटेलिजेंस

BuilderAI Figure 2.webp

हर कोई अगले ब्रेकथ्रू AI मॉडल को लेकर उत्साहित होता है, लेकिन Roblox में आंतरिक AI टूल्स की प्रभावशीलता को दोगुना करने का रहस्य कोई नया मॉडल नहीं था। यह हमारे कोडबेस के इतिहास में ही निहित था। हमारे डोमेन विशेषज्ञों द्वारा वर्षों के कोड और समीक्षाओं का लाभ उठाकर, हमने 10,000 PR सेट में AI-जनित पुल रिक्वेस्ट (PR) सुझाव स्वीकृति दर को लगभग 30% से बढ़ाकर 60% से अधिक कर दिया और उसी अवधि में एक एजेंटिक कोड क्लीनअप प्रोजेक्ट की मूल्यांकन सटीकता को 90% से ऊपर ले गए।

एआई गुणवत्ता अंतर को पाटना

पूरी इंडस्ट्री में, 50% से 60% कोडिंग समय सॉफ़्टवेयर रखरखाव पर खर्च होता है।1 Roblox भी इससे अलग नहीं है। 

कागज़ पर, अच्छी तरह से परिभाषित आवश्यकताओं और एक सीमित समस्या क्षेत्र वाले दोहराए जाने वाले रखरखाव कार्य एआई स्वचालन के लिए एकदम सही उम्मीदवार हैं। व्यवहार में, हमारे एआई सहायकों ने मूल्यांकन सटीकता और इंजीनियरिंग स्वीकृति के साथ संघर्ष किया।

Roblox में, समस्या क्षमता की नहीं है; यह संदर्भ की है। एक सामान्य मॉडल Roblox इंजीनियरिंग के दो दशकों से होकर नहीं गुज़रा है। उसने पिछले तीन वर्षों में हमारे द्वारा मर्ज किए गए 700,000 पुल रिक्वेस्ट नहीं देखे हैं, या उन 1.7 मिलियन कोड समीक्षा टिप्पणियों से नहीं सीखा है जहाँ हमारे सबसे अनुभवी इंजीनियर हमारे कोडिंग मानकों को परिभाषित और उनका बचाव करते हैं।

जो एआई सहायक इस इतिहास को अनदेखा करते हैं, वे विश्व स्तरीय इंजीनियरों का विश्वास जीतने में विफल रहते हैं। रोब्लॉक्स के आधे इंजीनियरों द्वारा एआई-संचालित सहायकों को अपनाने के बावजूद, मानव समीक्षा के बाद केवल लगभग 20% एआई-जनित सुझाव ही स्वीकार किए जाते हैं। हमारा त्रैमासिक इंजीनियरिंग उत्पादकता सर्वेक्षण इस वास्तविकता को दर्शाता है। इंजीनियरों ने उत्पादकता पर एआई के प्रभाव को 5 में से 4.02 अंक दिए, लेकिन एआई कोड की गुणवत्ता में विश्वास को 5 में से केवल 3.09 अंक दिए। संक्षेप में, एआई मदद करता है, लेकिन विश्वास सीमित है, विशेष रूप से लेगेसी C++ और अधिक जटिल कोड डोमेन में।

इस संदर्भ अंतर को पाटने के लिए, हमने एक एजेंटिक कोड इंटेलिजेंस प्लेटफ़ॉर्म में निवेश किया है, जिसे Roblox के अपने इंजीनियरिंग इतिहास से बनाया गया है, विशेषज्ञ उदाहरणों के साथ संरेखित किया गया है, और कठोर मूल्यांकन के माध्यम से मान्य किया गया है। यह कोड इंटेलिजेंस प्लेटफ़ॉर्म न केवल कोड सुझाव उत्पन्न करने के लिए, बल्कि एक Roblox इंजीनियर की संस्थागत गहराई के साथ पुनरावृत्ति करने के लिए डिज़ाइन किया गया है।

Roblox इंजीनियरिंग अनुभव के सर्वश्रेष्ठ से सीखना

Roblox का इंजीनियरिंग कॉर्पस लगभग 20 वर्षों के कमिट्स, डिज़ाइन डॉक्स और प्रोडक्शन टेलीमेट्री तक फैला हुआ है, जो एक अनूठा समृद्ध डेटासेट है जिसमें यह दर्शाया गया है कि हमारी प्रणालियाँ कैसे विकसित हुईं और हमारे इंजीनियरों ने कठिन समस्याओं को कैसे हल किया।

कोड इंटेलिजेंस प्लेटफ़ॉर्म का लक्ष्य उस डेटा को एक संरचित ज्ञान ग्राफ़ में बदलना है, जो एक महत्वपूर्ण इंजीनियरिंग चुनौती है। एक विशाल बहुभाषी वातावरण में, कोड केवल टेक्स्ट फ़ाइलें नहीं हैं। यह बिल्ड टारगेट, C++ टेम्पलेट इंस्टैंशिएशन और डायनामिक Lua निर्भरताओं का एक जटिल जाल है। केवल टेक्स्ट को पार्स करना अपर्याप्त है; सिस्टम को कोडबेस के भीतर ही दबे गहरे सेमांटिक संबंधों को समझना चाहिए, जो हमारे अद्वितीय आर्किटेक्चर के लिए विशिष्ट हैं। 

एक और चुनौती है ट्रेसिंग और कालानुक्रमिक संरेखण। आपस में जुड़ी प्रणालियों में तर्कसंगत रूप से काम करने के लिए, एक एजेंटिक सिस्टम को स्थिर कोड रिपॉजिटरी को शोर वाले रनटाइम टेलीमेट्री से जोड़ना होगा और लाखों प्रोडक्शन सिग्नलों को कोड के उस सटीक संस्करण से वापस मैप करना होगा जिसने उन्हें उत्पन्न किया था, भले ही कोडबेस लगातार विकसित हो रहा हो।

undefined

इसे हल करने के लिए, हमारी रणनीति संस्करण नियंत्रण, ग्राफ़ निर्माण और रनटाइम टेलीमेट्री को एक हाइब्रिड प्रतीकात्मक-वेक्टर प्रतिनिधित्व में एकीकृत करने की है, जिसमें सिंटैक्स, अर्थ और संबंध संरक्षित रहते हैं। यह कोड इंटेलिजेंस प्लेटफ़ॉर्म को कोड को वरिष्ठ इंजीनियरों की तरह समझने की अनुमति देता है: डिज़ाइन तर्क, ट्रेड-ऑफ़ और प्रदर्शन डेटा से आकारित परस्पर जुड़े सिस्टम के रूप में, न कि अलग-थलग टेक्स्ट फ़ाइलों के रूप में।

एक्ज़ेम्प्लर एलाइनमेंट के माध्यम से विशेषज्ञ संकेतों को निकालना

सच्ची विशेषज्ञता पैटर्न, समीक्षा टिप्पणियों, कमिट इतिहास और सूक्ष्म कोड इडियम्स में छिपी होती है। कोड इंटेलिजेंस एक एग्ज़ेम्प्लर एलाइनमेंट इंजन के माध्यम से इस निहित ज्ञान को सामने लाता है, जो इंजीनियरों को आदर्श कार्यान्वयन के "गोल्ड" उदाहरणों या समीक्षा के तर्क को क्यूरेट करने की अनुमति देता है।

पहले, एक अनुभवी इंजीनियर हर हफ़्ते पीआर (PR) की समीक्षा करने में घंटों बिता सकता था, और हाई-फ़्रीक्वेंसी लूप के अंदर ब्लॉकिंग FetchData कॉल के उपयोग को बार-बार फ़्लैग कर सकता था, यह एक ऐसा पैटर्न है जो अर्थ की दृष्टि से सही लगता है लेकिन Roblox के पैमाने पर गंभीर लेटेंसी का कारण बनता है। यदि विशेषज्ञ शहर से बाहर है या कोई त्रुटि चूक जाता है, तो उनका ज्ञान लागू नहीं हो पाता है, और एक एंटी-पैटर्न प्रोडक्शन में आ सकता है और हमारे समुदाय के लिए एक आउटेज का कारण बन सकता है।

अलाइनमेंट इंजन का उपयोग करके, वह इंजीनियर अपने निर्णय को एक प्राकृतिक भाषा के उदाहरण में एन्कोड कर सकता है। यह एक संरचित परिभाषा है जो कोड पैटर्न (क्या) को तर्क (क्यों) के साथ जोड़ती है। अब, सिस्टम स्वचालित रूप से ब्लॉकिंग कॉल का पता लगाता है, इसे फ्लैग करता है, विलंबता जोखिम को समझाता है, और असिंक्रोनस सर्वोत्तम प्रथाओं पर आंतरिक दस्तावेज़ीकरण से सीधे लिंक करता है:

उच्च-आवृत्ति लूप के अंदर ब्लॉकिंग से लेटेंसी में वृद्धि और थ्रेड की थकान होती है। जब किसी एसिंक टास्क में `FetchData` कॉल किया जाता है, तो लेखक को लेटेंसी और थ्रेड की थकान के बारे में चेतावनी दें। `FetchData` तब ठीक है जब टास्क का पहले से ही इंतज़ार किया गया हो। एसिंक सर्वोत्तम प्रथाओं के लिए सीधा लिंक प्रदान करें: internal_guidance/async।

यह प्रभावी रूप से वर्षों के अनुभव से प्राप्त एक इंजीनियर के कठिन-से-कमाए गए ज्ञान को संहिताबद्ध करता है। सिस्टम एक एकमुश्त समीक्षा टिप्पणी को एक स्थायी, स्वचालित सुरक्षा उपाय में बदल देता है।

"अलाइनमेंट इंजन को शक्तिशाली बनाने वाली बात सिर्फ यह नहीं है कि यह कोड की गुणवत्ता को बेहतर बनाता है—यह मेंटरशिप को भी बढ़ाता है। हम अपने सबसे अनुभवी विशेषज्ञों की विशेषज्ञता और सहजज्ञान को स्वयं प्लेटफ़ॉर्म में एन्कोड करते हैं। यह ऐसा है जैसे एक वरिष्ठ Roblox डोमेन विशेषज्ञ पूरे दिन, हर दिन आपके साथ पेयर प्रोग्रामिंग कर रहा हो।" —टॉम क्न्यच, वरिष्ठ तकनीकी निदेशक

लेकिन हमारे विशेषज्ञों के पास भी बहुत काम होता है, और उनसे अपनी सभी प्रमुख अंतर्दृष्टियों को याद करके लिखने के लिए कहना, सबसे अच्छी स्थिति में भी, समय-साध्य और जानकारी के नुकसान वाला एक प्रक्रिया है। तो, हम उन्हें Roblox में अपने कार्यकाल के दौरान अपनी सर्वश्रेष्ठ सलाह दर्ज करने में कैसे मदद कर सकते हैं?

यह पहले से ही मौजूद है, उनके सावधानीपूर्वक लिखे कोड समीक्षा टिप्पणियों में लिखा हुआ और हर उस PR में संजोया गया है जो प्रोडक्शन में पहुँचता है:

BuilderAI Figure 2.webp

हम ऐतिहासिक PR टिप्पणियों को एक पाइपलाइन के माध्यम से भेजते हैं जो Roblox अनुभव से उच्चतम मूल्य वाले विषयों को साफ करती है और निकालती है। प्रारंभ में, शोर वाले डेटा में प्रशंसा या टाइपो सुधार जैसी गैर-कार्रवाई योग्य टिप्पणियाँ होती हैं, जबकि मूल्यवान प्रतिक्रिया अक्सर संक्षिप्त रूप में लिखी जाती है जो संदर्भ पर बहुत अधिक निर्भर करती है। उदाहरण के लिए, "यहाँ नया पैटर्न उपयोग करें" जैसी एक टिप्पणी विशिष्ट फ़ाइल और डिफ़ (diff) की समझ के बिना अर्थहीन है। सिस्टम को इन विशिष्ट इंटरैक्शन को पुन: प्रयोज्य, सामान्यीकृत नियमों में अनुवादित करना होगा।

इसे हल करने के लिए, हम एक बहु-चरणीय एल्गोरिदम का उपयोग करते हैं जो बिना किसी मानवीय हस्तक्षेप के हजारों PRs में बार-बार आने वाले विषयों का पता लगाता है। यह सिस्टम ऐतिहासिक टिप्पणियों को वेक्टर स्पेस में एम्बेड करता है, संबंधित फीडबैक के समूह खोजने के लिए ग्रीडी क्लस्टरिंग का उपयोग करता है, और उन्हें उच्च-मूल्य वाले पैटर्न में विलय करने के लिए LLM-निर्देशित परिष्करण लागू करता है।

परिणाम उम्मीदवार उदाहरणों (या सीखों) की एक रैंक की गई सूची है, जिसे इस आधार पर प्राथमिकता दी जाती है कि वे कितनी बार दिखाई देते हैं और विभिन्न समीक्षकों द्वारा उनका कितना व्यापक रूप से हवाला दिया जाता है, साथ ही इसमें मूल टिप्पणियों के उद्धरण भी शामिल होते हैं। तब हमारे डोमेन विशेषज्ञ इन उम्मीदवारों की समीक्षा करते हैं, यदि आवश्यक हो तो संपादन करते हैं, और यह तय करते हैं कि किन्हें मुख्य सर्वोत्तम प्रथाओं के रूप में ज्ञान आधार में बढ़ाया जाए। इस पाइपलाइन के पहले पूर्वावलोकनों के बाद, रिपॉजिटरी लीड्स अपने पसंदीदा विषयों को प्रमुख सुरक्षा-दिशानिर्देशों के रूप में उभरते हुए देखकर उत्साहित थे और तुरंत अपने रिपॉजिटरी को विश्लेषण के लिए साइन अप करवाना चाहते थे।   

undefined

अंतिम चरण एलाइनमेंट एजेंट है, जो मानक ज्ञान आधार के खिलाफ सभी परिवर्तनों की जाँच करके मानव इंजीनियरों और AI कोडिंग एजेंटों दोनों की सहायता करता है। यह लचीला मूल्यांकन पूरे सॉफ़्टवेयर विकास जीवनचक्र में लागू किया जा सकता है: कोडिंग के समय, मर्ज के समय, और एक सतत सुधार एजेंट के साथ भी, जो ज्ञान आधार के बढ़ने के साथ स्वचालित रूप से Roblox कोडबेस को संवारता है।  

इस इन-कॉन्टेक्स्ट लर्निंग का उपयोग करके AI व्यवहार को Roblox मानकों से जोड़ने पर, हमने एक AI कोडिंग एजेंट की गोल्डन मूल्यांकन डेटासेट पर पास दरों को 84% से बढ़कर 100% होते देखा। हम सिर्फ Roblox AI को कोड करना नहीं सिखा रहे हैं; हम अपनी AI को यह सिखा रहे हैं कि Roblox इंजीनियर कैसे सोचते हैं।

नकारात्मक संकेतों से सीखना

जहाँ उदाहरण संरेखण ने कोडबेस की गुणवत्ता के लिए हमारे आधारभूत स्तर को काफी बढ़ाया है, वहीं हमारा अंतिम लक्ष्य उस बिंदु तक पहुँचना है जहाँ एआई द्वारा सुझाए गए कोड का पहला ड्राफ़्ट हमारे सबसे अनुभवी इंजीनियरों के काम जितना ही विश्वसनीय हो। इसीलिए हम हर अस्वीकार किए गए एआई सुझाव, असफल रिफैक्टर, या रिग्रेशन उत्पन्न करने वाले मर्ज को एक उच्च-मूल्य वाले संकेत के रूप में उपयोग करते हैं जिसे हम सिस्टम में वापस फीड कर सकते हैं। यह एजेंट्स के लिए लगातार सुधार करने और अपनी गलतियों से सीखने के लिए एक पाइपलाइन बनाता है।

नकारात्मक परिणामों को डोमेन विशेषज्ञों द्वारा विस्तृत तर्क, विचार की श्रृंखला, और विफलता के आसपास के किसी भी अतिरिक्त संदर्भ के साथ फ़िल्टर और लेबल किया जा सकता है। फिर इस डेटा को अर्थपूर्ण रूप से एम्बेड किया जाता है और पुनः प्राप्ति के लिए अनुक्रमित किया जाता है। जब हमारा कोड इंटेलिजेंस प्लेटफ़ॉर्म नया आउटपुट प्रस्तावित करता है, तो यह इस डेटा के माध्यम से एक अर्थपूर्ण खोज करता है, और उन्हें दोहराने से बचने के लिए अतीत की गलतियों और समीक्षक की प्रतिक्रिया को याद करता है।

यह बंद फीडबैक लूप प्रत्येक कोड-समीक्षा को संरचित शिक्षण डेटा में बदल देता है, जो विरोधी और आलोचना-आधारित प्रशिक्षण के माध्यम से भविष्य के एजेंट के व्यवहार को लगातार परिष्कृत करता है।

एक मजबूत मूल्यांकन ढांचा तैयार करना

विश्वास विश्वसनीय, पूर्वानुमानित व्यवहार के माध्यम से बनता है जो माप से शुरू होता है। हमने समय के साथ अपने एजेंटों के प्रदर्शन को ट्रैक करने के लिए एक समर्पित मूल्यांकन प्रणाली डिज़ाइन की है।

undefined

फ्रेमवर्क में शामिल हैं:

  • कार्य-स्तर के बेंचमार्क: हजारों Roblox इंजीनियरिंग गतिविधियों, जैसे रिफैक्टरिंग, परीक्षण, और बग-फिक्स कार्यों में सटीकता और रिकॉल।
  • सिमुलेशन हैंर्सेस: पुनरुत्पादित स्कोरिंग के लिए निर्धारक परिणामों वाले सिंथेटिक PRs।
  • मानव-इन-द-लूप पैनल: AI आउटपुट बनाम गोल्ड-स्टैंडर्ड कार्यान्वयन की विशेषज्ञ तुलना।
  • कार्यकारी ढांचा: एजेंट सुधारों को मर्ज करते समय, प्रासंगिक मूल्यांकन (evals) को समानांतर किया जाता है और प्री-मर्ज सतत एकीकरण (CI) सुइट के हिस्से के रूप में चलाया जाता है, जिससे इंजीनियरों को अपने परिवर्तनों में उच्च विश्वास मिलता है। 
  • दीर्घकालिक मेट्रिक्स: पोस्ट-मर्ज रिग्रेशन, रिवर्ट आवृत्ति, और रिलीज़ों में ट्रैक्ड लेटेंसी परिवर्तन।
  • व्यापक अवलोकनीयता: एजेंट गतिविधि का स्वचालित ट्रेसिंग और विज़ुअलाइज़ेशन, ताकि एजेंट्स को बाकी Roblox से जोड़ा जा सके और ऑनलाइन और ऑफ़लाइन मूल्यांकन में सहजता से डाला जा सके।

यह सिस्टम एक एजेंट गुणवत्ता स्कोर उत्पन्न करता है जो समय के साथ प्रदर्शन में बदलाव को सटीक रूप से ट्रैक करता है, जिससे एजेंट संशोधनों और मॉडल संस्करणों के बीच मानकीकृत तुलना संभव होती है। जब से हमने उदाहरण संरेखण और एक पूर्ण मूल्यांकन सुइट पेश किया है, एक Roblox कोड इंटेलिजेंस एजेंट की पीआर सुझाव स्वीकृति दर 10,000-पीआर सेट पर लगभग 30% से बढ़कर 60% से अधिक हो गई है, जो विश्वसनीय, डोमेन-संरेखित प्रदर्शन का एक शुरुआती संकेत है। इसी प्रक्रिया के माध्यम से, हमारे फ़ीचर फ़्लैग क्लीनअप एजेंट ने अपनी समग्र सटीकता को 46% से बढ़ाकर 90% से अधिक कर लिया।

आगे की राह: हर टूल में विशेषज्ञ निर्णय को बुनना 

हम MCP और टूल रैपर की एक परत बनाकर और कोड इंटेलिजेंस प्लेटफ़ॉर्म को लक्षित कार्यों से विकसित करके एक ऐसी प्रणाली में बदलकर हमारी स्थापित आंतरिक प्रणालियों की उपयोगिता को बढ़ा रहे हैं जो Roblox कोडबेस को स्वस्थ रखती है। 

हम एक ऐसे इंजीनियरिंग भविष्य की कल्पना करते हैं जहाँ रनटाइम संदर्भ और विशेषज्ञ निर्णय जैसी ऐतिहासिक रूप से स्केल करने में कठिन ज्ञान, हर टूल और वर्कफ़्लो में बुना गया हो। जब कोड इंटेलिजेंस, उदाहरण संरेखण, और अवलोकनशीलता एक साथ आती हैं, तो हम टिकाऊ लाभ को अनलॉक करते हैं: बेहतर गुणवत्ता, तेज़ डिलीवरी, और एक स्वस्थ, विकसित होने वाला कोडबेस। दीर्घकालिक लक्ष्य है कि हर इंजीनियर को संस्थागत स्मृति की शक्ति, हर टीम को तेजी से काम देने का आत्मविश्वास, और हर इंजीनियर को रखरखाव पर नहीं, बल्कि नवाचार पर ध्यान केंद्रित करने की स्वतंत्रता दी जाए। 

1 डेलॉइट की आईटी स्पेंडिंग एनालिसिस 2024 से प्राप्त उद्योग डेटा के आधार पर।