Transcript
00:00:00आप उन्हें जानते हैं। लंबी पोनीटेल, ओवल चश्मा, जो वर्जन कंट्रोल के आने से पहले से कंपनी में हैं।
00:00:06आप उन्हें 50 लाइनें दिखाते हैं, वे उन्हें देखते हैं, कुछ नहीं कहते, और उन्हें एक लाइन से बदल देते हैं।
00:00:11यह Ponytail नाम की इस नई लाइब्रेरी का महाकाव्य विवरण है, जो मुझे लगता है कि
00:00:17काफी मिलता-जुलता है। हम सभी उस एक 10x डेवलपर को जानते हैं जो इस विवरण से पूरी तरह मेल खाता है। लेकिन Ponytail
00:00:23वास्तव में एक बहुत अच्छा टूल है। यह आपके AI कोडिंग एजेंट को कमरे में सबसे आलसी सीनियर डेवलपर
00:00:29की तरह सोचने पर मजबूर करता है। और यह वास्तव में एक तारीफ है। तो इस वीडियो में, हम Ponytail पर एक नज़र डालेंगे,
00:00:35देखेंगे कि यह कैसे काम करता है, और कुछ मजेदार डेमो चलाएंगे ताकि पता चल सके कि क्या यह वाकई काम का है।
00:00:41यह बहुत मजेदार होने वाला है, तो चलिए इसमें गहराई से उतरते हैं।
00:00:48तो Ponytail का मिशन सरल है। सब कुछ बेहद संक्षिप्त रखें, उस फालतू चीज़ों को खत्म करें जो AI एजेंट आमतौर पर
00:00:55उत्पन्न करते हैं, और किसी समस्या का सबसे आसान समाधान खोजने की कोशिश करें।
00:01:00यह कुछ हद तक Caveman के समान है, जो वह लाइब्रेरी थी जिसने AI कोडिंग एजेंटों को कम बोलने के लिए मजबूर किया,
00:01:06जिससे कम टोकन खर्च हुए, जिस पर जेम्स ने भी यहाँ एक बेहतरीन वीडियो बनाया था। तो मुख्य विचार
00:01:12इसके पीछे YAGNI सिद्धांत को अपनाना है, जिसका अर्थ है “you ain't gonna need it” (आपको इसकी आवश्यकता नहीं होगी)। यह वास्तव में 90 के दशक का
00:01:18सॉफ्टवेयर इंजीनियरिंग का विचार है। और इसका मूल विचार यह है कि जब तक आपको वास्तव में ज़रूरत न हो, तब तक कुछ न बनाएँ।
00:01:25कोई एब्स्ट्रैक्शन लेयर न जोड़ें, कोई लाइब्रेरी इंस्टॉल न करें, क्लास न लिखें।
00:01:31अगर समस्या इसके बिना हल हो सकती है, तो बस इसे इसके बिना हल करें। और Ponytail इसे सीधे
00:01:37आपके एजेंट में शामिल करता है, उसे एक निर्णय लेने वाली सीढ़ी देता है जिसे उसे कुछ भी लिखने से पहले चढ़ना होता है। क्या इसका
00:01:43होना जरूरी है? क्या मानक लाइब्रेरी इसे संभाल सकती है? क्या इसके लिए कोई नेटिव प्लेटफॉर्म फीचर है? क्या वहाँ
00:01:50पहले से ही कोई इंस्टॉल की हुई डिपेंडेंसी है जो यह काम करती है? क्या यह एक लाइन में हो सकता है? केवल अगर इन सभी
00:01:57सवालों का जवाब नहीं है, तभी यह नया कोड लिखता है। और तब भी, यह इसे काम पूरा करने के लिए आवश्यक न्यूनतम तक ही सीमित रखता है।
00:02:04इतना ही काफी है।
00:02:05और अगर हम उनके कुछ उदाहरणों को देखें, विशेष रूप से मोडल डायलॉग उदाहरण, तो हमें इस पद्धति की स्पष्ट तस्वीर मिलती है।
00:02:11एक सामान्य एजेंट, जब उसे डिलीट कन्फर्मेशन के लिए मोडल डायलॉग जोड़ने के लिए कहा जाता है,
00:02:18तो वह तुरंत React डायलॉग जैसी Radix UI लाइब्रेरी इंस्टॉल करने के लिए हाथ बढ़ाएगा और आपको एक
00:02:25डिपेंडेंसी, एक पोर्टल, एक ओवरले, एक रूट, एक ट्रिगर, और एक कंटेंट रैपर दे देगा, सिर्फ दो बटनों वाला बॉक्स दिखाने के लिए।
00:02:34लेकिन Ponytail इसे देखता है और कहता है, अरे, ब्राउज़र में पहले से ही एक डायलॉग एलिमेंट है। यह फोकस को स्वचालित रूप से
00:02:41ट्रैप कर लेता है। और यह एस्केप दबाने पर बंद हो जाता है, एक सिंगल CSS सेलेक्टर के साथ बैकड्रॉप रेंडर करता है,
00:02:49और यह 2022 से हर प्रमुख ब्राउज़र में समर्थित है। तो NPM पैकेज में 30 लाइनों के बजाय,
00:02:58आपको आठ लाइनें और शून्य डिपेंडेंसी मिलती हैं। और यह छोटा Ponytail कमेंट यहाँ
00:03:04आपको बिल्कुल बताता है कि उसने क्या छोड़ दिया और क्यों ऐसा किया। इसलिए यदि आप किसी दिन वास्तव में इसे
00:03:11Radix वर्ज़न या कुछ और फैंसी चीज़ में अपग्रेड करने का निर्णय लेते हैं, तो आप जानते हैं कि कहाँ जाना है और क्या टाला गया था।
00:03:16तो यह आलसी है, लेकिन गैर-जिम्मेदार नहीं है। और इस आलस को अपनाकर, Ponytail का दावा है कि वह
00:03:22आपकी लागत को 47 से 77% तक कम कर सकता है। और वे वास्तव में इस दावे के पीछे कुछ बेंचमार्क देते हैं। तो आइए
00:03:29उन्हें कुछ पलों के लिए देखते हैं। हमारे पास तीन तरीके हैं: कोई स्किल का उपयोग न करना, Caveman का उपयोग करना, और Ponytail का उपयोग करना।
00:03:36और तीन मॉडल और पांच दैनिक कार्य। प्रति सेल दस रन और उनमें से प्रत्येक के लिए माध्य परिणाम। और
00:03:43महत्वपूर्ण बात यह है कि वे शुद्धता की भी जांच करते हैं। एक टूटा हुआ वन-लाइनर जो कोड की लाइनों पर अच्छा स्कोर करता है, वह शुद्धता पर विफल हो जाएगा।
00:03:50तो यह सिर्फ कम चीज़ें लिखना नहीं है, इसे वास्तव में काम भी करना चाहिए। और एक दिलचस्प
00:03:56सावधानी भी है जो ध्यान देने योग्य है। लागत उन सिंगल-शॉट कॉल्स को दर्शाती है जो हर बार स्किल को फिर से भेजते हैं। दूसरे शब्दों में,
00:04:03बेंचमार्क हर टेस्ट के लिए एक नई API कॉल भेजकर काम करता है। और हर बार जब यह ऐसा करता है, तो इसमें
00:04:10प्रॉम्प्ट में पूरा Ponytail नियम सेट शामिल होता है। तो बेंचमार्क में, Ponytail को हर एक टेस्ट पर अपने स्वयं के निर्देशों की लागत के लिए दंडित किया जा रहा है।
00:04:16वास्तविक जीवन में, आप उन निर्देशों के लिए लगभग प्रति सत्र एक बार भुगतान करते हैं। और उसके बाद, वे कैश किए जाते हैं।
00:04:22इसका मतलब है कि 47 से 77% सस्ता आंकड़ा वास्तव में इसे कम करके दिखा रहा है। कई प्रॉम्प्ट में फैले वास्तविक कार्य सत्र में, लागत का लाभ और भी बड़ा है
00:04:29क्योंकि वह स्किल इंजेक्शन लागत पूरी बातचीत में अमोर्टाइज़ हो जाती है। उस ने कहा, एक वैध आलोचना
00:04:36है जो उल्लेख करने योग्य है। कॉलिन एबरहार्ट द्वारा प्रकाशित एक हालिया ब्लॉग पोस्ट
00:04:42यह बताता है कि यदि आप वास्तव में Ponytail को तीन सरल शब्दों, “follow Yagni principles” (यागनी सिद्धांतों का पालन करें), से बदल दें, तो इसके परिणाम
00:04:48लगभग पूरी तरह से Ponytail के बेंचमार्क स्कोर से मेल खाते हैं। और सात शब्दों तक विस्तार करते समय, “follow Yagni
00:04:55principles and one liner solutions” (यागनी सिद्धांतों और वन-लाइनर समाधानों का पालन करें), इसने वास्तव में बेंचमार्क को हरा दिया। तो क्या Ponytail जादू है या यह सिर्फ एक अच्छी तरह से पैक किया गया
00:05:03प्रॉम्प्ट है? खैर, ईमानदारी से, यह एक उचित सवाल है। लेकिन मैं तर्क दूंगा कि पैकेजिंग ही उत्पाद है। आपको सही नियम
00:05:11कमांड्स, ऑडिट टूल्स, और ऊपर एक डेप्थ लेजर के साथ अलग-अलग एजेंटों में स्वचालित रूप से इंजेक्ट किए जाते हैं। इसके अलावा,
00:05:18Ponytail में अन्य बेहतरीन फीचर्स हैं। आपके सिस्टम प्रॉम्प्ट में YAGNI का पालन करना आपको
00:05:25Ponytail ऑडिट फीचर या Ponytail रिव्यू फीचर नहीं देता है। लेकिन अब आइए इसे एक सरल उदाहरण के साथ टेस्ट करते हैं।
00:05:31तो यहाँ मेरे पास दो Cloud Code इंस्टेंस खुले हैं और उनमें से एक पर, मैं केवल स्थानीय दायरे (local scope) के लिए
00:05:37Ponytail प्लगइन इंस्टॉल करने जा रहा हूँ। और दूसरा एक साधारण डिफ़ॉल्ट Cloud Code इंस्टेंस होगा जिसमें कोई
00:05:44प्लगइन सक्रिय नहीं हैं। मैं उन्हें दोनों को एक ही प्रॉम्प्ट दूंगा कि वे एक मौसम डैशबोर्ड ऐप बनाएँ जो उपयोगकर्ता के
00:05:49स्थान का पता लगाए और कुछ अन्य फीचर्स के साथ वर्तमान मौसम की स्थिति दिखाए। और मैं दोनों इंस्टेंस पर
00:05:56एक ही प्रॉम्प्ट चलाने जा रहा हूँ, केवल इस अपवाद के साथ कि Ponytail वाले पर, मैं इसे
00:06:02Ponytail स्किल का उपयोग करने के लिए भी कहूँगा क्योंकि कभी-कभी यह इसे स्वचालित रूप से नहीं उठाता है। तो कुछ
00:06:08क्षणों के बाद, हम देखते हैं कि Ponytail वर्ज़न ने पहले ही एक मिनट से भी कम समय में कार्य पूरा कर लिया है, जबकि
00:06:12डिफ़ॉल्ट वाला अभी भी प्रोसेसिंग कर रहा है। और साथ ही हम देखते हैं कि इसने क्या बनाया है और Ponytail ने क्या
00:06:18अधिकतम दक्षता के लिए करने से मना किया है, उसका एक बहुत संक्षिप्त अवलोकन है। और जैसा कि हम यहाँ देख सकते हैं, इसने सब कुछ एक ही HTML फ़ाइल में रखना चुना है।
00:06:25इस बीच, डिफ़ॉल्ट विंडो पर, कार्य दो मिनट और 30 सेकंड में पूरा हुआ। और हम पहले ही देख सकते हैं कि यह
00:06:34वर्ज़न बहुत अधिक ब्लोटेड है। हमारे पास तीन अलग-अलग फ़ाइलें हैं और यह वर्ज़न पायथन सर्वर का उपयोग करके चलाया जाता है।
00:06:41तो हालांकि यह किसी भी तरह से खराब परिणाम नहीं है, यह पहले वर्ज़न की तुलना में बहुत अधिक ओवर-इंजीनियर्ड है।
00:06:48लेकिन आइए वास्तव में देखें कि वे कैसे काम करते हैं। तो सबसे पहले, यह Ponytail के बिना वाला वर्ज़न है।
00:06:54और हालांकि ऐप बहुत अच्छा दिखता है और UI सुंदर है और API उम्मीद के मुताबिक जानकारी प्राप्त करता है,
00:07:00मैं काफी निराश हूँ कि इसने मेरे स्थान को स्वचालित रूप से नहीं उठाया जैसा कि मैंने पूछा था।
00:07:07और इसके बजाय यह मुझे डिफ़ॉल्ट पहले परिणाम के रूप में लंदन दिखाता है। लेकिन अब अगर हम Ponytail वर्ज़न पर जाएँ,
00:07:12यहाँ हम स्पष्ट रूप से देख सकते हैं कि इसे खोलने पर, यह मेरे वर्तमान स्थान को प्राप्त करने के लिए कहता है और फिर मौसम को
00:07:19उस स्थान से मेल खाते हुए आउटपुट करता है। तो हालांकि UI शायद इतना फैंसी नहीं है और ऐप शायद अधिक बुनियादी है,
00:07:25इसने डिफ़ॉल्ट वर्ज़न की तुलना में निर्देशों का अधिक सटीक पालन किया, जो कि काफी आश्चर्यजनक है, सच कहूँ तो।
00:07:33और अंत में, आइए उपयोग पर नज़र डालते हैं। और यहाँ हम देख सकते हैं कि हाँ, वास्तव में, Ponytail वाला वर्ज़न
00:07:39डिफ़ॉल्ट वर्ज़न की तुलना में 50% सस्ता रहा। और इसने कोड की बहुत कम लाइनें भी तैयार कीं।
00:07:45और जैसा कि हमने अभी देखा, यह कार्यक्षमता के मामले में डिफ़ॉल्ट वर्ज़न से भी बेहतर था।
00:07:52तो यह साबित करता है कि Ponytail वास्तव में उम्मीद के मुताबिक काम करता है, और यह वास्तव में दुबला कोड तैयार करता है।
00:07:58तो चूंकि यह टेस्ट इतना सफल रहा, मैंने कुछ और भी दिलचस्प करने का फैसला किया।
00:08:04क्या होगा यदि मैं अधिकतम दक्षता के लिए Caveman और Ponytail को एक साथ मिला दूँ? वह हमें क्या देगा?
00:08:09तो इस बार मैंने एक नई डायरेक्टरी में दोनों प्लगइन्स को सक्रिय किया और फिर से वही प्रॉम्प्ट चलाया।
00:08:17और एक बार फिर, कार्य एक मिनट से कम समय में पूरा हो गया और आउटपुट काफी समान था।
00:08:22और मेरे पास सभी समान कार्यक्षमता थी। तो यह उम्मीद के मुताबिक काम कर गया।
00:08:28लेकिन अगर हम आउटपुट को देखें, तो यह Ponytail वर्ज़न से बहुत अलग नहीं था और Caveman
00:08:32प्लस Ponytail कॉम्बो अकेले Ponytail वर्ज़न से थोड़ा और महंगा निकला।
00:08:37तो यह दर्शाता है कि उन्हें मिलाने से वास्तव में आपको कोई बड़ा सुधार नहीं मिलता है।
00:08:44तो आप केवल Caveman का उपयोग करने या इससे भी बेहतर Ponytail का उपयोग करने के लिए चुन सकते हैं।
00:08:49यदि हम उनके बेंचमार्क पर विश्वास कर सकते हैं कि यह वास्तव में Caveman से बेहतर है।
00:08:54तो यह रहा, दोस्तों। यह Ponytail संक्षेप में।
00:08:58मैं वास्तव में उस सकारात्मक आउटपुट से प्रभावित हूँ जो Claude उत्पन्न करने में सक्षम था
00:09:02Ponytail स्किल के साथ, जबकि ब्लोट को कम करना और साथ ही गुणवत्ता बनाए रखना।
00:09:07मुझे लगता है कि यह सिर्फ यह दिखाने के लिए है कि हमारे बहुत से कोडिंग समाधान शायद ओवर-इंजीनियर्ड हैं
00:09:13और कभी-कभी कम वास्तव में अधिक होता है यदि आप इसे सही तरीके से उपयोग करते हैं।
00:09:19तो मैं निश्चित रूप से Ponytail को अपने Claude कोड सेटअप में एक प्लगइन के रूप में रखने जा रहा हूँ
00:09:23और शायद भविष्य के प्रोजेक्ट्स के लिए इसका उपयोग करूँगा।
00:09:29लेकिन आप Ponytail के बारे में क्या सोचते हैं? क्या आपने इसे आज़माया है?
00:09:31क्या आप इसका उपयोग करेंगे? हमें नीचे कमेंट सेक्शन में बताएं।
00:09:34और दोस्तों, यदि आपको इस प्रकार के तकनीकी ब्रेकडाउन पसंद हैं,
00:09:37कृपया मुझे वीडियो के नीचे लाइक बटन को दबाकर बताएं।
00:09:40और हमारे चैनल को सब्सक्राइब करना न भूलें।
00:09:44यह BetterStack से Andrus था और मैं आपसे अगले वीडियो में मिलूँगा।
00:09:47धन्यवाद।