← नवीनतम पेपर
💻 computer science

Where Did the Variability Go? From Vibe Coding to Product Lines by Regeneration

यह शोध पत्र "वेरिएबिलिटी बाय रिजनरेशन" (VbR) का प्रस्ताव करता है, जो एक नवीन सॉफ्टवेयर प्रोडक्ट लाइन दृष्टिकोण है जहाँ एक LLM डिक्लेरेटिव विनिर्देशों (declarative specifications) के आधार पर जनरेशन के समय उद्देश्य-निर्मित, डेड-कोड-मुक्त बाइनरी उत्पन्न करने के लिए एक डेरिवेशन इंजन के रूप में कार्य करता है, जो प्रभावी रूप से एआई-संचालित "वाइब कोडिंग" के युग में वेरिएबिलिटी प्रबंधन को स्वयं कोड से हटाकर विनिर्देश (specification) में स्थानांतरित कर देता है।

मूल लेखक: Xhevahire Tërnava

प्रकाशित 2026-06-19
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Xhevahire Tërnava

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

यहाँ "Where Did the Variability Go?" पेपर का सरल भाषा और रोज़मर्रा के उदाहरणों के साथ हिंदी अनुवाद दिया गया है।

बड़ी समस्या: वह "जादुई" कोड जिसे बदला नहीं जा सकता

कल्पive करें कि आपने आपको खाना बनाने के लिए एक बहुत ही प्रतिभाशाली शेफ (एक AI) को काम पर रखा है। आप उनसे कहते हैं, "मुझे एक स्पाइसी पास्ता चाहिए।" वे तुरंत आपके लिए एक बेहतरीन, गरमा-गरम स्पाइसी पास्ता की प्लेट बना देते हैं।

अब, कल्पना करें कि आप अपना मन बदलना चाहते हैं और कहते हैं, "दरअसल, इसे थोड़ा कम तीखा (mild) बना दो।" पारंपरिक कुकिंग में, आप बस शेफ से मसालों को एडजस्ट करने के लिए कहेंगे। लेकिन इस नई शैली की कुकिंग में (जिसे "वाइब कोडिंग" (Vibe Coding) कहा जाता है), शेफ सिर्फ मसाले एडजस्ट नहीं करता; वह पूरी प्लेट को फेंक देता है और आपके नए अनुरोध के आधार पर शुरू से एक बिल्कुल नई प्लेट बनाता है।

समस्या यह है कि स्पाइसी पास्ता की वह पहली प्लेट अब आपके किसी काम की नहीं रही। आप उसे 'माइंड' (कम तीखा) पास्ता में नहीं बदल सकते। यह एक "सिंगल-पर्पस" (एकल-उद्देश्य वाला) उत्पाद है। यदि आपको सॉफ़्टवेयर का दूसरा वर्शन चाहिए, तो आपको हर बार AI से एक पूरी तरह से नई फ़ाइल जेनरेट करने के लिए कहना होगा।

खोज: "विकल्प" कहाँ गए?

शोधकर्ताओं ने इस तरह से बनाए गए 10 अलग-अलग सॉफ़्टवेयर प्रोजेक्ट्स का अध्ययन किया। उन्होंने पाया कि कुछ चौंकाने वाला हुआ: "विकल्प" गायब हो गए थे।

पुराने ज़माने के सॉफ़्टवेयर में, कोड एक स्विस आर्मी नाइफ (Swiss Army knife) की तरह होता है। इसमें एक ब्लेड, एक पेचकश (screwdriver), और एक कॉर्कस्क्रू सब बना हुआ होता है। आप बस स्विच (एक सेटिंग) घुमाते हैं और उस टूल का उपयोग करते हैं जिसकी आपको ज़रूरत है। कोड में सभी टूल्स मौजूद होते हैं, भले ही आप अभी उनका उपयोग न कर रहे हों।

लेकिन "वाइब कोडिंग" में, AI स्विस आर्मी नाइफ नहीं बनाता। वह एक सिंगल-पर्पस टूल बनाता है।

  • अगर आपने चाकू माँगा, तो AI एक चाकू बनाएगा।
  • अगर आपने पेचकश माँगा, तो AI एक पेचकश बनाएगा।
  • "चाकू" वाले वर्शन के अंदर पेचकश के कोई हिस्से नहीं होंगे, और "पेचकश" वाले वर्शन के अंदर चाकू के कोई हिस्से नहीं होंगे।

शोधकर्ता इसे "नियर-ज़ीरो वेरिएबिलिटी" (near-zero variability) कहते हैं। सॉफ़्टवेयर क्या है, इसके बारे में सभी निर्णय ठीक उसी क्षण लिए जाते हैं जब AI कोड लिख रहा होता है। एक बार कोड लिखे जाने के बाद, वह जम जाता है। वहाँ अब कोई स्विच घुमाने के लिए नहीं बचा है।

समाधान: "वेरिएबिलिटी बाय रीजनरेशन" (VБr)

AI को एक विशाल, जटिल स्विस आर्मी नाइफ बनाने के लिए मजबूर करने के बजाय (जिससे कोड अव्यवस्थित और समझने में कठिन हो जाता है), लेखक एक नया तरीका प्रस्तावित करते हैं जिसे वेरिएबिलिटी बाय रीजनरेशन (Variability by Regeneration - VbR) कहा जाता है।

इसे एक कस्टम सूट शॉप (Custom Suit Shop) बनाम एक डिपार्टमेंट स्टोर (Department Store) की तरह समझें।

  • पुराना तरीका (डिपार्टमेंट स्टोर): आप एक ऐसा सूट खरीदते हैं जिसमें अतिरिक्त कपड़ा सिला हुआ है, बटन हैं जिनकी आपको ज़रूरत नहीं है, और जेबें हैं जिनका आप कभी उपयोग नहीं करेंगे, ताकि आप बाद में उसे "कॉन्फ़िगर" कर सकें। यह भारी है और इसमें बेकार का वजन भरा है।
  • VbR तरीका (कस्टम सूट शॉप): आपके पास एक मास्टर ब्लूप्रिंट (Master Blueprint) है (एक स्पेसिफिकेशन)।
    1. आप दुकान को बताते हैं: "मुझे शादी के लिए एक सूट चाहिए।"
    2. AI (दर्जी) ब्लूप्रिंट को देखता है और तुरंत उस शादी के लिए एक परफेक्ट, हल्का सूट सिल देता है। इसमें कोई अतिरिक्त कपड़ा नहीं है।
    3. बाद में, आप कहते हैं, "मुझे बीच पार्टी (beach party) के लिए एक सूट चाहिए।"
    4. AI उस शादी वाले सूट को काटकर छोटा करने की कोशिश नहीं करता। वह ब्लूप्रिंट को फिर से देखता है और एक बिल्कुल नया, परफेक्ट बीच सूट सिल देता है।

इस सिस्टम में, "वेरिएबिलिटी" (अलग-अलग सूट रखने की क्षमता) कपड़ों के अंदर नहीं रहती। यह ब्लूप्रिंट में रहती है।

यह व्यवहार में कैसे काम करता है

पेपर इसे कंप्यूटर के एक क्लासिक टूल wc (जो फ़ाइल में शब्दों को गिनता है) के माध्यम से प्रदर्शित करता है।

  1. ब्लूप्रिंट: डेवलपर एक साधारण फ़ाइल (एक YAML फ़ाइल) लिखता है जो सभी संभावित फीचर्स को सूचीबद्ध करती है: "लाइनें गिनें," "शब्द गिनें," "कैरेक्टर गिनें," आदि।
  2. जेनरेशन (उत्पादन): जब किसी उपयोगकर्ता को एक विशिष्ट वर्शन चाहिए (जैसे, "मुझे बस लाइनें गिननी हैं"), तो AI ब्लूप्रिंट को पढ़ता है, उस अनुरोध को देखता है, और एक छोटा, सुपर-फास्ट प्रोग्राम जेनरेट करता है जो केवल वही एक काम करता है।
  3. डिस्पैचर (द वेटर/वेटर): चूंकि AI ने तीन अलग-अलग प्रोग्राम बनाए हैं (एक लाइनों के लिए, एक शब्दों के लिए, एक सब कुछ गिनने के लिए), कंप्यूटर को कैसे पता चलेगा कि किसे चलाना है?
    • शोधकर्ताओं ने एक "वेटर" (डिस्पैचर) बनाया है।
    • आप एक कमांड टाइप करते हैं। वेटर आपकी कमांड को देखता है, मेनू (मैनिफेस्ट) की जाँच करता है, और तुरंत उस विशिष्ट प्रोग्राम को चला देता है जो आपके अनुरोध से मेल खाता है।
    • आप, यानी उपयोगकर्ता, अलग-अलग प्रोग्राम नहीं देखते। आप बस एक टूल देखते हैं जो जादुई रूप से अपना व्यवहार बदल लेता है।

यह क्यों महत्वपूर्ण है

लेखकों का तर्क है कि हमें AI को कोड में "स्विच" वापस डालने के लिए मजबूर करके "वाइब कोडिंग" को ठीक करने की कोशिश नहीं करनी चाहिए। यह इस नई तकनीक के उद्देश्य को ही खत्म कर देता है।

इसके बजाय, हमें यह स्वीकार करना चाहिए कि कोड डिस्पोजेबल (इस्तेमाल के बाद फेंकने योग्य) और विशिष्ट होने के लिए बना है।

  • पुराना तरीका: एक बड़ा, अव्यवस्थित कोड फ़ाइल रखें जिसमें सभी विकल्प अंदर छिपे हों।
  • नया तरीका (VbR): एक साफ स्पेसिफिकेशन फ़ाइल (नियमों की फाइल) रखें, और जब भी आपको किसी अलग वर्शन की आवश्यकता हो, AI को एक ताज़ा, परफेक्ट, "डेड-कोड-फ्री" प्रोग्राम जेनरेट करने दें।

सारांश

पेपर का दावा है कि AI कोडिंग के युग में, हमने एक सिंगल प्रोग्राम को "ट्वीक" (बदलने) करने की क्षमता खो दी है। इसके बजाय, AI हर ज़रूरत के लिए एक नया प्रोग्राम बनाता है। लेखक प्रस्ताव देते हैं कि हमें इसे स्वीकार करना चाहिए—नियमों (स्पेसिफिकेशन) को स्थायी मास्टर मानना चाहिए, और कोड को एक अस्थायी, परफेक्ट उत्पाद मानना चाहिए जिसे हर बार नियमों के बदलने पर फिर से बनाया (रीजेनरेट) जाता है। यह कोड को ठीक करने के बारे में नहीं है; यह सही काम के लिए सही कोड को फिर से बनाने के बारे में है।

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

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

Digest आज़माएँ →