इन स्किल्स का बस एक ही काम था (और ये फेल हो गईं)

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00तो ऐसा लगता है कि अपने एजेंट्स को अतिरिक्त कॉन्टेक्स्ट देने के लिए 'स्किल्स' (skills) शायद सबसे अच्छा तरीका नहीं है और शायद agents.md फ़ाइल का इस्तेमाल करना ज़्यादा फ़ायदेमंद हो सकता है।
00:00:08दरअसल यह वह चौंकाने वाला नतीजा था जो Vercel को तब मिला जब वे कोडिंग एजेंट्स को Next.js डॉक्यूमेंटेशन देने का सबसे अच्छा तरीका टेस्ट कर रहे थे।
00:00:15तो चलिए सीधे मुद्दे पर आते हैं और देखते हैं कि क्या हुआ, क्यों हुआ और यह हमें कोडिंग एजेंट्स के प्रभावी इस्तेमाल के बारे में क्या सिखाता है।
00:00:26जैसा कि मैंने कहा, Vercel का लक्ष्य कोडिंग एजेंट को अतिरिक्त कॉन्टेक्स्ट देना था, इस मामले में Next.js डॉक्यूमेंटेशन, ताकि जब आप एजेंट का इस्तेमाल करें और Next.js लिख रहे हों, तो उसे सभी नए APIs के बारे में पता हो, क्योंकि उनमें से कुछ शायद अभी ट्रेनिंग डेटा में न हों।
00:00:41या इसका उल्टा भी हो सकता है—हो सकता है कि वह Next.js का कोई पुराना वर्शन हो और आप यह पक्का करना चाहते हों कि एजेंट सिर्फ उसी वर्शन में उपलब्ध मेथड्स का इस्तेमाल करे।
00:00:47वे एक ऐसा सिस्टम चाहते थे जिसमें वर्शन-मैच्ड डॉक्यूमेंटेशन हो जिसका एजेंट इस्तेमाल कर सके।
00:00:51इसके लिए उन्होंने दो आम तरीकों का परीक्षण किया।
00:00:54पहला तरीका है 'स्किल्स'।
00:00:56ये पिछले कुछ समय में काफी लोकप्रिय हुए हैं और बहुत सारे फ्रेमवर्क्स और टूल्स इन्हें रिलीज़ कर रहे हैं।
00:01:01विडंबना यह है कि Vercel खुद अपनी स्किल्स CLI और रिपॉजिटरी के जरिए इसे लोकप्रिय बनाने में मदद कर रहा है।
00:01:08मैं आपको इन्हें देखने की पुरज़ोर सलाह देता हूँ।
00:01:09अब, अगर आप नहीं जानते कि स्किल्स क्या हैं, तो ये दरअसल एंथ्रोपिक (Anthropic) का एक ओपन स्टैंडर्ड हैं। ये निर्देशों, स्क्रिप्ट्स और कॉन्टेक्स्ट के मॉड्यूलर बंडल हैं जिन्हें एक एजेंट ज़रूरत पड़ने पर टास्क को सही ढंग से पूरा करने के लिए लोड कर सकता है।
00:01:20लेकिन सबसे अहम बात यही है: यह पूरी तरह से एजेंट पर निर्भर करता है कि वह कब इस जानकारी को लोड करे।
00:01:26और यही हिस्सा इसकी सबसे बड़ी कमी लगता है। जब Vercel ने इवैल्यूएशन (evals) चलाए, तो उन्होंने पाया कि 56 प्रतिशत समय 'स्किल' कभी कॉल ही नहीं की गई।
00:01:35एजेंट ने बस उसे इस्तेमाल न करने का फैसला किया।
00:01:37और हैरानी की बात यह है कि एजेंट को स्किल देने से इवैल्यूएशन में कोई सुधार नहीं हुआ, जबकि उस एजेंट के मुकाबले जिसके पास स्किल नहीं थी।
00:01:44इससे भी ज़्यादा चौंकाने वाली बात यह थी कि उन्होंने पाया कि स्किल का नकारात्मक प्रभाव भी पड़ सकता है।
00:01:48कभी-कभी स्किल का इस्तेमाल न होने पर एजेंट ने बेसलाइन से भी खराब प्रदर्शन किया, जिससे पता चलता है कि अनयूज्ड स्किल शोर या ध्यान भटकाने का काम कर सकती है।
00:01:57इसे ठीक करने के लिए, उन्होंने प्रॉम्प्ट में साफ तौर पर यह कहकर कोशिश की, "कृपया इस स्किल का उपयोग करें।"
00:02:02इससे मदद मिली। स्किल ट्रिगर रेट बढ़कर 95 प्रतिशत हो गया और इवैल्यूएशन पास रेट 79 प्रतिशत तक पहुँच गया।
00:02:09लेकिन इसके साथ अपनी ही समस्याएँ आईं। उन्होंने पाया कि शब्दों में मामूली बदलाव से नतीजों में ज़मीन-आसमान का अंतर आ रहा था।
00:02:15उदाहरण के लिए, अगर आपने कहा "आपको इस स्किल का उपयोग करना ही होगा", तो उसने ऐसा किया, लेकिन फिर उसने प्रोजेक्ट कॉन्टेक्स्ट को छोड़ दिया।
00:02:21इसलिए आपको कहना पड़ा "स्किल और प्रोजेक्ट कॉन्टेक्स्ट दोनों का उपयोग करें।"
00:02:24Vercel को इस सिस्टम की कमज़ोरी पसंद नहीं आई। उनका कहना था कि अगर शब्दों के छोटे बदलावों से व्यवहार में इतने बड़े बदलाव आते हैं, तो प्रोडक्शन के लिए यह तरीका बहुत ही नाजुक और अविश्वसनीय है।
00:02:33इसलिए उन्हें एक ज़्यादा भरोसेमंद समाधान की ज़रूरत थी, जिसमें एजेंट को खुद फैसला न लेना पड़े।
00:02:40तभी उन्होंने agents.md फ़ाइल का सहारा लिया।
00:02:42अब, यह एक ओपन फॉर्मेट है जिसका उपयोग कई एजेंट्स करते हैं। और अगर आप Claude के फैन हैं, तो यह बिल्कुल Claude.md जैसा ही है।
00:02:49इसका उपयोग कोडिंग एजेंट्स को ऐसे निर्देश देने के लिए किया जाता है जो सिस्टम प्रॉम्प्ट में हमेशा शामिल रहते हैं।
00:02:53तो स्किल्स के उलट, यहाँ एजेंट को जानकारी जुटाने का फैसला नहीं करना पड़ता।
00:02:58वह उसके सिस्टम प्रॉम्प्ट में पहले से ही मौजूद होती है। लेकिन इससे कॉन्टेक्स्ट की अपनी समस्या पैदा हो सकती है।
00:03:03यानी जब आपका कॉन्टेक्स्ट बढ़ता है, तो आउटपुट की क्वालिटी गिरने लगती है।
00:03:06अब आप पूरी Next.js डॉक्यूमेंटेशन को agents.md फ़ाइल में तो नहीं डाल सकते।
00:03:10तो इसे कैसे किया जाए? इस समस्या से निपटने के लिए Vercel ने agents.md में सिर्फ एक डॉक्यूमेंटेशन इंडेक्स का इस्तेमाल किया।
00:03:17यह आपके फ़ाइल सिस्टम के भीतर व्यक्तिगत डॉक्यूमेंटेशन फ़ाइलों के फ़ाइल पाथ (file paths) की एक साधारण लिस्ट है।
00:03:22फिर एक और महत्वपूर्ण चीज़ थी—यह निर्देश जोड़ना कि "किसी भी Next.js टास्क के लिए प्री-ट्रेनिंग के बजाय रिट्रीवल-बेस्ड रीजनिंग को प्राथमिकता दें।"
00:03:31निजी तौर पर, जब मैंने इसे पढ़ा, तो मुझे लगा कि इसके नतीजे भी स्किल्स जैसे ही होंगे क्योंकि इसे भी डॉक्यूमेंटेशन पढ़ने के लिए फ़ाइल को ढूँढना और फेच करना पड़ेगा।
00:03:38लेकिन जब उन्होंने इसे अपने इवैल्यूएशन पर टेस्ट किया, तो एजेंट्स ने सभी में 100 प्रतिशत स्कोर किया और बिल्ड, लिंट और टेस्ट इवैल्यूएशन में परफेक्ट स्कोर हासिल किया।
00:03:47तो यह स्किल्स की तुलना में कहीं ज़्यादा भरोसेमंद और सटीक है। यह क्लासिक सॉफ्टवेयर इंजीनियरिंग जैसा ही है।
00:03:53जहाँ सबसे सरल और सीधा तरीका ही आखिर में सबसे बेहतर साबित होता है और आपको किसी भी चीज़ को ज़रूरत से ज़्यादा जटिल बनाने की ज़रूरत नहीं पड़ती।
00:03:58पर ऐसा क्यों है? एजेंट्स फ़ाइल, स्किल्स से बेहतर क्यों है? सच तो यह है कि यह बताना काफी मुश्किल है।
00:04:03AI एक तरह का 'ब्लैक बॉक्स' है, लेकिन Vercel का अनुमान है कि यह तीन कारकों की वजह से है और वे सभी निर्णय लेने की प्रक्रिया से जुड़े हैं।
00:04:10जब आपके पास वह एजेंट्स फ़ाइल होती है, तो एजेंट के लिए कोई डिसीजन पॉइंट नहीं होता।
00:04:14हम उसे शुरुआत में ही सिस्टम प्रॉम्प्ट में बता देते हैं कि उसे डॉक्यूमेंटेशन का इस्तेमाल करना है और यह भी कि हर फ़ाइल कहाँ है।
00:04:20तो यह जानकारी 'ऑन-डिमांड' होने और मॉडल के फैसले पर निर्भर रहने के बजाय एक 'परसिस्टेंट कॉन्टेक्स्ट' (स्थायी संदर्भ) बन जाती है।
00:04:27यह रीजनिंग में पहले से मौजूद होता है क्योंकि हमने इसे सिस्टम प्रॉम्प्ट में दे दिया है।
00:04:31लेकिन इसका मतलब यह भी नहीं है कि स्किल्स पूरी तरह बेकार हैं। दरअसल, Vercel ने पाया कि वे एक-दूसरे के पूरक हैं।
00:04:36उन्होंने कहा कि स्किल्स उन कामों के लिए बेहतर हैं जिन्हें यूज़र सीधे तौर पर शुरू करता है, जैसे कि यह कहना "मेरा Next.js वर्शन अपग्रेड करें,"
00:04:41"ऐप राउटर पर माइग्रेट करें" या "कुछ फ्रेमवर्क बेस्ट प्रैक्टिसेस लागू करें।"
00:04:45लेकिन अगर आप अपने कोडिंग एजेंट के भीतर वह सामान्य फ्रेमवर्क नॉलेज चाहते हैं,
00:04:48तो agents.md वाला पैसिव कॉन्टेक्स्ट, स्किल्स से बेहतर प्रदर्शन करेगा, खासकर आज के मॉडल्स के साथ।
00:04:54मुझे यकीन है कि भविष्य में मॉडल्स को स्किल-आधारित रिट्रीवल वर्कफ़्लो के लिए ऑप्टिमाइज़ किया जाएगा, लेकिन हम अभी वहां नहीं पहुँचे हैं।
00:04:59फिलहाल, Vercel की सलाह—खासकर फ्रेमवर्क बनाने वालों या आप में से उन लोगों के लिए जो स्किल्स या agents.md लिखने वाले हैं—यह है:
00:05:06स्किल्स के बेहतर होने का इंतज़ार न करें। अपने कॉन्टेक्स्ट को जितना हो सके कंप्रेस करें।
00:05:10इसे याददाश्त (memory) के लिए नहीं बल्कि रिट्रीवल के लिए डिज़ाइन करें। और सबसे ज़रूरी बात, हमेशा इवैल्यूएशन के साथ हर चीज़ का टेस्ट करें।
00:05:16और अगर आप इन फ़ाइलों के सिर्फ एक यूज़र हैं, तो Vercel आपको डॉक्यूमेंटेशन डाउनलोड करने के लिए एक टूल दे रहा है
00:05:21साथ ही आपके Next.js वर्शन के लिए पहले से बनी agents.md फ़ाइल भी, ताकि आप तुरंत इस नए तरीके का फ़ायदा उठा सकें।
00:05:29मैं यह देखने के लिए काफी उत्सुक हूँ कि क्या दूसरे टूल्स भी इस रास्ते पर चलेंगे। और मैं यह भी जानना चाहता हूँ कि आप इस बारे में क्या सोचते हैं।
00:05:34नीचे कमेंट्स में मुझे बताएं कि आप एजेंट्स और स्किल्स के बारे में क्या सोचते हैं।
00:05:37और वहां हैं ही, तो सब्सक्राइब भी कर लें। हमेशा की तरह, मिलते हैं अगले वीडियो में।

Key Takeaway

कोडिंग एजेंट्स के लिए 'स्किल्स' जैसे ऑन-डिमांड टूल्स के बजाय agents.md जैसी फाइलों के माध्यम से स्थायी और सरल कॉन्टेक्स्ट प्रदान करना अधिक सटीक और भरोसेमंद परिणाम देता है।

Highlights

Vercel के परीक्षणों से पता चला कि कोडिंग एजेंट्स को अतिरिक्त कॉन्टेक्स्ट देने के लिए 'स्किल्स' (skills) की तुलना में 'agents.md' फ़ाइल का उपयोग करना कहीं अधिक प्रभावी और विश्वसनीय है।

अध्ययन में पाया गया कि 56% समय एजेंट ने उपलब्ध 'स्किल' का उपयोग ही नहीं किया, जिससे प्रदर्शन में कोई सुधार नहीं हुआ और कभी-कभी नकारात्मक प्रभाव भी पड़ा।

प्रॉम्प्ट में 'स्किल का उपयोग करें' जैसे निर्देश जोड़ने से ट्रिगर रेट तो बढ़ा, लेकिन सिस्टम बहुत 'नाजुक' (fragile) हो गया क्योंकि शब्दों के छोटे बदलावों से नतीजे बदल रहे थे।

agents.md फ़ाइल का उपयोग करने पर एजेंट्स ने इवैल्यूएशन में 100% स्कोर हासिल किया, क्योंकि यह जानकारी सिस्टम प्रॉम्प्ट में 'परसिस्टेंट कॉन्टेक्स्ट' के रूप में मौजूद रहती है।

Vercel ने बेहतर परिणामों के लिए agents.md में पूरी डॉक्यूमेंटेशन डालने के बजाय केवल एक 'डॉक्यूमेंटेशन इंडेक्स' और फ़ाइल पाथ की लिस्ट का उपयोग करने की सलाह दी है।

Timeline

परीक्षण का परिचय और कोडिंग एजेंट्स की चुनौतियाँ

इस शुरुआती भाग में वक्ता Vercel द्वारा किए गए एक चौंकाने वाले परीक्षण का परिचय देते हैं, जिसमें कोडिंग एजेंट्स को Next.js डॉक्यूमेंटेशन प्रदान करने के सबसे अच्छे तरीके को खोजा गया था। मुख्य लक्ष्य यह सुनिश्चित करना था कि एजेंट को नवीनतम APIs और वर्शन-मैच्ड डॉक्यूमेंटेशन की जानकारी हो, जो शायद उसके मूल ट्रेनिंग डेटा में न हो। वक्ता बताते हैं कि एजेंट्स को सटीक संदर्भ देना क्यों महत्वपूर्ण है, खासकर जब लाइब्रेरी के वर्शन तेजी से बदल रहे हों। यहाँ दो प्रमुख तरीकों, 'स्किल्स' और 'agents.md' फ़ाइल, के बीच तुलना की नींव रखी गई है। यह खंड स्पष्ट करता है कि डेवलपर्स को अक्सर अपने AI टूल्स को अपडेट रखने के लिए बाहरी डेटा की आवश्यकता होती है।

'स्किल्स' (Skills) का विश्लेषण और उनकी विफलता

वक्ता यहाँ 'स्किल्स' की व्याख्या करते हैं, जो एंथ्रोपिक द्वारा विकसित निर्देशों और कॉन्टेक्स्ट के मॉड्यूलर बंडल हैं। परीक्षण के दौरान यह पाया गया कि 56 प्रतिशत समय एजेंट ने इन स्किल्स को कॉल ही नहीं किया, जिससे इवैल्यूएशन पास रेट में कोई सुधार नहीं हुआ। आश्चर्यजनक रूप से, कभी-कभी अनयूज्ड स्किल्स ने 'शोर' (noise) का काम किया और प्रदर्शन को बेसलाइन से भी खराब कर दिया। जब प्रॉम्प्ट को सख्त बनाया गया, तो सिस्टम बहुत ही नाजुक हो गया और प्रोजेक्ट कॉन्टेक्स्ट को नजरअंदाज करने लगा। Vercel ने निष्कर्ष निकाला कि स्किल्स पर आधारित यह दृष्टिकोण उत्पादन स्तर के कार्यों के लिए बहुत ही अविश्वसनीय है।

agents.md का समाधान और बेहतर परिणाम

इस अनुभाग में agents.md फ़ाइल के उपयोग पर चर्चा की गई है, जो कोडिंग निर्देशों को सीधे सिस्टम प्रॉम्प्ट में शामिल करती है। वक्ता बताते हैं कि Vercel ने कॉन्टेक्स्ट विंडो को भरने से बचने के लिए पूरी डॉक्यूमेंटेशन के बजाय केवल एक 'डॉक्यूमेंटेशन इंडेक्स' का उपयोग किया। इसके साथ ही, उन्होंने निर्देश दिया कि एजेंट प्री-ट्रेनिंग के बजाय 'रिट्रीवल-बेस्ड रीजनिंग' को प्राथमिकता दे। परिणाम स्वरूप, एजेंट्स ने बिल्ड और टेस्ट इवैल्यूएशन में 100 प्रतिशत का परफेक्ट स्कोर हासिल किया। यह साबित करता है कि सरल और सीधा सॉफ्टवेयर इंजीनियरिंग दृष्टिकोण अक्सर जटिल AI वर्कफ़्लोज़ से बेहतर होता है।

AI 'ब्लैक बॉक्स' और भविष्य की सलाह

अंतिम भाग में इस बात का विश्लेषण किया गया है कि agents.md बेहतर क्यों है, जिसे वक्ता 'परसिस्टेंट कॉन्टेक्स्ट' और निर्णय लेने की प्रक्रिया में कमी से जोड़ते हैं। हालाँकि, वे यह भी स्पष्ट करते हैं कि स्किल्स पूरी तरह बेकार नहीं हैं और वे यूज़र-ट्रिगर्ड विशिष्ट कार्यों जैसे 'वर्शन अपग्रेड' के लिए अच्छे हैं। Vercel की सलाह है कि डेवलपर्स को अपने कॉन्टेक्स्ट को कंप्रेस करना चाहिए और हमेशा इवैल्यूएशन के साथ परीक्षण करना चाहिए। वक्ता दर्शकों को Vercel द्वारा प्रदान किए गए नए टूल के बारे में बताते हैं जो Next.js के लिए agents.md फ़ाइल डाउनलोड करने में मदद करता है। अंत में, वे दर्शकों से एजेंट्स और स्किल्स के भविष्य पर उनकी राय मांगते हुए वीडियो समाप्त करते हैं।

Community Posts

View all posts