- सॉफ्टवेयर डेवलपमेंट में Bus Factor उस अवधारणा को दर्शाता है जो बताती है कि किसी प्रोजेक्ट को बनाए रखने के लिए किसी खास ज्ञान के कितने धारकों की जरूरत है; पहले सबसे खराब स्थिति में इसका मान 1 होता था
- लेकिन ChatGPT के सार्वजनिक होने (30 नवंबर 2022) के बाद, generative AI के व्यापक अपनाव के साथ बहुत से लोग ज्ञान को खुद संरक्षित करने के बजाय AI पर निर्भर होने लगे, और व्यवहार में Bus Factor 0 जैसी स्थिति पैदा हो गई
- प्रोग्रामिंग के मैदान में,越来越 अधिक डेवलपर LLM द्वारा जनरेट किए गए कोड और फीचर को ज्यों-का-त्यों इस्तेमाल कर रहे हैं, कोडबेस को समझने की कोशिश छोड़ रहे हैं, और “vibe coding” की ओर बढ़ रहे हैं
- इसके कारण bug fix, security patch और feature expansion के समय ऐसी स्थिति का सामना करना पड़ सकता है जहाँ किसी को भी यह न पता हो कि कोड उस तरह क्यों लिखा गया था
- यह सॉफ्टवेयर की reliability और security के लिए गंभीर जोखिम पैदा करता है, और उस दिन तक जब AI पूरी तरह सही कोड पूरी तरह सही ढंग से बना सके, एक बुनियादी सीमा बनी रहती है
Bus Factor की अवधारणा और इतिहास
- Bus Factor वह अवधारणा है जो यह संख्या के रूप में व्यक्त करती है कि कोई विशेष ज्ञान कितने लोगों के बीच साझा है
- उदाहरण: अगर 3 लोग database backup restore करना जानते हैं, तो उस फ़ंक्शन का Bus Factor 3 है
- परंपरागत रूप से इसका सबसे खराब मान 1 था, और अगर एक व्यक्ति वह ज्ञान खो देता, तो प्रोजेक्ट को बनाए रखना असंभव हो जाता
- मानव समाज ने इसे दूर करने के लिए documentation, training, knowledge transfer, seminar, school आदि अनेक तरीकों से ज्ञान फैलाया
- इससे लोगों, संसाधनों और समय का निवेश कर ज्ञान के हस्तांतरण और संरक्षण की व्यवस्थित कोशिशें होती रही हैं
AI की शुरुआत और Bus Factor 0
- नवंबर 2022 में ChatGPT के लॉन्च के साथ “AI First” युग शुरू हुआ
- जब AI कोड और फीचर जनरेट करने लगा, तो बहुत से लोग ज्ञान संरक्षण की प्रक्रिया से बाहर हो गए और AI के आउटपुट पर निर्भर होने लगे, जिससे प्रोजेक्ट की समझ तेजी से घट गई
- नतीजतन ऐसी स्थिति बनी जिसमें ज्ञान रखने वाला कोई भी नहीं, यानी Bus Factor 0
- प्रोग्रामर खुद कोड लिखने और समझने के बजाय, उसे पूरी तरह AI को सौंपने की दिशा में बढ़ने लगे
- इस प्रक्रिया में डेवलपर कोडबेस की समझ और documentation से बचते हुए बस AI से दोबारा समझाने को कहने वाले पैटर्न की ओर बदलने लगे
LLM-आधारित coding की समस्या
- कोड क्वालिटी की समस्या को अलग भी रख दें, तो मूल बात यह है कि पढ़ना और maintenance करना, लिखने की तुलना में स्वभावतः अधिक कठिन है
- पहले mentor या documentation कम-से-कम कुछ मदद देते थे, लेकिन AI-निर्भर माहौल में यह safety net भी गायब हो जाती है
- LLM-आधारित डेवलपमेंट में कोड जनरेशन की प्रक्रिया दर्ज नहीं होती, और AI खुद भी अपने जनरेट किए गए कोड का संदर्भ याद नहीं रखता
- आखिरकार डेवलपरों को AI द्वारा लिखा गया लेकिन संदर्भहीन कोड समझना और बदलना पड़ता है
- इससे bug समाधान, security vulnerability patch, dependency upgrade आदि में ऐसी स्थिति पैदा होती है जहाँ कोड की मंशा और संरचना किसी को भी पता नहीं होती
उपयोगकर्ता के नज़रिए से जोखिम
- सिर्फ डेवलपर ही नहीं, उपयोगकर्ता भी जोखिम में आते हैं
- personal document, credit card जानकारी, निजी फोटो या निजी विचार अपलोड कराने वाला सॉफ्टवेयर ऐसे कोड से बना हो सकता है जिसकी आंतरिक संरचना और उद्देश्य किसी को भी पता न हो
- यह data protection और reliability के लिहाज से गंभीर जोखिम रखता है, और service stability को लेकर सवाल खड़े करता है
निष्कर्ष
- Bus Factor 0 पैदा करने वाली vibe coding मूल रूप से त्रुटिपूर्ण तरीका है
- यह वह अपरिहार्य सीमा है जो तब तक बनी रहेगी जब तक AI 100% सही prompt से 100% सही कोड जनरेट नहीं कर सकता
- इसलिए मौजूदा स्थिति में AI के उपयोग के साथ-साथ ज्ञान संरक्षण और कोड को समझने के महत्व को नज़रअंदाज़ नहीं किया जा सकता, और knowledge management तथा documentation की व्यवस्था बनाए रखना अनिवार्य है
अभी कोई टिप्पणी नहीं है.