𝗔𝗜 𝗪𝗿𝗶𝘁𝗲𝘀 𝘁𝗵𝗲 𝗖𝗼𝗱𝗲. 𝗪𝗵𝗼 𝗚𝗶𝘃𝗲𝘀 𝗜𝘁 𝘁𝗵𝗲 𝗖𝗼𝗻𝘁𝗲𝘅𝘁?
AI कोड लिख सकता है। लेकिन यह आपके सिस्टम को नहीं जानता।
जब आप कोडिंग के लिए AI का उपयोग करते हैं, तो पहला उत्तर शायद ही कभी सबसे अच्छा होता है। आपको कॉन्टेक्स्ट (context) जोड़ना होगा। आपको गलतियों को सुधारना होगा। आपको यह समझाना होगा कि आपने पहले क्या कोशिश की है।
इस प्रक्रिया को कॉन्टेक्स्ट इंजीनियरिंग (context engineering) कहा जाता है। सॉफ्टवेयर इंजीनियरिंग में AI का उपयोग करने का यह सबसे महत्वपूर्ण हिस्सा है।
AI विश्वसनीय कोड तैयार करता है। यह सही दिखता है। यह टेस्ट में भी पास हो सकता है। लेकिन सॉफ्टवेयर शून्य में अस्तित्व में नहीं रहता। इसे आपकी विशिष्ट दुनिया में फिट होना चाहिए।
AI को स्वचालित रूप से आपके बारे में पता नहीं होता:
- आर्किटेक्चर के नियम (Architecture rules)
- सुरक्षा संबंधी ज़रूरतें (Security needs)
- मौजूदा पैटर्न (Existing patterns)
- डोमेन लॉजिक (Domain logic)
- तकनीकी निर्णय (Technical decisions)
यदि आप यह कॉन्टेक्स्ट प्रदान नहीं करते हैं, तो आप समस्याएँ पैदा करते हैं।
एक बड़ा जोखिम डुप्लीकेशन (duplication) का है। AI को यह नहीं पता कि आपके पास पहले से ही एक वैलिडेशन हेल्पर या एक विशिष्ट एरर हैंडलर मौजूद है। यह बस एक नया बना देगा। अब आपके सिस्टम के पास एक ही समस्या को हल करने के दो तरीके हैं। यह 'खुद को न दोहराने' (not repeating yourself) के नियम का उल्लंघन करता है।
यदि आप केवल गति (speed) के लिए ऑप्टिमाइज़ करते हैं, तो आप अपने भविष्य को धीमा कर देते हैं। आप फीचर्स तेज़ी से शिप कर सकते हैं, लेकिन आपके सिस्टम में बदलाव करना कठिन हो जाएगा।
इसे ठीक करने के लिए, आपको इंजीनियरिंग ज्ञान के साथ कोड की तरह व्यवहार करना चाहिए। इसे निम्नलिखित की आवश्यकता है:
- वर्जनिंग (Versioned)
- रिव्यू (Reviewed)
- ओनरशिप (Owned)
- अपडेटेड (Kept current)
केवल डॉक्यूमेंटेशन काफी नहीं है। पुराना (outdated) डॉक्यूमेंटेशन खतरनाक है। यह AI को गलत आत्मविश्वास देता है। यह मॉडल को उन पुराने पैटर्न्स का पालन करने के लिए प्रेरित करता है जिनका आपकी टीम अब उपयोग नहीं करती है।
बेहतरीन टीमें केवल बेहतर प्रॉम्प्ट (prompts) नहीं लिखतीं। वे बेहतर गार्डरेल्स (guardrails) बनाती हैं।
AI से किसी नियम का पालन करने के लिए कहने के बजाय, उसे लागू करने के लिए ऑटोमेटेड टेस्ट का उपयोग करें। निम्नलिखित की जाँच के लिए CI/CD का उपयोग करें:
- स्टैटिक एनालिसिस एरर्स (Static analysis errors)
- सुरक्षा संबंधी कमियाँ (Security vulnerabilities)
- आर्किटेक्चरल बाउंड्री का उल्लंघन (Architectural boundary violations)
- डिपेंडेंसी संबंधी समस्याएँ (Dependency issues)
AI कोड बनाना सस्ता बना देता है। लेकिन यह प्रोडक्ट को समझने के महत्व को कम नहीं करता है। वास्तव में, कॉन्टेक्स्ट सबसे मूल्यवान संसाधन बन जाता है।
विजेता वे टीमें नहीं होंगी जो सबसे अधिक कोड जेनरेट करती हैं। वे वे टीमें होंगी जो यह स्पष्ट निर्देश देंगी कि विभिन्न हिस्से एक साथ कैसे जुड़ते हैं।
Source: https://dev.to/icetique/ai-can-write-the-code-who-gives-it-the-context-2l1b
Optional learning community: https://t.me/GyaanSetuAi