क्या यह टर्मिनल AI असली कोडबेस को संभाल सकता है?

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00यह AIDER है, एक ओपन-सोर्स AI पेयर प्रोग्रामर जो आपके टर्मिनल में रहता है, और कोपायलट के विपरीत, यह कोई ऑटो-कम्प्लीट टूल नहीं है।
00:00:07यह ट्री-सिटर के साथ बने एक स्ट्रक्चर्ड फ़ाइल मैप का उपयोग करके सीधे आपके रेपो में बदलाव करता है, यह 100 से अधिक भाषाओं को सपोर्ट करता है, और यह क्लाउड, डीप-सीक और OpenAI जैसे मॉडल्स के साथ काम करता है।
00:00:17हम देखने वाले हैं कि यह क्लाउड कोड जैसे टूल्स के मुकाबले कैसा है, और क्या यह वाकई काम का है।
00:00:21हमारे वीडियो लगातार आते रहते हैं, इसलिए सब्सक्राइब करना न भूलें।
00:00:30तो, AIDER टर्मिनल में काम करता है, आप इसे इस तरह समझ सकते हैं जैसे ऑटो-कम्प्लीट अगली लाइन का अनुमान लगाता है।
00:00:35AIDER पूरे रिपॉजिटरी में बदलाव की रिक्वेस्ट लेता है और उसे वास्तविक एडिट्स और कमिट्स में बदल देता है।
00:00:39यह गिट-नेटिव है, यानी हर बदलाव एक कमिट है, और आप इसे तुरंत अनडू (undo) कर सकते हैं।
00:00:44AIDER खुद 225 अलग-अलग प्रोग्रामिंग टास्क को हल करने में 88% सफलता का दावा करता है।
00:00:49यह बहुत बड़ी बात है, यह एकदम परफेक्ट नहीं है, लेकिन हैरान करने वाली बात यह है कि उस कोड का 88% हिस्सा AIDER ने खुद लिखा था।
00:00:55मैं इसे बिल्कुल नए सिरे से करूँगा ताकि आप इसे दोहरा सकें। यह सिर्फ एक CLI है, किसी IDE की ज़रूरत नहीं है, लेकिन मैं इसे VS कोड में करूँगा ताकि आप देख सकें कि कोड कैसे प्रोसेस होता है।
00:01:03मैंने AIDER इंस्टॉल करने के लिए यहाँ एक cURL कमांड चलाया, फिर मैंने अपनी डीप-सीक API की ली और दूसरी कमांड चलाई।
00:01:12अगर आप पहली बार इस्तेमाल कर रहे हैं, तो AIDER सेटअप के कुछ स्टेप्स बताएगा, जो बहुत आसान हैं, बस हाँ या ना करना है, और फिर आप एडिटर में इस चैट विंडो के साथ तैयार हैं।
00:01:21अब, यह रहा ऐप। मैंने इसमें फ्लास्क (Flask) का बेसिक सेटअप जोड़ा है जिसमें अभी कोई ऑथेंटिकेशन नहीं है।
00:01:26मैं AIDER से फ्लास्क लॉगिन और bcrypt का उपयोग करके एक सुरक्षित यूज़र ऑथेंटिकेशन बनाने और कुछ यूनिट टेस्ट जोड़ने के लिए कहूँगा।
00:01:33इसे यहाँ ध्यान से देखिए। यह एक डायनेमिक रेपो मैप बनाता है।
00:01:38इसी वजह से यह सिर्फ एक फ़ाइल में अनुमान लगाने के बजाय पूरे कोडबेस में बदलाव कर सकता है।
00:01:42यह कई फ़ाइलों को एडिट करता है, रिक्वायरमेंट जोड़ता है, एक टेस्ट फ़ाइल बनाता है, और टेस्ट के साथ सुरक्षित ऑथेंटिकेशन जोड़ देता है।
00:01:48असली चीज़ यही है जो यह कर रहा है। अगर यह पासिंग टेस्ट और क्लीन कमिट तक नहीं पहुँच सकता, तो यह वास्तव में आपका समय नहीं बचाएगा।
00:01:55इसमें लगभग 45 सेकंड लगे, शायद थोड़ा ज़्यादा, है ना? लेकिन सब कुछ बन गया—कमिट्स, टेस्टिंग, सब कुछ।
00:02:01ज़्यादातर ऑटो-कम्प्लीट टूल्स फ़ाइलों के बीच की डिपेंडेंसी को नहीं समझते, इसलिए रिफैक्टरिंग के दौरान चीज़ें चुपचाप खराब हो सकती हैं।
00:02:07AIDER को पूरे रेपो एडिट्स के लिए बनाया गया है। इसने 20,000 से अधिक लाइनों वाले प्रोजेक्ट्स को संभाला है।
00:02:13डेवलपर्स डीप-सीक जैसे मॉडल्स के साथ 2 से 5 गुना स्पीड बढ़ने की बात करते हैं, और इसकी लागत भी करीब एक सेंट ही आती है।
00:02:19यह समय के बारे में है, लेकिन पैसे के बारे में भी है। अगर कोई टूल आपको तेज़ महसूस कराता है, लेकिन काम बिगाड़ देता है, तो वह वास्तव में आपको धीमा कर रहा है।
00:02:28ऐसी रिपोर्ट्स हैं जहाँ डेवलपर्स ने एक घंटे की रिफैक्टरिंग को 10 मिनट में समेट दिया। वे ऐसा कहते हैं, लेकिन इसका कोई पुख्ता सबूत नहीं है।
00:02:34यह सिर्फ अंदाज़े वाली कोडिंग नहीं है। यह कंट्रोल्ड, रिव्यू करने लायक और गिट-सेफ डेवलपमेंट है।
00:02:38तो एक मुश्किल रिफैक्टरिंग के दौरान क्या होता है? मैं इसे थोड़ा और चुनौती देता हूँ।
00:02:42यहाँ एक React और TypeScript टू-डू ऐप है। मैं इसमें डार्क मोड और API सिंक जोड़ना चाहता हूँ, जो एक मल्टी-फ़ाइल रिफैक्टरिंग है।
00:02:50पहले, मैं आर्किटेक्ट मोड का उपयोग करता हूँ और बदलाव की योजना बनाता हूँ। इसे लगता है कि कोई एडिट नहीं है।
00:02:55मैं कोड मोड पर स्विच करूँगा, योजना को लागू करूँगा और देखूँगा कि क्या होता है।
00:02:59यह थीम कॉन्फ़िग, कॉम्पोनेंट्स और API क्लाइंट को एडिट करता है।
00:03:03अब मैं इसे नए सिंक लॉजिक के लिए टेस्ट जेनरेट करने के लिए कहूँगा। चलिए इसे बनाते हैं।
00:03:08अगर बिल्ड फेल हो जाता है, तो ज़्यादातर टूल्स आपको वहीं फँसा छोड़ देते हैं। Aider के साथ भी कभी-कभी ऐसा हो सकता है,
00:03:13लेकिन यहाँ यह तुरंत गिट रेपो के बदलावों को अनडू कर सकता है, कोई नुकसान नहीं, बस प्रॉम्प्ट ठीक करें और इसे फिर से चलाएँ।
00:03:19मेरा बिल्ड पास हो गया। अब हमारे पास PR के लिए एक फीचर ब्रांच तैयार है।
00:03:23लेकिन सच कहें तो, यह भी बस एक और टर्मिनल टूल ही है, है ना?
00:03:27अगर हम इसकी तुलना कर्सर (Cursor) से करें, तो कर्सर बेहतरीन है, उसका UI काफी दमदार है।
00:03:31लेकिन टर्मिनल वर्कफ़्लो में भारी मल्टी-फ़ाइल रिफैक्टरिंग के लिए Aider बेहतर है।
00:03:37कोपायलट इनलाइन ऑटो-कम्प्लीट के लिए तेज़ है, लेकिन उसे पूरे रेपो के लॉजिक को समझने में दिक्कत होती है।
00:03:42फिर क्लाउड कोड है, है ना? उसकी समझने की क्षमता (reasoning) बहुत अच्छी है।
00:03:45लेकिन कभी-कभी गिट वर्कफ़्लो के मामले में यह उतना सटीक नहीं होता।
00:03:49Aider की ताकत उसका स्ट्रक्चर्ड रेपो एडिटिंग और गिट का तालमेल है।
00:03:52मेरा मतलब है, अगर हम पहले से मौजूद अन्य टूल्स को देखें, तो यह ठीक-ठाक है।
00:03:58निश्चित रूप से, दूसरे टूल्स शायद आपके काम के लिए ज़्यादा मज़बूत और बेहतर हो सकते हैं।
00:04:03लेकिन मुझे यह पसंद है कि मैं उन्हें अपनी ज़रूरत के हिसाब से बदल सकता हूँ। और जब मैं ऐसा करता हूँ, तो मैं डीप-सीक जोड़ सकता हूँ।
00:04:07इसके API कॉल्स बहुत सस्ते हैं और रिस्पॉन्स अभी भी काफी अच्छे हैं। आखिर यह डीप-सीक है।
00:04:12चीज़ों को पूरी तरह मुफ़्त बनाने के लिए मैं यहाँ Ollama का उपयोग कर सकता था, लेकिन अगर आपने Ollama इस्तेमाल किया है,
00:04:16तो आप जानते हैं कि यह अच्छा तो है, पर बहुत शानदार नहीं।
00:04:19अगर आप इसे आज़माना चाहते हैं, तो इसे सही तरीके से करने का तरीका यहाँ दिया गया है।
00:04:22सबसे पहले, किसी भी बड़े रिफैक्टर से पहले आर्किटेक्ट मोड आज़माएँ।
00:04:26अपनी YAML कॉन्फ़िग फ़ाइल को अपने मॉडल या पसंद के हिसाब से कॉन्फ़िगर करें,
00:04:30और यह जो भी डिफ (diffs) हमें दे रहा है, उसे हमेशा रिव्यू करें।
00:04:33फिर अगर आप चाहें, तो इसे VS कोड या अपनी पसंद के किसी भी एडिटर से जोड़ लें।
00:04:38मैंने इसे टर्मिनल में चलाया, लेकिन वह VS कोड के अंदर का टर्मिनल था।
00:04:41मिलते हैं अगले वीडियो में।

Key Takeaway

AIDER एक शक्तिशाली CLI-आधारित AI टूल है जो गिट के साथ गहराई से जुड़कर पूरे कोडबेस में सुरक्षित और सटीक बदलाव करने में सक्षम है।

Highlights

AIDER एक ओपन-सोर्स AI पेयर प्रोग्रामर है जो टर्मिनल में काम करता है और सीधे कोडबेस में बदलाव करता है।

यह टूल 'ट्री-सिटर' (tree-sitter) और स्ट्रक्चर्ड रेपो मैप का उपयोग करके पूरे रिपॉजिटरी के लॉजिक को समझता है।

AIDER गिट-नेटिव है, जिसका अर्थ है कि हर बदलाव एक कमिट के रूप में होता है जिसे आसानी से अनडू (undo) किया जा सकता है।

परीक्षणों में इसने 225 प्रोग्रामिंग कार्यों में 88% सफलता दर हासिल की है, जो इसकी कोडिंग क्षमता को दर्शाता है।

यह डीप-सीक (DeepSeek), क्लाउड (Claude) और OpenAI जैसे विभिन्न मॉडल्स को सपोर्ट करता है, जिससे यह सस्ता और प्रभावी बनता है।

मल्टी-फ़ाइल रिफैक्टरिंग और यूनिट टेस्ट जनरेशन के मामले में यह अन्य टूल्स की तुलना में अधिक सटीक है।

Timeline

AIDER का परिचय और मुख्य विशेषताएं

वीडियो की शुरुआत में AIDER को एक ओपन-सोर्स AI पेयर प्रोग्रामर के रूप में पेश किया गया है जो सीधे टर्मिनल में चलता है। यह कोपायलट जैसे ऑटो-कम्प्लीट टूल्स से अलग है क्योंकि यह पूरे रिपॉजिटरी में वास्तविक एडिट्स और कमिट्स करता है। इसके मुख्य फीचर्स में 100 से अधिक भाषाओं का सपोर्ट और क्लाउड या डीप-सीक जैसे मॉडल्स के साथ काम करना शामिल है। यह टूल गिट-नेटिव है, जिसका मतलब है कि उपयोगकर्ता किसी भी बदलाव को तुरंत अनडू कर सकते हैं। यह सेक्शन स्पष्ट करता है कि यह टूल केवल अगली लाइन का अनुमान नहीं लगाता बल्कि पूरे प्रोजेक्ट की संरचना को समझता है।

सफलता दर और इंस्टॉलेशन प्रक्रिया

वक्ता यहाँ AIDER की 88% सफलता दर का उल्लेख करते हैं जो कि 225 विभिन्न प्रोग्रामिंग कार्यों पर आधारित है। इंस्टॉलेशन प्रक्रिया को बहुत सरल बताया गया है जहाँ केवल एक cURL कमांड और API की (API key) की आवश्यकता होती है। इसे किसी भारी IDE की ज़रूरत नहीं है, हालांकि प्रदर्शन के लिए इसे VS कोड में दिखाया गया है। सेटअप के दौरान यह कुछ आसान सवाल पूछता है और फिर चैट विंडो उपयोग के लिए तैयार हो जाती है। यह हिस्सा दिखाता है कि कैसे एक डेवलपर इसे बिना किसी जटिलता के अपने वर्कफ़्लो में शामिल कर सकता है।

लाइव डेमो: फ्लास्क ऐप में ऑथेंटिकेशन जोड़ना

इस सेक्शन में एक व्यावहारिक उदाहरण दिखाया गया है जहाँ एक बेसिक फ्लास्क (Flask) ऐप में सुरक्षित यूज़र ऑथेंटिकेशन जोड़ा जाता है। AIDER 'डायनेमिक रेपो मैप' का उपयोग करता है जिससे वह कई फ़ाइलों में एक साथ बदलाव कर पाता है। इसने न केवल bcrypt के साथ लॉगिन सिस्टम बनाया, बल्कि आवश्यक रिक्वायरमेंट्स और यूनिट टेस्ट भी जोड़ दिए। यह पूरी प्रक्रिया लगभग 45 सेकंड में पूरी हो गई जो मैन्युअल कोडिंग की तुलना में बहुत तेज़ है। यहाँ महत्वपूर्ण बात यह है कि टूल ने कोड लिखने के साथ-साथ उसे टेस्ट करने के लिए फ़ाइलें भी तैयार कीं।

रिफैक्टरिंग क्षमता और लागत का विश्लेषण

यहाँ चर्चा की गई है कि कैसे AIDER बड़े प्रोजेक्ट्स (20,000+ लाइन्स) को संभालने में सक्षम है। अन्य टूल्स अक्सर फाइलों के बीच की डिपेंडेंसी को नहीं समझ पाते, जिससे रिफैक्टरिंग के दौरान कोड खराब हो सकता है। डेवलपर्स ने इसके उपयोग से कोडिंग स्पीड में 2 से 5 गुना वृद्धि दर्ज की है। डीप-सीक जैसे मॉडल्स के साथ इसकी लागत प्रति कार्य लगभग एक सेंट तक आती है, जो इसे बहुत किफायती बनाती है। यह सेक्शन इस बात पर ज़ोर देता है कि यह केवल तेज़ नहीं है, बल्कि 'गिट-सेफ' और रिव्यू करने लायक डेवलपमेंट प्रदान करता है।

चुनौतीपूर्ण रिफैक्टरिंग और अनडू फीचर

वक्ता एक React और TypeScript ऐप में डार्क मोड और API सिंक जोड़कर टूल को चुनौती देते हैं। इसके लिए पहले 'आर्किटेक्ट मोड' का उपयोग करके योजना बनाई जाती है और फिर कोड मोड में उसे लागू किया जाता है। यदि बिल्ड फेल हो जाता है या परिणाम संतोषजनक नहीं होते, तो AIDER गिट के माध्यम से तुरंत बदलावों को पीछे ले जा सकता है। यह सुरक्षा जाल डेवलपर्स को निडर होकर बड़े बदलाव करने की अनुमति देता है। अंत में, एक सफल बिल्ड के साथ एक नई फीचर ब्रांच तैयार हो जाती है।

अन्य टूल्स से तुलना और सर्वोत्तम प्रथाएं

अंतिम भाग में AIDER की तुलना कर्सर (Cursor), कोपायलट और क्लाउड कोड से की गई है। जबकि कर्सर का UI बेहतर है, टर्मिनल वर्कफ़्लो और भारी रिफैक्टरिंग के लिए AIDER को श्रेष्ठ बताया गया है। वक्ता सुझाव देते हैं कि मुफ़्त अनुभव के लिए Ollama का उपयोग किया जा सकता है, हालांकि डीप-सीक अधिक प्रभावी है। उपयोग के लिए कुछ टिप्स भी दी गई हैं, जैसे बड़े बदलावों से पहले आर्किटेक्ट मोड का उपयोग करना और हमेशा डिफ्स (diffs) को रिव्यू करना। वीडियो का समापन इसे VS कोड टर्मिनल के साथ जोड़कर इस्तेमाल करने की सलाह के साथ होता है।

Community Posts

No posts yet. Be the first to write about this video!

Write about this video