← नवीनतम पेपर
🤖 machine learning

Reinforcement Learning for Code Optimization

यह शोध पत्र DMC-Optim को प्रस्तुत करता है, जो एक तीन-चरणीय ढांचा है जो निष्पादन वातावरण को कैलिब्रेट करके, शुद्धता और गति पुरस्कारों को संयोजित करके, और प्रशिक्षण एल्गोरिदम को अनुकूलित करके कोड अनुकूलन पर सुदृढीकरण लर्निंग (reinforcement learning) लागू करने की अस्थिरता को दूर करता है, जिससे शुद्धता बनाए रखते हुए तेज़ कोड के निर्माण में महत्वपूर्ण सुधार होता है।

मूल लेखक: Pierre Chambon, Kunhao Zheng, Juliette Decugis, Benoit Sagot, Gabriel Synnaeve

प्रकाशित 2026-07-29
📖 9 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Pierre Chambon, Kunhao Zheng, Juliette Decugis, Benoit Sagot, Gabriel Synnaeve

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि एक ऐसी दुनिया है जहाँ कंप्यूटर बेहद प्रतिभाशाली, लेकिन थोड़े अनाड़ी शेफ (रसोइयों) की तरह हैं। वे एक आदर्श व्यंजन बनाने के लिए रेसिपी का पालन कर सकते हैं (काम करने वाला कोड लिखना), लेकिन वे अक्सर लंबे रास्ते से जाते हैं, एक बड़े कदम के बजाय हज़ार छोटे कदमों का उपयोग करते हैं। यह आर्टिफिशियल इंटेलिजेंस (AI) और कोड जनरेशन की दुनिया है। वैज्ञानिकों ने इन AI शेफ को फीडबैक देकर खाना बनाना सिखाया है: "यदि व्यंजन का स्वाद सही है, तो आपको एक गोल्ड स्टार मिलेगा।" इस पद्धति को रीइन्फोर्समेंट लर्निंग (Reinforcement Learning) कहा जाता है, जिसने AI को कोड लिखने में बहुत कुशल बना दिया है जो काम करता है। लेकिन एक पेंच है: कोड अक्सर धीमा चलता है, जैसे कि एक शेफ जो फूड प्रोसेसर के बजाय हाथ से हर प्याज काटता है। बड़ा सवाल यह है: क्या हम AI को न केवल व्यंजन बनाना, बल्कि इसे तेज़ बनाना सिखा सकते हैं? चुनौती यह है कि "तेज़" एक फिसलन भरा शब्द है; यह मापना कि कोड का एक हिस्सा वास्तव में कितनी देर तक चलता है, बहुत शोर भरा (noisy) होता है, जैसे कि स्टॉपवॉच हाथ में हिल रही हो जबकि आप दौड़ को टाइम करने की कोशिश कर रहे हों। यदि AI टाइमिंग में गलती करता है, तो वह तेज़ दौड़ना सीख सकता है लेकिन सब कुछ गड़बड़ कर सकता है, या वह शोर से भ्रमित होकर सीखना बंद कर सकता है।

यह शोध पत्र, जिसका शीर्षक "Reinforcement Learning for Code Optimization" है, एक कहानी है कि कैसे शोधकर्ताओं की एक टीम ने एक AI शेफ को प्याज को हाथ से काटने के बजाय फूड प्रोसेसर का उपयोग करना सिखाया, बिना रसोई जलाए। उन्होंने पाया कि केवल AI को यह कहना कि "तेज़ बनो" काम नहीं करता क्योंकि समय का मापन बहुत अव्यवस्थित होता है। इसके बजाय, उन्होंने एक विशेष, अत्यंत सटीक रसोई (एक "कैलिब्रेटेड सैंडबॉक्स") और AI को गोल्ड स्टार देने के नियमों का एक नया सेट बनाया। उन्होंने पाया कि जिस तरह से वे AI का परीक्षण करते हैं—बड़े, कठिन समस्याओं का उपयोग करके जो एक धीमे और तेज़ समाधान के बीच अंतर को स्पष्ट रूप से दिखा सकें—उस तरीके से वे AI को ऐसा कोड लिखने के लिए सिखा सकते हैं जो सही भी हो और काफी तेज़ भी। परिणाम? AI ने जटिल पहेलियों को कुछ श्रेणियों में 125% तक तेज़ी से हल करना सीखा, जबकि उत्तर अभी भी सही रहे। यह थोड़ा वैसा ही है जैसे किसी छात्र को न केवल गणित का सवाल हल करना सिखाना, बल्कि उसे कम से कम चरणों में हल करना सिखाना, भले ही शिक्षक की स्टॉपवॉच थोड़ी डगमगा रही हो।

समस्या: "तेज़ लेकिन गलत" का जाल

कल्पना कीजिए कि आप एक रोबोट को दौड़ने के लिए प्रशिक्षित कर रहे हैं। यदि आप केवल कहते हैं, "जितनी जल्दी हो सके दौड़ो," तो रोबोट ट्रैक तोड़कर शॉर्टकट ले सकता है, या जल्दबाजी में अपने ही पैरों से टकराकर गिर सकता है। कोड की दुनिया में, जब शोधकर्ताओं ने AI को तेज़ बनाने की कोशिश की तो बिल्कुल यही हुआ। उन्होंने रिवॉर्ड सिस्टम में "गति" को जोड़ने की कोशिश की: "यदि आपका कोड काम करता है, और यह 1 सेकंड में चलता है, तो आपको बड़ा इनाम मिलेगा। यदि यह 10 सेकंड में चलता है, तो आपको छोटा इनाम मिलेगा।"

लेकिन यह सरल विचार विफल रहा। क्यों? क्योंकि समय को मापना शोर भरा (noisy) है। कभी-कभी कोड इसलिए तेज़ चलता है क्योंकि कंप्यूटर का दिन अच्छा था, न कि इसलिए कि कोड स्मार्ट था। अन्य समय में, कोड इसलिए धीमा चलता है क्योंकि कंप्यूटर किसी और काम में व्यस्त था। इस "शोर" ने AI को भ्रमित कर दिया। इसने सीखना शुरू कर दिया कि "तेज़" होना मायने नहीं रखता, या इससे भी बुरा, इसने ऐसा कोड लिखना सीख लिया जो बहुत तेज़ था लेकिन पूरी तरह से गलत था (जैसे कि एक रोबट जो फिनिश लाइन की गलत दिशा में दौड़ रहा हो)। शोध पत्र दिखाता है कि यदि आप माप उपकरणों को ठीक किए बिना केवल समय को रिवॉर्ड में जोड़ देते हैं, तो AI मुश्किल से तेज़ होता है, और कभी-कभी सही होने के मामले में भी खराब हो जाता है।

समाधान: एक बेहतर रसोई बनाना

शोधकर्ताओं को एहसास हुआ कि AI के सीखने से पहले उन्हें तीन चीजों को ठीक करने की आवश्यकता है: परीक्षण (Tests), रिवॉर्ड (Reward), और प्रशिक्षण विधि (Training Method)

1. परीक्षण: स्प्रिंट से मैराथन तक
AI को दिए गए मूल परीक्षण 'स्प्रिंट' की तरह थे—बहुत छोटे और त्वरित। एक स्प्रिंट में, एक छोटी सी देरी (जैसे छींक आना) समय में बहुत बड़ा अंतर पैदा कर सकती है, जिससे यह बताना असंभव हो जाता है कि धावक वास्तव में तेज़ है या नहीं। शोधकर्ताओं ने परीक्षणों का एक नया सेट बनाया जिसे DMC-Optim कहा जाता है। ये मैराथन की तरह हैं। वे बड़े इनपुट और जटिल समस्याओं का उपयोग करते हैं जो सेकंड या मिनटों तक चलती हैं। एक मैराथन में, छींक का कोई महत्व नहीं होता; आप स्पष्ट रूप से देख सकते हैं कि कौन वास्तव में तेज़ दौड़ रहा है। उन्होंने 2,723 साफ किए गए प्रश्न बनाए और 352,740 नए "ऑप्टिमाइज़ेशन टेस्ट" जोड़े जिन्हें विशेष रूप से धीमा बनाया गया था, ताकि AI वास्तव में एक अच्छे और एक बेहतरीन समाधान के बीच का अंतर महसूस कर सके।

2. रिवॉर्ड: तीन-चरणीय द्वार (Three-Stage Gate)
केवल यह कहने के बजाय कि "तेज़ बेहतर है," शोधकर्ताओं ने एक चतुर रिवॉर्ड सिस्टम डिज़ाइन किया जो एक तीन-चरणीय द्वार की तरह काम करता है:

  • द्वार 1 (सटीकता/Correctness): कोड को काम करना चाहिए। यदि नहीं करता है, तो भारी दंड (कोई गोल्ड स्टार नहीं) मिलता है।
  • द्वार 2 (ऑप्टिमाइज़ेशन): यदि यह काम करता है, तो क्या यह "स्पीड टेस्ट" पास करता है? AI की तुलना मानव विशेषज्ञों के लीडरबोर्ड से की जाती है। यदि AI मानव विशेषज्ञों के शीर्ष 30% में आता है, तो उसे रिवॉर्ड मिलता है।
  • द्वार 3 (सिग्नल): रिवॉर्ड केवल एक संख्या नहीं है; यह एक स्पष्ट संकेत है। उन्होंने एक "बाइनरी" रिवॉर्ड (जैसे बिजली का स्विच: ऑन या ऑफ) का उपयोग किया, न कि डिमर स्विच का। यह AI को समय के सूक्ष्म और शोर भरे अंतरों से भ्रमित होने से रोकता है। यदि कोड सही और पर्याप्त तेज़ है, तो लाइट चालू हो जाती है। यदि नहीं, तो यह बंद रहती है। यह सरल "ऑन/ऑफ" सिग्नल आश्चर्यजनक रूप से शक्तिशाली था।

3. प्रशिक्षण: एक स्थिर कोच
शोर भरे टाइमिंग डेटा के साथ AI को प्रशिक्षित करना एक कांपते हाथ से कुत्ते को प्रशिक्षित करने जैसा है। शोधकर्ताओं को अपने प्रशिक्षण एल्गोरिदम (जिसे GRPO कहा जाता है) को अधिक स्थिर बनाने के लिए इसमें बदलाव करना पड़ा। उन्होंने उन प्रयासों की संख्या बढ़ा दी जो AI प्रत्येक समस्या के लिए करता है (जैसे कि कुत्ते को कोर्स को एक बार के बजाय 16 बार दौड़ने के लिए कहना) ताकि शोर को औसत निकाला जा सके। उन्होंने यह भी सुनिश्चित किया कि AI असफल होने पर निराश न हो, इसके लिए उन्होंने "स्कोर" की गणना करने के तरीके को समायोजित किया। इसने प्रशिक्षण को स्थिर रखा, भले ही टाइमिंग माप थोड़ा अस्थिर था।

परिणाम: क्रैश हुए बिना गति बढ़ाना

जब उन्होंने इन सभी हिस्सों को एक साथ रखा, तो परिणाम प्रभावशाली थे। उन्होंने Qwen 2.5 (एक 7-बिलियन और 32-बिलियन पैरामीटर मॉडल) और CWM 32B सहित विभिन्न AI मॉडलों पर अपने नए तरीके का परीक्षण किया।

  • बड़ी छलांग: सबसे कठिन परीक्षणों पर (जहाँ कोड को मानव गति के शीर्ष 30% में होना था), CWM 32B मॉडल के लिए AI का प्रदर्शन 13.7% से बढ़कर 30.9% हो गया। यह 125% का सापेक्ष सुधार है!
  • सटीकता बनाए रखना: महत्वपूर्ण रूप से, AI ने गति के लिए सटीकता का त्याग नहीं किया। कितनी बार कोड सही (भले ही धीमा हो) था, वह समान रहा या थोड़ा बेहतर भी हुआ। AI ने तेज़ और सही होना सीख लिया।
  • बेसलाइन को हराना: मानक प्रशिक्षण विधियों की तुलना में, नए ऑप्टिमाइज़ेशन-प्रशिक्षित मॉडलों ने LiveCodeBench नामक एक अलग बेंचमार्क पर आमने-सामने की गति तुलना में 83% बार जीत हासिल की।

AI ने वास्तव में क्या सीखा?

शोधकर्ताओं ने केवल स्कोर नहीं देखे; उन्होंने कोड को देखने के लिए खुद कोड का विश्लेषण किया कि AI ने क्या ट्रिक्स सीखीं। उन्होंने पुराने कोड और मानव समाधानों के साथ नए कोड की तुलना करने के लिए दूसरे AI (एक "जज") का उपयोग किया।

  • "I/O" ट्रिक: सबसे आम सुधार इनपुट/आउटपुट (I/O) ऑप्टिमाइज़ेशन था। AI ने डेटा को अधिक कुशलता से पढ़ना और लिखना सीखा, जैसे कि एक शेफ जो फ्रिज का दरवाज़ा बार-बार खोलने और बंद करने में समय बर्बाद करना बंद कर देता है। इसने 47% जीत में योगदान दिया।
  • "मैथ" शॉर्टकट: 6% मामलों में, AI ने एक गणितीय शॉर्टकट खोजा, यह समझते हुए कि उसे सभी गणनाएँ करने की आवश्यकता नहीं है।
  • "एल्गोरिदम" परिवर्तन: 13% मामलों में, AI ने वास्तव में समस्या को हल करने के मौलिक तरीके को बदल दिया (जैसे कि एक धीमे, ब्रूट-फोर्स तरीके से बदलकर एक स्मार्ट, कुशल तरीके पर जाना)। यह ऑप्टिमाइज़ेशन का "पवित्र प्याला" (holy grail) है।
  • इंसानों को हराना: जबकि मनुष्य अभी भी अधिक जटिल सुधार पाते हैं (जटिलता सुधार के मामलों में मनुष्यों की जीत 16% बनाम AI की 7% थी), AI ने उन 7% मामलों में सर्वश्रेष्ठ मानव समाधानों को भी मात दी जहाँ उसने जटिलता सुधार पाया।

सीमाएं और भविष्य

शोध पत्र इस बात पर ध्यान देता है कि यह कोई जादू की छड़ी नहीं है। AI अभी भी सबसे कठिन समस्याओं के साथ संघर्ष करता है, और मनुष्य अभी भी सबसे जटिल एल्गोरिथम परिवर्तन खोजने में बेहतर हैं (जटिलता सुधार के मामलों में मनुष्यों ने 22% बनाम AI के 13% जीत दर्ज की)। साथ भी, AI कभी-कभी केवल तेज़ होने के लिए कोड के आवश्यक हिस्सों को हटा देता है, जो वास्तविक दुनिया के सॉफ़्टवेयर के लिए सुरक्षित नहीं हो सकता है।

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

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →