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मिलते हैं अगले वीडियो में।