▲ कम्युनिटी सेशन: Claude Code के लिए Vercel प्लगइन

VVercel
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00नमस्ते, सभी का स्वागत है। इस हफ्ते के वर्सेल कम्युनिटी लाइवस्ट्रीम में आपका स्वागत है। मैं एमी हूँ, और ये
00:00:26जैकब हैं। हम यहाँ वर्सेल में कम्युनिटी टीम में हैं। बस एक रिमाइंडर, हम इसे
00:00:31X और यूट्यूब पर स्ट्रीम कर रहे हैं, लेकिन अगर आप यह सुनिश्चित करना चाहते हैं कि हम आपके सवाल और कमेंट्स
00:00:36चैट में देख सकें, तो कम्युनिटी पर जाएँ और साइन इन करें। यह [community.vercel.com/live](https://community.vercel.com/live) पर है और आप
00:00:43इसे पहले इवेंट के रूप में देखेंगे।
00:00:44हाँ, सेशन के अंत में, हमारे पास कुछ सवालों के लिए थोड़ा समय होगा। यदि आप
00:00:49सेशन देखते समय चैट में भाग लेने जा रहे हैं, तो बस हमारे
00:00:55आचार संहिता का पालन करना याद रखें और हाँ, आप अपने कोई भी सवाल बीच में डाल सकते हैं और
00:00:59हम उन्हें पूछना सुनिश्चित करेंगे। मैं अपने अतिथि का परिचय देना चाहूँगा। हमारे साथ यहाँ जॉन लिंडक्विस्ट हैं जो
00:01:05हमें क्लाउड कोड के लिए नया वर्सेल प्लगइन दिखाएंगे। नमस्ते, जॉन।
00:01:09नमस्ते, जैकब। नमस्ते, एमी। मुझे यहाँ बुलाने के लिए धन्यवाद। ठीक है। चलिए अभी से
00:01:16मेरी स्क्रीन शेयर करना शुरू करते हैं ताकि हम देख सकें कि यहाँ क्या हो रहा है। तो पिछले कुछ समय से,
00:01:23स्किल्स बहुत चर्चा में रही हैं और हर कोई इस बारे में बात कर रहा है कि अपने प्रोजेक्ट्स को बेहतर बनाने के लिए कौन सी स्किल्स का उपयोग करें
00:01:29और अपने एजेंट्स को वो चीजें करने में सक्षम बनाने के लिए जो वे सामान्य रूप से नहीं कर पाते हैं। अब स्किल्स से उभरते हुए,
00:01:37इसका अगला विकास वो है जिसे हम प्लगइन्स कहते हैं। और यह ऐसी चीज़ है
00:01:43जो अभी भी बहुत लोकप्रिय हो रही है। अभी बहुत अधिक प्लगइन्स उपलब्ध नहीं हैं और लोग अभी भी
00:01:48खोज कर रहे हैं कि उन्हें वास्तव में कैसे बनाया जाए। मैंने वर्सेल प्लगइन का पहला ड्राफ्ट बनाया है और
00:01:56मैं इस बारे में बात करना चाहता हूँ कि प्लगइन क्यों बनाएं, आपको प्लगइन कब बनाना चाहिए, प्लगइन ही क्यों
00:02:03स्किल्स के बजाय और वे एक-दूसरे के पूरक कैसे हैं और उस तरह के सभी सवाल। तो
00:02:09यदि आपके पास इस बारे में कोई सवाल है कि प्लगइन क्या है, मैं इसके बारे में बात करूँगा, लेकिन एक प्लगइन आपके लिए क्या
00:02:16सक्षम कर सकता है, यदि आपको आंतरिक रूप से या व्यक्तिगत रूप से एक बनाना चाहिए, तो मुझे उस पर चर्चा करना अच्छा लगेगा
00:02:22और हम आज के सेशन के दौरान उस बारे में बात करेंगे। तो सबसे पहले, एक प्लगइन शुरू में
00:02:32क्लाउड कोड और जेमिनी द्वारा भी शुरू किया गया था, लेकिन उन्होंने बहुत अलग दृष्टिकोण अपनाए। और
00:02:39प्लगइन्स का मानकीकरण एक निरंतर प्रयास है। और यह कुछ ऐसा है जिसकी हम आशा करते हैं,
00:02:44मैं जल्द ही इसके बारे में और बात कर सकता हूँ जहाँ एक ही प्लगइन सभी एडिटर्स पर काम कर सके।
00:02:49तो अभी हम क्लाउड कोड और कर्सर सपोर्ट के बारे में बात कर रहे हैं। कोडेक्स बहुत,
00:02:54बहुत जल्द आ रहा है, शायद आज ही या बहुत जल्द और कई अन्य भी। एक प्लगइन मानक
00:03:01पर काम किया जा रहा है। इसलिए हम उम्मीद कर सकते हैं कि प्लगइन्स ऐसी चीज़ होंगे जिन्हें आप पैकेज कर सकते हैं और शेयर कर सकते हैं
00:03:08चाहे आप किसी भी टूलिंग का उपयोग कर रहे हों। तो जैसा कि कहा गया है, आप स्किल्स से परिचित हो सकते हैं
00:03:15क्योंकि वे मार्कडाउन फाइलें होती हैं, जिन्हें आपके एजेंट द्वारा अतिरिक्त निर्देश देने के लिए लोड किया जा सकता है।
00:03:23पहला, आप इसे मैन्युअल रूप से इनवोक करते हैं, जैसे आप स्लैश करते हैं और अपनी स्किल को इनवोक करते हैं या एजेंट
00:03:29डिस्क्रिप्शन के आधार पर पता लगाता है कि स्किल लोड होनी चाहिए। तो यह बहुत हद तक यूजर द्वारा इनवोक किया गया या
00:03:36एजेंट द्वारा डिस्क्रिप्शन की स्थिति के आधार पर तय किया गया होता है। अब, प्लगइन का अगला स्तर
00:03:44यह है कि उनमें "हुक्स" नाम की कोई चीज़ होती है। और यदि आप एक प्लगइन के बारे में सोचते हैं, या आप एक सेशन के बारे में सोचते हैं
00:03:53जो आप क्लाउड कोड या किसी भी एजेंट हार्नेस के साथ करते हैं, तो आप सोच सकते हैं कि उनके लाइफसाइकल्स होते हैं।
00:03:59तो अभी मैं वर्सेल प्लगइन डायरेक्टरी में हूँ, अगर मैं यहाँ बस एक क्लाउड कोड शुरू करूँ, तो मैं
00:04:07इससे पूछने जा रहा हूँ कि यह किन हुक्स का उपयोग करता है। और यह उन हुक्स को सूचीबद्ध करने जा रहा है
00:04:18जो एक लाइफसाइकिल को परिभाषित करते हैं। और एक लाइफसाइकिल वो है जब आपका सेशन शुरू होता है, जब टूल्स
00:04:27जैसे टूल्स कॉल होने से पहले, कॉल होने के बाद, जब कोई यूजर इसमें टेक्स्ट डालता है, और
00:04:33जब आपका सेशन समाप्त होता है। इसमें बहुत सारे अन्य हुक्स भी हैं। लेकिन हमारे उद्देश्यों के लिए
00:04:39वर्सेल प्लगइन में, ये वे हैं जिनका हम वर्तमान में अपने शुरुआती लक्ष्यों के आधार पर उपयोग कर रहे हैं।
00:04:44तो स्पष्ट होने के लिए, वर्सेल प्लगइन का शुरुआती लक्ष्य लोगों को वर्सेल पर एजेंट्स
00:04:51शिप करने में मदद करना था। तो विचार यह है कि हम एजेंट्स को वर्सेल इकोसिस्टम के बारे में कैसे जागरूक करेंगे,
00:05:02जैसे प्लेटफॉर्म पर हर वो चीज़ जिसका संबंध AI SDK, गेटवे से है। और हमारे वर्कफ़्लोज़
00:05:11लगभग यहाँ तैयार हैं। तो वर्कफ़्लोज़ के बारे में कुछ भी, और संक्षेप में, वर्सेल CLI को काफी अपडेट किया गया है।
00:05:19और एजेंट SDK के आसपास की ये सभी चीजें, या माफ़ कीजियेगा, वर्सेल पर एजेंट्स शिप करने के
00:05:26आसपास की चीजें। ये सभी चीजें पिछले दिनों, पिछले हफ्तों,
00:05:33पिछले महीनों में रिलीज हुई हैं। और क्लाउड कोड जैसे इनमें से किसी भी एजेंट हार्नेस के पास नॉलेज कट-ऑफ
00:05:39शायद छह महीने से एक साल पहले की होती है। तो यह मॉडल पर निर्भर करता है, बहुत सारे वेरिएबल्स पर निर्भर करता है।
00:05:46लेकिन वे ऐसी चीजें हैं जिनके बारे में ये सभी एजेंट्स नहीं जानते,
00:05:52उन सभी नवीनतम और बेहतरीन चीजों के बारे में जो हमने शिप की हैं। तो वर्सेल प्लगइन का
00:05:57लक्ष्य एजेंट को पुराने कोड, पुरानी प्रथाओं को लिखने से रोकना है, और
00:06:06उसे यहाँ तक लाना है कि वर्सेल प्लेटफॉर्म पर जो कुछ भी बिल्कुल नवीनतम है वो उसे पता हो। तो यह
00:06:11एक बड़ी जीत है क्योंकि मॉडल्स स्मार्ट होते हैं, लेकिन उन्हें बस इन चीजों के बारे में पता नहीं होता है।
00:06:19और उनसे हर बार रिसर्च करने के लिए कहने के बजाय, या हर एक चीज़ के लिए
00:06:25स्किल्स का एक बड़ा बंडल रखने के बजाय, अगर हम अनिवार्य रूप से एक एजेंट को वर्सेल प्लेटफॉर्म के बारे में सबसे अच्छी चीजें
00:06:32लोड करने के लिए मजबूर करने का कोई तरीका ढूंढ सकें, तो यह हमारे लिए एक बड़ी जीत है।
00:06:38तो यदि आप एक एजेंट के लाइफसाइकिल में इन हुक्स को देखते हैं, और फिर से, इसमें बहुत सारे
00:06:45और हुक्स हैं जिनका हम भविष्य में लाभ उठा सकते हैं या आप उठा सकते हैं। लेकिन अभी के लिए मुख्य हुक्स
00:06:49सेशन स्टार्ट हैं। और हम इसका उपयोग कुछ अलग तरीकों से करते हैं। प्री टूल यूज, यूजर प्रॉम्प्ट
00:06:56सबमिट, पोस्ट टूल यूज और सेशन एंड। तो सेशन स्टार्ट और सेशन एंड, आप जानते हैं, एक एजेंट के साथ बातचीत की
00:07:03शुरुआत और अंत हैं। और आप अपने एजेंट्स की MD या क्लाउड MD
00:07:12फाइल के बारे में सोच सकते हैं जो आमतौर पर आप सेशन स्टार्ट पर करते हैं। तो हम वर्सेल प्लेटफॉर्म के लिए
00:07:19सेशन स्टार्ट पर क्या कर सकते हैं? और हम यह कर सकते हैं कि एक वर्सेल प्लेटफॉर्म फाइल लोड करें, जिसका अर्थ है
00:07:27कि यदि हम देखें, मैं बस कहूँगा describe vercel.md। तो यह फाइल ऐसी चीज़ है जिसे हम
00:07:40एक क्लाउड MD के साथ सेशन स्टार्ट में शामिल कर सकते हैं। अनिवार्य रूप से, आपके पास एक प्लगइन हो सकता है जो यदि आप
00:07:48सिर्फ एक क्लाउड MD फाइल शेयर करना चाहते हैं और किसी के पास उसे इंस्टॉल करने का आसान तरीका
00:07:52हो। आप एक प्लगइन बना सकते हैं जो सिर्फ वर्सेल का नॉलेज ग्राफ
00:07:59इंजेक्ट कर दे। और यह कुछ ऐसा है जिसे हम लगातार ट्यून कर रहे हैं। हम इसे कॉम्प्रेस करने
00:08:04और इसे जितना संभव हो उतना छोटा बनाने के तरीके ढूंढ रहे हैं लेकिन फिर भी अच्छा परफॉरमेंस मिले
00:08:08और इसमें क्या होना चाहिए और क्या नहीं होना चाहिए, इसका संतुलन बना रहे। सभी विभिन्न मॉडल्स और
00:08:15सभी अलग-अलग हार्नेस के खिलाफ इवैल्यूएशन चलाना बहुत कठिन है। लेकिन हम धीरे-धीरे उन चीजों को समझ रहे हैं।
00:08:21तो इसमें अनिवार्य रूप से AI के इर्द-गिर्द वर्सेल इकोसिस्टम में संबंध हैं,
00:08:28कि कब किसका उपयोग करना है, कौन से प्रोडक्ट्स इस्तेमाल करने हैं, कब किन चीजों को कॉल करना है
00:08:35जैसे पूरे वर्सेल इकोसिस्टम की एक स्ट्रक्चर्ड समझ। तो यह कॉन्सेप्ट,
00:08:44मुझे पसंद है कि यह हमें टेबल ऑफ कंटेंट्स कैसे कहता है। यह एक किताब की शुरुआत की तरह है जब आप बातचीत शुरू करते हैं।
00:08:50और जिस तरह से हमने इसे स्ट्रक्चर किया और सोचा, वो यह है कि यदि आप सोचें कि मैं
00:08:56चीजों के बारे में एजेंट से कैसे बात करता हूँ, तो मेरी एक निश्चित शब्दावली है, उनकी एक निश्चित शब्दावली है।
00:09:02और यदि आप कर सकें, यदि आप इसे शब्दों की शब्दावली दे सकें, उन्हें डॉक्यूमेंट्स से मैप कर सकें, उन्हें उन स्किल्स से मैप कर सकें,
00:09:07उन चीजों से मैप कर सकें जिन्हें उसे लोड करना चाहिए। एक बार जब आप उन चीजों तक पहुँच जाते हैं, तो आप
00:09:12सोच सकते हैं कि मैं क्या चीजें कहने वाला हूँ और एजेंट को क्या
00:09:19लोड करना चाहिए और कॉल करना चाहिए और उस माइंड मैप को पहले ही विकसित करने की कोशिश करें ताकि मैं बस
00:09:24उससे स्वाभाविक रूप से बात कर सकूँ और एएसडीके (ASDK) का जिक्र करने की चिंता भी
00:09:30न करनी पड़े। और किसी भी फीचर का जिक्र करने की भी जरूरत न पड़े।
00:09:38और अगर मैं बस यह कहने का कोई तरीका ढूंढ सकूँ कि "बस मेरे लिए यह ऐप बनाओ और इसे शिप करो"।
00:09:45और फिर यह प्लगइन में सब कुछ संभाल लेता है। माफ़ कीजियेगा, प्लगइन में सब कुछ संभाल लेता है
00:09:52ताकि एक खूबसूरत ऐप वर्सेल पर शिप हो जाए और वे वहां से और काम कर सकें।
00:09:57जैसे v0 और कुछ अन्य प्रोजेक्ट्स हमारे लिए काम करते हैं। अगर हम इसे ऐसा बना सकें कि
00:10:02आपका अनुभव शानदार हो, लेकिन आपको इकोसिस्टम के बारे में सोचना न पड़े। और यह एक बड़ी जीत है। क्या
00:10:09यह समझ में आता है? जैकब, एमी, इस बारे में कोई शुरुआती सवाल या चैट में कुछ?
00:10:16जैकब, मुझे लगता है कि आपकी मीटिंग के लिए आपका एक सवाल है। माफ़ कीजियेगा, बहुत-बहुत माफ़ कीजियेगा। मेरा
00:10:24जॉन, आपसे एक सवाल था। हाँ। चूँकि यह प्लगइन टेबल ऑफ कंटेंट्स के रूप में कार्य करता है, क्या इसीलिए इसे हर बार
00:10:30अपडेट करने की आवश्यकता नहीं होती है जब नया डॉक्यूमेंटेशन आता है? क्योंकि यह मूल रूप से
00:10:38यूआरएल का एक संग्रह है जिसका एजेंट्स अप-टू-डेट डॉक्यूमेंट्स खोजने के लिए पालन कर सकते हैं?
00:10:43या क्या प्लगइन में तत्काल अपडेट सिस्टम है? वह दृष्टिकोण कैसे काम करता है?
00:10:49हाँ। तो अनिवार्य रूप से, यदि आप शुरुआत में नॉलेज ग्राफ के बारे में सोचते हैं,
00:10:58तो यह जो बहुत कुछ कर सकता है वह बस नवीनतम डॉक्यूमेंट्स की ओर इशारा करना है। तो यदि आप
00:11:07सोचते हैं, यह एक ऐसा सवाल है जो अक्सर स्किल्स और हम लाइब्रेरीज के अनुसार स्किल्स को कैसे मैनेज करते हैं, के साथ आता है।
00:11:14और यदि आपके पास कोई किसी भी SDK के वर्जन 5 पर है और कोई दूसरा
00:11:18SDK के वर्जन 6 पर है, और आप उन्हें अलग-अलग वर्जन्स की स्किल्स से प्रभावित करने की कोशिश करते हैं जो
00:11:22विरोधी हो सकते हैं, तो आप उसे कैसे संभालते हैं? और इसका बहुत कुछ हिस्सा ऐसा है, जैसे कि किसी के पास
00:11:31क्या इंस्टॉल है, इसके आधार पर आप उनकी package.json फ़ाइल देख सकते हैं, उसका वर्जन देख सकते हैं। और उसके
00:11:36आधार पर एक स्मार्ट तरीका निकाल सकते हैं कि उसे कौन से डॉक्स यूआरएल देखने चाहिए और कौन से
00:11:44स्किल्स लोड होने चाहिए और उस तरह की तमाम चीजें। और इसलिए वह उस तरह के प्रीलोड फेज़ का
00:11:51एक और हिस्सा है जो सेशन की शुरुआत में होता है, जो बस व्यक्ति के प्रोजेक्ट का निरीक्षण करता है।
00:11:58और फिर से, यह सब लोकल है। यह सिर्फ प्रोजेक्ट को देखता है कि आप किन लाइब्रेरीज़ का
00:12:02उपयोग कर रहे हैं? आपका सेटअप क्या है ताकि वह आपको सही दिशा में ले जा सके।
00:12:07सबसे आम गलतियों में से एक है, जैसे कि SDK के लेटेस्ट वर्जन पर "generate object" का उपयोग करने की कोशिश करना,
00:12:12जबकि आप जानते हैं कि वह API बदल गया है। तो, हाँ, प्लगइन्स
00:12:21बस इसे संभाल लेते हैं, जैसे, आपको इस बात की चिंता करने की ज़रूरत नहीं है कि आप इसे किसी पुराने
00:12:27प्रोजेक्ट पर इस्तेमाल कर रहे हैं या बिल्कुल नए लेटेस्ट प्रोजेक्ट पर, प्लगइन को
00:12:32इसे संभालने में सक्षम होना चाहिए। आपको वर्जन नंबरों की चिंता करने की ज़रूरत नहीं होनी चाहिए, आपको
00:12:34पैकेज के नामों की चिंता करने की ज़रूरत नहीं होनी चाहिए, आपको किसी भी चीज़ की चिंता करने की ज़रूरत नहीं है क्योंकि बस
00:12:41Vercel को यह सब आपके लिए करने दें। ठीक है। और हम लगातार काम कर रहे हैं, हमारे पास
00:12:49इसे बेहतर बनाने के और भी बहुत सारे विचार हैं। और प्लगइन अपडेट होता रहेगा और
00:12:54इसे आगे बढ़ाता रहेगा। तो कोई और सवाल?
00:12:58हाँ, तो प्लगइन का कुल दायरा (scope) क्या है? क्या यह सिर्फ Vercel
00:13:04सर्विसेज को संभालता है? ऐसी कोई भी चीज़ जो मुझे डैशबोर्ड में मिल सकती है? या इसमें वे ओपन सोर्स लाइब्रेरीज़ भी हैं
00:13:11जिन्हें हम सपोर्ट करते हैं जैसे Next.js, AI SDK, वर्कफ़्लो, इत्यादि?
00:13:16हाँ, तो शुरुआती दायरा, जो हमने शुरू में तय किया था, वह था जितना संभव हो उतना कवर करना,
00:13:25और हर लाइब्रेरी, प्लेटफॉर्म पर मौजूद हर चीज़, बस सब कुछ इसमें डाल देना,
00:13:32देखना कि सबसे ज़्यादा क्या इस्तेमाल होता है, जैसे आंतरिक रूप से हमने सबका टेलीमेट्री चालू कर रखा है, और
00:13:36आप टेलीमेट्री साझा करने का विकल्प चुन सकते हैं। और हमें पता चल जाएगा कि कौन से स्किल्स असल में
00:13:40इस्तेमाल हो रहे हैं और कौन से नहीं। ताकि हम उनमें से कुछ चीज़ों को हटा सकें जिनकी हमें
00:13:48उतनी ज़्यादा जानकारी की ज़रूरत नहीं है या जो सबसे ज़्यादा इस्तेमाल होती दिख रही हैं उनके आधार पर और जोड़ सकें, ज़ाहिर है
00:13:53Next.js, AI SDK, और जो सबसे लोकप्रिय डाउनलोड होने वाली चीज़ें हैं, उनके पास सबसे ज़्यादा जानकारी होनी चाहिए।
00:13:59और इसलिए यह शुरू में एक संतुलन है, जहाँ हमने जानबूझकर
00:14:08शुरुआती रिलीज़ के साथ काफी बड़ा दायरा रखा, और आगे चलकर हम इसे और भी सटीक (svelte)
00:14:15बना देंगे। तो
00:14:16हाँ, यह बहुत तर्कसंगत लगता है। धन्यवाद। हाँ। ठीक है। तो हाँ, अगर आप
00:14:24एक प्लगइन बना रहे हैं, और एक कारण जिससे मैं इसके बारे में थोड़े सामान्य शब्दों में बात करता हूँ
00:14:29वह यह है कि मुझे "agentic driven development" (एजेंट-संचालित विकास) बहुत पसंद है। और आपको यह दिखाने के बजाय
00:14:36कि सब कुछ बिल्कुल कैसे काम करता है, मुझे लगता है कि यह ज़्यादा ज़रूरी है कि आप
00:14:40इसके बारे में बात करना सीखें और इसकी शब्दावली को समझें। ताकि आप बस अपने AI असिस्टेंट से
00:14:45ऐसी ही चीजें करने के लिए कह सकें। अगर आप Claude Code को Claude Code के लिए एक प्लगइन बनाने के लिए
00:14:52कहते हैं, और आप उसे इसके डॉक्स देते हैं, तो वह ऐसा कर सकता है। इसलिए कोड में बहुत ज़्यादा
00:14:58घुसने के बजाय इसके पीछे की अवधारणाओं और विचारों पर चर्चा करना बहुत अधिक महत्वपूर्ण है।
00:15:05इसके साथ ही, सेशन स्टार्ट एक ऐसी जगह है जहाँ आप प्लेटफॉर्म की विषय-सूची (Table of Contents)
00:15:11इन्जेक्ट कर सकते हैं जैसे कि ये वे सारी चीज़ें हैं जो पुरानी हो चुकी हैं, उन चीज़ों के आधार पर
00:15:19जो मेरे लिए महत्वपूर्ण हैं, जो अधिकांश मॉडलों के हिसाब से पुरानी हैं। तो
00:15:24यही वह चीज़ है जो सब कुछ अपडेट करती है जैसे, Vercel आज कैसा दिखता है। और इसलिए कि
00:15:31भले ही प्लगइन में होने वाली यह एकमात्र चीज़ हो, उसे पता होता है कि उसे आगे चलकर
00:15:37चीजों की जांच करनी चाहिए। लेकिन हम यह भी कर सकते हैं और बस एक साइड नोट के तौर पर,
00:15:44एक कारण कि Claude Code में हर सेशन की अपनी यूनिक आईडी होती है, जो आपको अनुमति देती है कि
00:15:52जैसे-जैसे यह सेशन आगे बढ़ता है, यह सुनिश्चित करता है कि इसके पास एक स्किल्स बजट हो,
00:16:01और इसके पास वे स्किल्स हों जो पहले ही लोड हो चुके हैं और उस तरह की चीजें। तो हम
00:16:07चीजों को सेशन के एनवायरनमेंट में या सेशन स्टोरेज वाली जगह पर लिख सकते हैं
00:16:15जहाँ पूरे सेशन के दौरान, जैसे-जैसे आप उस सेशन से गुज़र रहे हैं, हम सुनिश्चित करते हैं कि हम
00:16:20उन चीजों को लोड न करें जो पहले ही लोड हो चुकी हैं, या किसी भी काम को दोबारा न करें, क्योंकि हम
00:16:26उन चीजों का ट्रैक रख सकते हैं जो पहले ही हो चुकी हैं। तो यह सेशन का एक और बढ़िया हिस्सा है
00:16:30जो आपको एक सेशन आईडी प्राप्त करने का मौका देता है ताकि भविष्य के किसी भी हुक के दौरान,
00:16:35सेशन के अंदर चलने वाली किसी भी चीज़ में, आपके पास अपने व्यक्तिगत प्लगइन के लिए
00:16:40सेशन के बारे में चीज़ों को जोड़ने और स्टोर करने के लिए एक आईडी हो।
00:16:47Claude Code भी ऐसा ही करता है अगर आप उनकी .claude डायरेक्टरी में प्रोजेक्ट्स को देखें
00:16:50तो आप वहां सेशन्स और चीज़ें देख सकते हैं। तो आप वही अवधारणा अपने प्लगइन्स और अपने टूलिंग के लिए ले सकते हैं।
00:16:56ठीक है, तो इन सब बातों के साथ, अब प्री-टूल यूज़ (pre tool use) और हम प्री-टूल
00:17:05और पोस्ट-टूल के बारे में एक साथ बात करेंगे, ये आपको क्या देते हैं,
00:17:11ये आपको फ़ाइल परिवर्तनों को देखने का मौका देते हैं। तो प्री-टूल में, आप फ़ाइल का कंटेंट प्राप्त कर सकते हैं
00:17:20जो बदलने वाला है। और यह चीज़ फ़ाइलों को पढ़ने, फ़ाइलों को लिखने, या माफ़ करना,
00:17:29फ़ाइलों को पढ़ने, एडिट करने, फ़ाइलें बनाने के इर्द-गिर्द है। और प्री-टूल कई अन्य टूल के इस्तेमाल को भी
00:17:34कवर करता है, जैसे कि बैश (bash) में चीजें चलाना। तो आपको यह मौका मिलता है कि जैसे, इससे पहले कि यह चीज़ हो,
00:17:40क्या ऐसा कुछ है जो मैं करना चाहता हूँ? और मान लीजिए, उदाहरण के लिए, अगर हम देखते हैं कि कोई
00:17:47एक विशिष्ट Vercel CLI कमांड चलाने की कोशिश कर रहा है, और हम देखते हैं कि Vercel CLI में
00:17:55अब इसे करने का एक बेहतर तरीका है, जैसे कि Vercel CLI में अब एक API विकल्प है जहाँ
00:18:00हम बहुत अधिक उन्नत क्वेरीज़ कर सकते हैं। और Vercel CLI को अपडेट कर दिया गया है। अगर आपने
00:18:05इसे हाल ही में अपडेट नहीं किया है, तो इसमें बहुत सारे बेहतरीन नए फीचर्स हैं। हम उन चीजों का संकेत दे सकते हैं और
00:18:11कह सकते हैं कि आप यह करने की कोशिश कर रहे हैं या यहाँ तक कि जाँच भी कर सकते हैं कि क्या आपका Vercel CLI पुराना हो गया है?
00:18:17इसे अपडेट करना बहुत अच्छा होगा। तो आपके पास यहाँ बहुत सारे विकल्प हैं। तो यह आपको एक मौका देता है कि जैसे,
00:18:21जाँचें कि क्या यह किसी प्रकार का टूल कॉल करने वाला है, चाहे वह CLI कॉल हो।
00:18:27यह सैंडबॉक्स CLI के लिए, वर्कफ़्लो CLI के लिए, इन सभी बिल्कुल नए
00:18:34CLIs के लिए बहुत महत्वपूर्ण है जिनके बारे में मॉडल अभी तक कुछ नहीं जानते हैं, क्योंकि वे नॉलेज
00:18:39कटऑफ़ के ठीक बाद रिलीज़ हुए हैं, यह सुनिश्चित करने के लिए कि वे चीज़ें सही ढंग से कर रहे हैं। तो यही वह जगह है जहाँ
00:18:47टूल कॉल्स के लिए, जैसे बैश कॉल्स, फ़ाइल एडिट्स के लिए, फ़ाइल एडिट्स के साथ यह वास्तव में दिलचस्प हो जाता है।
00:18:52कुछ ऐसा जिसे हम और एक्सप्लोर कर रहे हैं वह है फ़ाइलों का अंतर (diffing) देखना जैसे कि यह फ़ाइल पहले ऐसी दिखती थी,
00:18:59एजेंट इसे ऐसा बनाने की कोशिश कर रहा है। क्या हमारी लाइब्रेरीज़ के आधार पर,
00:19:06वह सही बदलाव है? या इसमें कुछ गड़बड़ है? और यह उस पर आ जाता है, मैं
00:19:11उसी उदाहरण पर वापस जाऊँगा कि मान लीजिए आपके पास v6 SDK इंस्टॉल है और वह generate object” को
00:19:18API के रूप में उपयोग करने की कोशिश करता है, जो कि एक सामान्य बात है। और अगर आप उस समय देखते हैं, जैसे कि मैं देख रहा हूँ कि
00:19:25आप generate object का उपयोग करने की कोशिश कर रहे हैं, तो चलिए रुकते हैं और उन्हें याद दिलाते हैं कि AI SDK वास्तव में
00:19:32कैसा है, ताकि टेस्टिंग या डिप्लॉयमेंट या किसी भी चीज़ पर पहुँचने से पहले ही,
00:19:36आपने उसे उसी क्षण पकड़ लिया हो जब एजेंट फ़ाइल को बदलने की कोशिश कर रहा था। और यह उन
00:19:46चीजों में से एक है जहाँ यदि आप किसी स्किल पर भरोसा करने की कोशिश करते हैं जहाँ स्किल्स टेक्स्ट संबंधी संकेत (hints) की तरह होते हैं,
00:19:54यदि आपने कभी अपने claude.md में या किसी स्किल में लिखने की कोशिश की है, जैसे कभी नहीं, कभी भी उन
00:20:03फ़ाइलों को कमिट न करें या बिना, कभी भी पुश न करें जब तक कि मैं किसी ब्रांच में न हूँ।
00:20:13आपने शायद अनुभव किया होगा कि वे हमेशा आपकी रक्षा नहीं करते हैं। प्री-टूल यूज़ आपको एक मौका
00:20:21देता है कि आप शाब्दिक रूप से उन चीजों को होने से रोक सकते हैं, एक प्रोग्रामेटिक
00:20:28और इंजीनियर किए गए तरीके से। और आप इसे अलग-अलग निर्देश और इसे करने के
00:20:32तरीकों के अलग-अलग उदाहरण दे सकते हैं। तो स्किल्स के बीच, आपके
00:20:41claude.md, एजेंट्स md फ़ाइलों के बीच यहाँ यही बहुत बड़ा अंतर है कि आप वास्तव में नियंत्रित कर सकते हैं कि क्या बदल रहा है और
00:20:47क्या हो रहा है। और यदि आप चाहते हैं कि वह बदलाव हो, तो
00:20:51वही वह बिंदु है जहाँ यह आपको बहुत लाभ देता है। तो वहाँ से
00:21:01आपको पोस्ट-टूल (post tool) पर भी वैसी ही क्षमताएं मिलती हैं। यह जाँचने का मौका कि वास्तव में क्या बदला है
00:21:07एक बैश फ़ाइल, बैश कमांड चलने के बाद, वे कौन सी चीज़ें हैं जो अब अलग हैं जब
00:21:13एक टूल को कॉल किया गया है? तो यह आपको किसी चीज़ को होने से
00:21:19रोकने की अनुमति नहीं देता है, लेकिन आपको होने वाली किसी चीज़ का परिणाम देखने की अनुमति देता है। और यदि वह,
00:21:25यदि उसने कुछ बदला या कुछ अप्रत्याशित किया, तो यह डिफ़ (diff) प्राप्त करने का
00:21:31एक और मौका है और यह कहने का कि यह थोड़ा अजीब लग रहा है। चलिए एजेंट को बताते हैं कि यह हमें अजीब लग रहा है।
00:21:38तो ये बिल्डिंग करते समय जानने योग्य दो बहुत बड़े लाइफ साइकिल हुक हैं। और हमारे लिए, यह
00:21:43एक बार फिर, यह सब उसी नॉलेज कटऑफ़ के बारे में है। यही वह चीज़ है जिससे Vercel को
00:21:49एक तरह से लड़ना पड़ता है क्योंकि हम तेज़ी से शिप करते हैं, हम अक्सर शिप करते हैं और
00:21:55और हम इस नई तकनीक को इतनी तेज़ी से सामने लाना चाहते हैं।
00:22:00और यहीं पर एक प्लगिन वास्तव में काम आ सकता है।
00:22:09उसके बारे में कोई सवाल?
00:22:11हाँ। तो अगर यह तय करने के लिए फ़ाइल पाथ का उपयोग कर रहा है कि किन स्किल्स को इंजेक्ट करना है, तो क्या इसका मतलब है कि हमें
00:22:21अपने प्रोजेक्ट्स की फ़ाइलों को थोड़ा और सिंगल पर्पस बनाने के लिए उन्हें सीमित करने से बहुत लाभ होगा
00:22:27ताकि यह अधिक सटीक रूप से निर्धारित कर सके कि इसे किन स्किल्स की आवश्यकता है, किन स्किल्स
00:22:34को इसे जोड़ने की आवश्यकता है। उदाहरण के लिए, यदि मेरे पास एक बड़ी फ़ाइल है और शायद वह हमारी पाँच या छह
00:22:39लाइब्रेरीज़ का उपयोग कर रही है और अब यह वहाँ केवल तीन स्किल्स तक ही जोड़ सकता है, या इसे
00:22:47फ़ाइल पाथ के आधार पर पता नहीं चल पाएगा। तो क्या आपको लगता है कि इन टूल्स के साथ सॉफ़्टवेयर बनाते समय
00:22:51अब इस पर विचार किया जाना चाहिए?
00:22:54मैं कहूँगा कि आपको एजेंट द्वारा लिखे गए कोड की चिंता नहीं करनी चाहिए और यह
00:23:02प्लगिन लेखकों पर निर्भर है। यह हार्नेस लेखकों पर निर्भर है कि वे
00:23:12उन चीजों को अच्छी तरह से काम करने योग्य बनाएँ। जैसे वे लोग जो वास्तव में इवैल्यूएशन कर रहे हैं और देख रहे हैं कि
00:23:17क्या इससे कोई फर्क पड़ता है या नहीं। जबकि मुझे लगता है कि वापस इंजीनियर मोड में आना
00:23:27और यह सोचना बहुत आसान है कि मैं इसे हल कर दूँगा क्योंकि एक इंसान ऐसा ही करेगा। और एक
00:23:33एजेंट निश्चित रूप से यही चाहेगा। जैसे अभी डेवलपर्स के लिए सबसे बड़े प्रलोभनों में से एक है
00:23:39प्रॉब्लम सॉल्विंग, जैसे ऐसी समस्याएँ ढूँढना जो समस्याएँ हैं ही नहीं। क्योंकि हाँ, अगर,
00:23:50अगर आप कुछ ठीक करने की कोशिश कर रहे हैं और आप नहीं जानते कि इसका परीक्षण कैसे किया जाए, जैसे कि
00:23:53यदि आप जानते हैं कि एजेंट के खिलाफ इसका परीक्षण कैसे करना है, तो बेझिझक करें। यदि आपकी
00:24:00ऐसी कोई इच्छा नहीं है, तो बस उन लोगों को करने दें जो प्लगइन्स और हार्नेस बना रहे हैं
00:24:05क्योंकि टेस्टिंग और इवैल्यूएशन महंगे हैं। जैसे, इन सभी मॉडलों को उन बदलावों के विरुद्ध चलाने में
00:24:12बहुत पैसा खर्च होता है। इसमें बहुत समय लगता है और यह बहुत सिरदर्द वाला काम है। तो, यह वैसी चीजों में से एक है।
00:24:17मुझे आशा है कि किसी को भी इसकी चिंता करने की ज़रूरत नहीं होगी। और मैं
00:24:23अपना प्रयास अभी के लिए अन्य चीजों पर खर्च करूँगा। हाँ।
00:24:33मैं समझ गया, समझ गया। तो मेरे चीजें बनाने के तरीके को बदलने का कोई मतलब नहीं है, अगर मॉडल का
00:24:40अगला वर्ज़न इस तरह से बनाया जाने वाला है जो उन सभी बदलावों को
00:24:47अनिवार्य रूप से अनावश्यक बना देगा।
00:24:48हाँ। और मुझे लगता है, मेरा मतलब है, सभी हार्नेस के लिए और Vercel के लिए अंतिम लक्ष्य यह है कि
00:24:56आपको वास्तव में कोड के बारे में इतना सोचने या उसे देखने की ज़रूरत नहीं है। मैं यह नहीं कह रहा हूँ कि
00:25:01अभी ऐसा ही है। मैं कह रहा हूँ कि वह अंतिम लक्ष्य है। हम
00:25:07उसी की ओर बढ़ रहे हैं कि आप सुंदर सॉफ़्टवेयर शिप करना चाहते हैं। आप सक्षम होना चाहते हैं
00:25:11सोचने में, आप विचारों को स्वतंत्र रूप से प्रवाहित करना चाहते हैं और विविधताएं प्राप्त करना चाहते हैं और देखना चाहते हैं कि कौन से विचार आपके साथ
00:25:19वास्तव में मेल खाते हैं और फिर उसे वास्तव में कुछ ऐसा बनाने के लिए छाँटना चाहते हैं जो आपके या आपके
00:25:25परिवार या आपके ग्राहकों के लिए सुंदर हो। जैसे, हम बस एक सुंदर अनुभव चाहते हैं जहाँ
00:25:33आप यह नहीं सोच रहे हों कि आपकी फ़ाइलें कितनी बड़ी हैं। यदि आप लिख रहे हैं,
00:25:39सही डिज़ाइन पैटर्न, आप कौन सी लाइब्रेरीज़ चुन रहे हैं। और मैं पूरी तरह सहमत हूँ।
00:25:48जैसे यह कहने का प्रलोभन कि 'चलिए इन सभी पैटर्न्स का उपयोग करते हैं क्योंकि एजेंट
00:25:53उनके साथ बेहतर काम करते हैं। चलिए ये सब चीजें करते हैं'। और यह निश्चित रूप से कुछ ऐसा है जिसका
00:25:58हम प्लगिन और टेस्टिंग के साथ प्रयोग कर रहे हैं। लेकिन फिर से, यदि आप इसका परीक्षण नहीं कर सकते हैं, तो मैं
00:26:07यह कहना बहुत आसान है कि मैंने यह बदलाव किया और यह स्पष्ट रूप से अब बेहतर काम कर रहा है।
00:26:18और वह उन गलतियों में से एक है जहाँ, अब जब आपने यह बदलाव किया है, तो
00:26:23आप यह नहीं देख रहे हैं कि यह पहले कैसे काम करता था और दूसरी जगहों पर इसका क्या प्रभाव पड़ता है। और हाँ,
00:26:28शायद इसने उस एक सत्र के लिए अच्छा काम किया और जैसे... तो इंजीनियरिंग अब अलग है। माफ़ करना,
00:26:35मुझे लगता है कि मैं दार्शनिक हो रहा हूँ। हाँ। मुझे लगता है, हमें समझ आ गया है। हाँ। ठीक है।
00:26:44तो एक और हुक 'user prompt submit' है। यह वास्तव में महत्वपूर्ण है क्योंकि यह
00:26:50आपको यूजर द्वारा टाइप किए गए टेक्स्ट को लेने की अनुमति देता है। और अगर वे किसी लाइब्रेरी का उल्लेख करते हैं, किसी
00:26:55कॉन्सेप्ट का, यदि वे 'schedule' शब्द का उल्लेख करते हैं, तो चलिए
00:27:00क्रॉन स्किल को लाते हैं। यह बहुत कुछ वैसा ही है जैसा स्किल्स काम करते हैं, जैसे कि यूजर या
00:27:07बातचीत में कुछ ऐसा पता चलता है जो विवरण से मेल खाता है, लेकिन यह वास्तव में
00:27:12आपको यूजर प्रॉम्प्ट के विरुद्ध रेगेक्स (regex) चलाने का मौका देता है। और यदि आप कुछ कीवर्ड्स
00:27:20या पैटर्न या जो भी हो, उनका पता लगाते हैं, तो उन स्किल्स को लोड करें, इन चीजों को एजेंट को संकेत दें,
00:27:26जैसे शायद आपको और फॉलो-अप सवाल पूछने चाहिए। यह इसका इंटरैक्टिव हिस्सा है जहाँ
00:27:33यह आपका कहने का मौका है कि यूजर ने यह कहा, शायद हमें और स्पष्टीकरण लेना चाहिए
00:27:38या हमें बस इन सभी चीजों को लोड करना चाहिए और इसे आगे बढ़ाना चाहिए। आपको करने को मिलता है
00:27:44कुछ बहुत मज़ेदार चीजें हैं जो आप अपने यूजर प्रॉम्प्ट सबमिट के साथ कर सकते हैं जहाँ यदि आप
00:27:48अपने लिए खुद की कस्टम शब्दावली या कमांड्स की भाषा रखना चाहते हैं, और आप चीजों के
00:27:56आगे डॉलर साइन लगाना चाहते हैं। और अगर कुछ डॉलर साइन से शुरू होता है, तो यह करें। या
00:28:00यदि कुछ में, आप जानते हैं, यह यूजर प्रॉम्प्ट सबमिट के अंदर छोटी बैश स्क्रिप्ट या
00:28:07वैसा ही कुछ लिखने जैसा है कि यदि आप इसका पता लगाते हैं, तो आप तुरंत एक टूल चला सकते हैं और
00:28:13यह उस सेशन के संदर्भ के बाहर जो भी बैश स्क्रिप्ट, नोड स्क्रिप्ट,
00:28:20जो भी हो, उस हुक के अंदर चला सकता है। तो आप वहाँ
00:28:28हर तरह की त्वरित चीजें कर सकते हैं। यदि आप 'commit' शब्द का पता लगाना चाहते हैं
00:28:37और फिर एजेंट को कुछ कमिट करने के लिए कुछ कदम उठाने से बचाना चाहते हैं।
00:28:47और इसके बजाय आपके पास एक स्क्रिप्ट है जो जो कुछ भी कर सकती है उसके आधार पर कमिट करती है। जैसे प्रॉम्प्ट
00:28:53कमिट के ठीक बाद, आप एजेंट को बता सकते हैं, जानते हैं, मैंने यह कमिट वाली चीज़ चला दी है, आपको इसके बारे में
00:28:59चिंता करने की ज़रूरत नहीं है। और आप एजेंट के कुछ टर्न बचा सकते हैं। और
00:29:03वहाँ कुछ वास्तव में दिलचस्प छोटी तरकीबें हैं जो आप वास्तव में गति बढ़ाने के लिए कर सकते हैं यदि ऐसी बहुत सी
00:29:09चीजें हैं जो आप बार-बार करते हैं, बजाय इसके कि एजेंट से इसे हर बार करने के लिए कहें।
00:29:15यह एक तरह का मज़ेदार प्रोजेक्ट है यदि आप अपने लिए एक छोटा यूजर प्रॉम्प्ट सबमिट बनाना चाहते हैं और
00:29:19एजेंट के साथ बात करने की अपनी खुद की भाषा लेकर आते हैं। लेकिन हमारे लिए,
00:29:25यह अधिक ऐसा है कि, यदि उन्होंने यह कहा, इस कॉन्सेप्ट के बारे में बात की, तो Vercel की शब्दावली में
00:29:30इसका क्या मतलब है, इसलिए यह शब्दों को विशेष रूप से जैसे शेड्यूलिंग,
00:29:37क्रॉन्स और वर्कफ़्लो के विरुद्ध मिलाता है। और, आप जानते हैं, पैरेलल या परफॉर्मेंस जैसे शब्द या जो भी हो, जैसे
00:29:45आप एजेंट को उन विशिष्ट चीजों की ओर ढूँढ और निर्देशित कर सकते हैं जिन्हें आप Vercel के बारे में जानते हैं। यदि आपके पास
00:29:53इसके साथ छेड़छाड़ करने के लिए एक वीकेंड है तो यूजर प्रॉम्प्ट सबमिट के साथ खेलना बहुत ही मज़ेदार है।
00:29:58और फिर, मैं बस दोहराऊंगा, यहाँ आना और यह कहना पूरी तरह संभव है कि, यूजर प्रॉम्प्ट सबमिट के साथ
00:30:03क्लाउड कोड प्लगिन बनाने में मेरी मदद करें जो डॉलर साइन का पता लगाएगा
00:30:09और अगर यह डॉलर साइन दिखाता है, तो यूजर प्रॉम्प्ट सबमिट के अंदर कमिट चलाएँ ताकि मैं
00:30:14उस प्रॉम्प्ट के साथ इसे बना सकूँ, इसलिए कोड के बारे में बहुत अधिक चिंता न करें,
00:30:19आप बस इसके साथ खेलना शुरू कर सकते हैं। ठीक है, अब जबकि आपके पास यह सब
00:30:26तैयार है, 'session end' किसी भी फ़ाइल या ऐसी किसी भी चीज़ को साफ़ करने का मौका है जो आपने
00:30:32सेशन के दौरान लिखी थी। इसलिए यदि आपने यह इकट्ठा करना शुरू कर दिया है कि कौन से स्किल्स चलाए गए हैं, यदि आपने
00:30:39कॉल किए गए टूल्स के परिणामों के बारे में, या किसी भी तरह के बजट या चीज़ के बारे में कोई जानकारी इकट्ठा करना शुरू कर दिया है
00:30:48जिसे आप पूरे सेशन के दौरान ट्रैक कर रहे हैं, तो यह वहाँ जाने और इसे साफ़ करने का मौका है।
00:30:51सेशन एंड में आप कुछ आकर्षक चीजें कर सकते हैं। क्योंकि यह चलता है
00:30:57अनिवार्य रूप से 'Ctrl C' पर, जैसे सेशन के एक्जिट पर। आप अन्य एजेंटों को यह कहने के लिए सक्रिय कर सकते हैं कि,
00:31:05ठीक है, उन सभी फ़ाइलों को देखें जो सेशन में बदली गई हैं। क्या वे उससे मेल खाती हैं जो
00:31:09हम सब नहीं करते। सेशन एंड के साथ आप जो वास्तव में दिलचस्प चीजें कर सकते हैं वह यह है कि
00:31:13मेरा सेशन पूरा हो गया है। क्या वह सेशन इस प्रोजेक्ट में प्रगति का प्रतिनिधित्व करता है?
00:31:20क्या यह कबाड़ का प्रतिनिधित्व करता है? क्या यह उन सभी फ़ाइलों को देखता है जिन्हें बदला गया था?
00:31:26क्या यह उन चीजों का डुप्लीकेशन है जो पहले से ही प्रोजेक्ट में हैं? और यदि ऐसा है तो
00:31:30जाकर साफ़ करें और यूजर को किसी तरह से अलर्ट करें जैसे सिस्टम नोटिफिकेशन के माध्यम से
00:31:37या किसी अन्य साधन के माध्यम से क्योंकि आपका सेशन खत्म हो चुका है। लेकिन वहाँ आप वास्तव में दिलचस्प
00:31:43चीजें कर सकते हैं। ठीक है। तो यह सब कहने के बाद, यदि मैं बस
00:31:50यहाँ एक त्वरित छोटा डेमो लिखूँगा। तो मैं क्लाउड कोड का एक वर्ज़न चलाने वाला हूँ
00:31:56Vercel प्लगिन के साथ बनाम जब यह Vercel प्लगिन नहीं चला रहा हो। मैं क्लाउड के
00:32:04डेंजरसली स्किप परमिशन का उपयोग करूँगा, मैं डीबग को चालू छोड़ दूँगा, मैं इसे एक सेकंड में दिखाऊँगा।
00:32:08और यह मॉडल हाइकू पर सेट होने वाला है। तो क्लाउड कोड के लिए वह सबसे तेज़ और सबसे बुनियादी मॉडल
00:32:13है। और मैं कहूँगा कि AI SDK के बारे में बस एक ट्यूटोरियल लिखें।
00:32:26और हम देखेंगे कि वहाँ क्या होता है। और इसकी एक तरह से साथ-साथ तुलना
00:32:30करने जा रहा हूँ, आप पहले से ही देख सकते हैं कि यह स्किल को लोड करना शुरू कर देता है। और इसमें प्लगिन लोड है।
00:32:37यदि मैं बिना किसी प्लगिन के सेशन शुरू करना चाहता हूँ, तो एक 'setting sources' फ़्लैग है
00:32:46जो आपको यूजर लेवल की सेटिंग्स या प्रोजेक्ट लेवल की सेटिंग्स को
00:32:53अनिवार्य रूप से अक्षम करने का मौका देता है, बस किसी भी सेटिंग्स को अनदेखा करें। इस तरह मैं इसे बिना प्लगइन्स के
00:32:59लोड कर सकता हूँ। 'No flicker' कल से ही नया है, यह क्लाउड कोड के अंदर
00:33:05स्मूथ स्क्रॉलिंग करने का एक अच्छा तरीका है। तो मैं उसे भी इनेबल कर रहा हूँ। और फिर मैं
00:33:12मॉडल को ओपस (Opus) पर सेट करने जा रहा हूँ जो कि सबसे स्मार्ट मॉडल है। और अगर मैं बस वही प्रॉम्प्ट दूँ
00:33:20SDK के बारे में ट्यूटोरियल का। और यह यहाँ वाला वैनिला वर्ज़न है। और हम
00:33:28परिणामों की तुलना करेंगे। ओह, मुझे पिछला वाला डिलीट करना था।
00:33:36चलिए फिर से शुरू करते हैं। मुझे इसे चलाने दें। यह मैं आज सुबह चला रहा था
00:33:50और इसे शुरू करने से पहले सफाई कर रहा था। तो मुझे इसे फिर से लॉन्च करने दें।
00:33:56एक तरह से तुलना कर रहा हूँ। हाँ।
00:34:01ठीक है। तो
00:34:04यहाँ बड़ा अंतर यह है कि यह हाइकू 4.5 बनाम ओपस 4.6 है, है ना? जैसे यह
00:34:15लाखों गुना सस्ता है, और बहुत, बहुत तेज़ है। और यह बस बहुत अधिक
00:34:22Vercel जानकारी से भरा हुआ है। तो भले ही आप अतिरिक्त टोकन्स की बजट लागत की तुलना करें
00:34:32जिन्हें हम शामिल कर रहे हैं, बनाम हाइकू बनाम ओपस। जबकि यह...
00:34:38मुझे बस एक मार्कडाउन फ़ाइल सेट करने के लिए कहना चाहिए था। मुझे लगता है कि यह वास्तव में कोड लिखने की ओर जा रहा है,
00:34:45लेकिन वह काफी दिलचस्प होगा। देखते हैं।
00:34:59तो हम अपने कई स्किल्स के लिए जो दृष्टिकोण अपना रहे हैं, उसके बारे में ध्यान देने वाली एक बात यह है कि,
00:35:05जैसा कि पहले उल्लेख किया गया है, वर्ज़न नंबर के कारण, क्योंकि अलग-अलग स्किल्स बदल सकते हैं,
00:35:13हम स्किल्स की वर्ज़न नंबर पिनिंग कर रहे हैं। मुझे इसे फिर से बोलने दें। हमारी लाइब्रेरीज़ के अलग-अलग वर्ज़न के लिए
00:35:21अलग-अलग स्किल्स की आवश्यकता होगी। हमारे बहुत से स्किल्स कहते हैं, कृपया नोड मॉड्यूल देखें, जहाँ हम
00:35:28बहुत सारे डॉक्स को बंडल करेंगे ताकि डॉक्स भी एक तरह से वर्ज़न पिन हो जाएँ। तो यहाँ देखते हुए,
00:35:34आप देख सकते हैं कि यह वास्तव में लोकल डॉक्स को पढ़ रहा था। और यह यहाँ जा रहा है
00:35:40 और इस ट्यूटोरियल को एक साथ रख रहा है। ठीक है। अब, इसे रहने दें। इसने
00:35:53वास्तव में कोई रिसर्च नहीं की। तो यह दिलचस्प होगा। पिछली बार मैंने बहुत अधिक रिसर्च की थी। और मैं
00:36:01पहले से ही देख सकता हूँ कि यह 4.6 के बजाय सॉनेट 4 जैसे पुराने मॉडल का उपयोग कर रहा है। यह एक पुराना उपयोग कर रहा है।
00:36:07इसने 'generate object' का उल्लेख किया, जिसे हम उपयोग नहीं करना चाहते हैं। हम
00:36:15V6 का उपयोग करते हैं। और ऐसी बहुत सी चीजें पहले से ही हैं जो पुरानी हो चुकी हैं। मैं यह नहीं कहूँगा कि
00:36:23वे गलत हैं, लेकिन यदि आप SDK से सर्वोत्तम परफॉर्मेंस और सर्वोत्तम अभ्यास चाहते हैं तो वे बहुत पुराने हैं।
00:36:28ठीक है। क्या इसने यहाँ कुछ पकड़ा?
00:36:37हाँ, ऐसा लगता है जैसे SDK स्किल ने पकड़ा, ऐसा लगता है जैसे इसने शुरू में यहाँ एक ट्यूटोरियल लिखा था।
00:36:51और फिर स्किल ने पकड़ा कि इसे V6 पर अपडेट नहीं किया गया था, बिना मेरे कुछ कहे ही।
00:36:58और अब यह जा रहा है और अपडेट कर रहा है। यह 'generate object' से 'generate text' पर चला गया।
00:37:03और यह सुनिश्चित करने के लिए सब कुछ अपडेट कर रहा है कि यह नवीनतम वर्ज़न पर है। ठीक है,
00:37:10तो हम इन दोनों की तुलना कर सकते हैं। मैं बस एक नया सेशन शुरू करूँगा। चलिए यहाँ चलते हैं और सटीकता के लिए
00:37:23बिना प्लगिन वाले ट्यूटोरियल बनाम Vercel प्लगिन वाले ट्यूटोरियल की तुलना करते हैं। और यह
00:37:44देखना दिलचस्प होगा जैसे हर बार जब मैंने इसे पहले चलाया है तो ओपस ने एक मार्कडाउन फ़ाइल लिखी थी
00:37:48इस बार इसने कोड स्निपेट्स किए। अंतर देखना मज़ेदार होगा।
00:37:54जब आप ऐसा कर रहे होते हैं, हाँ, विशेष रूप से यदि आपके पास इस प्लगिन के साथ काम करने वाले अन्य स्किल्स हैं,
00:38:03तो क्या उनमें टकराव होने और पुरानी चीजों को प्राथमिकता मिलने का जोखिम है
00:38:10या प्लगिन एक तरह से उच्च प्राथमिकता लेगा?
00:38:16प्लगिन अनिवार्य रूप से, मैं कहूँगा कि अपने पैटर्न के आधार पर स्किल्स को जबरदस्ती इंजेक्ट करेगा। इसलिए यदि
00:38:27वहाँ है, तो हमेशा वह जोखिम रहता है, जैसे यह सब बस कॉन्टेक्स्ट ही है,
00:38:34जैसे वे सभी टेक्स्ट फाइलें हैं जिन्हें एक सेशन में डाल दिया जाता है। इसलिए मैं हमेशा यही कहूँगा कि
00:38:41आप जिस प्रोजेक्ट पर काम कर रहे हैं, उसके लिए केवल उन्हीं चीजों का उपयोग करें जो आप चाहते हैं, क्योंकि बहुत कम ही
00:38:49यूजर लेवल पर स्किल इंस्टॉल करें जब तक कि आप यह न जानते हों कि आप इसे हर एक प्रोजेक्ट के साथ चाहते हैं।
00:38:58और Vercel प्लगिन के लिए भी, हम यह पता लगाने के लिए सबसे अच्छे तरीकों पर काम कर रहे हैं कि
00:39:06आप जिस प्रोजेक्ट में हैं उसके लिए केवल वही लोड करें जिसकी आपको आवश्यकता है। और हमारे पास इसके बारे में बहुत सारे विचार हैं।
00:39:11लेकिन सबसे शायद विवादास्पद विचारों में से एक यह है कि, कोई यूजर कब
00:39:23कहेगा कि उन्होंने वर्सटाइल प्लगिन इंस्टॉल किया है। तो आप उसके बारे में क्या अनुमान लगा सकते हैं?
00:39:30यदि वे वर्सटाइल प्लगिन इंस्टॉल करते हैं, और वे किसी प्रतिस्पर्धी के प्लेटफॉर्म पर हैं, और वे किसी प्रतिस्पर्धी के प्लेटफॉर्म पर
00:39:35प्रोजेक्ट खोलते हैं? क्या हमें उन्हें अपनी चीजों के बारे में बताना चाहिए? जैसे, यह बहुत,
00:39:42जैसे, यह बहुत विवादास्पद बात है, है ना? और यदि एक व्यक्ति इसे देखता है, और
00:39:47वे नहीं चाहते थे, और वे वास्तव में Vercel पर माइग्रेट करने में रुचि नहीं रखते हैं,
00:39:53तो वे बहुत परेशान हो जाएंगे। यदि कोई दूसरा व्यक्ति है, तो वे बहुत खुश होंगे। जैसे, यहाँ
00:39:59कुछ वास्तव में आकर्षक है। यदि आप इस सिद्धांत को मानते हैं कि हर कोई
00:40:05सिर्फ एजेंटों के साथ बातचीत करने वाला है। जैसे, किसी प्लगिन में या एजेंटों को अपने प्लेटफॉर्म पर नई शानदार चीज़ के बारे में सूचित करने में
00:40:15क्या शिष्टाचार है, बिना दूसरे प्लेटफॉर्मों के पैरों पर कदम रखे।
00:40:24और इसलिए जैसे, बहुत सारी चीजें हैं। यह जो मैं अभी कर रहा हूँ उससे बहुत प्रासंगिक है
00:40:31कि हम बहुत जल्द वर्कफ़्लो के साथ GA (General Availability) पर जा रहे हैं। और इसलिए मैं माइग्रेशन गाइड लिख रहा हूँ।
00:40:37यदि कोई वर्कफ़्लो के प्रतिस्पर्धियों में से किसी एक से माइग्रेट करना चाहता है, तो वह,
00:40:43आप जानते हैं, सीधे तौर पर यह कहने के लिए एक स्किल का उपयोग कर सकता है कि इससे वर्कफ़्लो पर माइग्रेट करें। इस तरह आप,
00:40:49इस तरह आप इसे करते हैं। यदि आप ऐसा करना चाहते हैं, तो एक एजेंट में मैं किस बिंदु पर
00:40:55किसी को इसकी जानकारी दूँगा? और वह चीज़ मेरे लिए वास्तव में, वास्तव में दिलचस्प है। विशेष रूप से यह
00:41:00मेरे दिमाग में सबसे ऊपर है क्योंकि यही वह चीज़ है जिस पर मैं अभी काम कर रहा हूँ। लेकिन हाँ, जैसे कॉन्टेक्स्ट
00:41:07कॉन्फ्लिक्ट्स, जैसे, यह आगे चलकर एक समस्या होने वाली है। मुझे नहीं पता कि यूजर के प्रोजेक्ट के संदर्भ के आधार पर
00:41:14अनुमान लगाने की कोशिश करना कि यूजर क्या चाहता है, उन्होंने अब तक क्या पूछा है।
00:41:19यह बहुत अच्छा होगा। जैसे हम तकनीकी रूप से पिछली बातचीत देख सकते हैं और देख सकते हैं कि उन्होंने
00:41:27क्या किया है। हम कमिट हिस्ट्री देख सकते हैं। जैसे हम गिटहब CLI को कह सकते हैं कि, प्रोजेक्ट में
00:41:35किसी भी चीज़ को जाकर देखो। जैसे कॉन्टेक्स्ट इकट्ठा करने के लिए आप बहुत सी चीजें कर सकते हैं,
00:41:40लेकिन वह कुछ सीमाओं को पार करने जैसा भी है, जैसे उन टूल्स को कॉल करना जिन्हें कॉल करने की उन्हें आपसे आवश्यकता नहीं थी
00:41:46बहुत सारा वास्तव में दिलचस्प सामान जो यदि... यह Vercel में सब कुछ करना और बस
00:41:53एक एजेंट को नियमों के विशिष्ट सेट और एक प्लगिन के साथ प्रदान करना कहीं अधिक आसान है जो
00:42:00वहाँ सब कुछ खूबसूरती से शिप करता है और उन सभी कॉन्फ्लिक्ट्स के बारे में चिंता करने की ज़रूरत नहीं है।
00:42:05वैसे भी। मुझे उम्मीद है कि इसका उल्लेख होगा, हाँ।
00:42:14एक तरह का प्लगिन कॉन्टेक्स्ट, जब हमारे स्किल्स, जैसे इस प्रक्रिया में स्किल्स आम तौर पर किस बिंदु पर होते हैं,
00:42:19उदाहरण के लिए, यदि मेरे पास रिएक्ट ऐप को Next.js में माइग्रेट करने का स्किल है, और वह
00:42:26बस मेरे स्किल्स फ़ोल्डर में पड़ा है, तो क्या इसकी अधिक संभावना है कि जब भी
00:42:32मैं रिएक्ट ऐप प्रोजेक्ट पर हूँ तो यह अपने आप सक्रिय हो जाए? बनाम मान लीजिए, यदि मेरे पास यहाँ Vercel प्लगिन है, तो मैं
00:42:39तय कर सकता हूँ कि इसे कब सक्रिय किया जाना है और यदि मैंने उसी माइग्रेशन को प्लगिन के रूप में बनाया है,
00:42:47तो मैं इसे केवल तभी होने दे सकता हूँ जब यूजर विशेष रूप से इसका अनुरोध कर रहा हो। क्या यह सही
00:42:52मेंटल मॉडल है? मुझे ऐसा ही लगता है। जैसे, हम बात कर रहे हैं
00:42:59वन शॉट स्किल्स या सिंगल यूज स्किल्स के कॉन्सेप्ट के बारे में जो अधिक ऐसे हैं, जैसे मैं
00:43:06माइग्रेशन जैसा कुछ करना चाहता हूँ, जो कि एक टास्क है जो आपके पास है, या
00:43:12टास्क से संबंधित स्किल जिसे आप टास्क के अलावा किसी अन्य समय लोड नहीं करना चाहते हैं।
00:43:17जैसे आप चाहते हैं कि यह टास्क तक सीमित रहे। आप नहीं चाहते कि यह प्रोजेक्ट तक सीमित रहे।
00:43:22आप नहीं चाहते कि यह यूजर तक सीमित रहे, आप चाहते हैं कि यह टास्क तक सीमित रहे। और ये वे चर्चाएँ हैं
00:43:27जो हम कर रहे हैं। और मुझे लगता है कि, मेरे पास कोई बढ़िया जवाब नहीं है क्योंकि अभी, यदि आपके पास
00:43:33इस तरह का स्किल लोड है, तो यह मॉडल के आधार पर
00:43:41और अन्य स्किल्स के आधार पर हार्नेस को प्रभावित करने वाला है। जैसे यह कहना बहुत कठिन है
00:43:47बिना यह जाने कि प्रोजेक्ट में और क्या है। लेकिन हाँ, जैसे वह भी दिमाग में सबसे ऊपर है जैसे
00:43:55टास्क स्कोप्ड स्किल्स। यहाँ मेरे दिमाग में एक और सवाल यह है कि
00:44:04यह प्लगिन आर्किटेक्चर क्लाउड कोड विशिष्ट कितना है। इसलिए यदि मैं कर्सर या कोडेक्स या
00:44:12किसी अन्य में समान व्यवहार प्राप्त करना चाहता हूँ, तो क्या उनका अपना प्लगिन फॉर्मेट है? क्या मुझे
00:44:18उनमें से प्रत्येक के लिए एक प्लगिन चाहिए? वह कैसे काम करता है? हाँ। तो हमारे पास प्लगइन्स के इर्द-गिर्द के स्पेक (spec)
00:44:25पर जल्द ही कुछ घोषणाएं होनी चाहिए और अंततः हर कोई इस बात पर सहमत हो रहा है कि
00:44:33ऐसे प्लगइन्स हों जो यूनिवर्सली काम करेंगे और जिनमें क्रॉस कम्पैटिबिलिटी होगी। लगभग हर कोई
00:44:39इसके साथ बोर्ड पर है। मैं आज के लिए ऐसा नहीं कहूँगा, लेकिन आज, यदि आप क्लाउड कोड फॉर्मेट में प्लगिन बनाते हैं,
00:44:45तो आप उम्मीद कर सकते हैं कि थोड़े ही समय में यह दूसरों के साथ भी काम करने लगेगा।
00:44:54लेकिन हाँ, यह शानदार है। पहले से ही बहुत सारे स्किल्स फ़ोल्डर मौजूद हैं। मुझे बहुत खुशी है कि हम आखिरकार
00:45:00यहाँ किसी चीज़ पर मानकीकरण शुरू कर रहे हैं। हाँ। एक बार यह विचार—जैसे मुझे बहुत अच्छा लगा जब
00:45:07मैं एंथ्रोपिक से प्लगइन्स के बारे में बात कर रहा था और उन्होंने 'एक्सटेंशन' शब्द के बजाय
00:45:13'प्लगइन' शब्द को क्यों चुना, इसका कारण यह है कि प्लगइन का मतलब है कि यह ऐसी चीज़ है जिसे आप प्लग-इन कर सकते हैं
00:45:18और ऐसी चीज़ जिसे आप प्लग-आउट भी कर सकते हैं। जैसे, अगर आप स्किल्स के एक सेट के साथ प्लगइन बनाते हैं,
00:45:24और आप इसे फिर से केवल एक टास्क के लिए उपयोग करना चाहते हैं, तो यह बहुत आसानी से किया जा सकता है।
00:45:33अगर मैं अपने प्रोजेक्ट में हूँ, और मैं एक डिज़ाइनर हूँ, और मैं नहीं चाहता कि मेरी सभी डिज़ाइन स्किल्स
00:45:40डेवलपर स्किल्स या किसी और चीज़ में बाधा डालें। आप बस उन हिस्सों को
00:45:46प्लग-इन करना चाहते हैं। और मुझे लगता है, मैं इन अवधारणाओं से पूरी तरह सहमत हूँ कि
00:45:52अलग-अलग लोगों के अपने व्यक्तिगत कार्य, भूमिकाएँ और प्रोजेक्ट्स होने वाले हैं। और
00:45:59वे स्किल्स के बजाय प्लगइन्स चाहेंगे, क्योंकि वे कर सकते हैं, और वे शायद
00:46:05अपने खुद के प्लगइन्स भी क्यूरेट करना चाहेंगे, जैसे स्किल्स और हुक्स का अपना सेट बनाना,
00:46:10जो पूरी तरह से उनके काम करने के तरीके के अनुसार कस्टमाइज़्ड हों।
00:46:16क्या इसका मतलब यह है कि मुझे शायद वर्सेल प्लगइन को डिस्कनेक्ट करने के बारे में सोचना चाहिए अगर
00:46:21मैं किसी गैर-वर्सेल प्रोजेक्ट पर काम कर रहा हूँ?
00:46:25मैं कहूँगा कि आज की स्थिति में, हाँ, क्योंकि यह खुद को आगे बढ़ाने के लिए
00:46:34बहुत आक्रामक है। और उम्मीद है कि ऐसा कहने पर मुझे किसी से डाँट नहीं पड़ेगी। लेकिन
00:46:39वर्सेल प्लगइन का पूरा इरादा यह है कि—यह कुछ ऐसा है अगर आप अपने
00:46:46एजेंट को लोड करना चाहते हैं और कहना चाहते हैं, 'मेरे लिए यह चीज़ बनाओ'। और फिर वह चीज़ लगभग जादुई रूप से
00:46:53वर्सेल पर दिखाई देने लगती है। यही शुरुआती लक्ष्य है। और हम देख रहे हैं कि यह कैसे काम करता है। और
00:46:59हमें जो फीडबैक मिल रहा है उसके आधार पर, हम इसे थोड़ा पीछे खींच रहे हैं और देख रहे हैं कि हमें निश्चित रूप से
00:47:04प्रोजेक्ट में क्या है, उसे पहचानने और इन सभी चीज़ों को डिसेबल करने के लिए और अधिक डिटेक्शन करने की ज़रूरत है।
00:47:09और वह बहुत, बहुत जल्द आने वाला है। तो, आप जानते हैं, शायद इसे
00:47:15इंस्टॉल और इनेबल ही रखें क्योंकि हम इस पर सक्रिय रूप से काम कर रहे हैं,
00:47:18जैसे हम आज सुबह ही इस बारे में बात कर रहे थे। तो—
00:47:23मैं समझ गया। तो यह एक तरह का ट्रेड-ऑफ है जहाँ शायद भविष्य में, यह थोड़ा बेहतर समझ पाएगा
00:47:29कि इसे कब खुद को इन्वोक करना चाहिए। लेकिन अभी, यूजर यह नियंत्रित करता है कि यह
00:47:36प्लगइन इन्वोक हो रहा है या नहीं, इसे अलग सेशन के लिए प्लग-इन या अनप्लग करके।
00:47:42हाँ। और अभी, यदि आप सिर्फ 'slash plugin' टाइप करते हैं, तो आप अपने इंस्टॉल किए गए प्लगइन्स पर जा सकते हैं,
00:47:48बस टैब दबाएं, आप जिस भी प्लगइन को डिसेबल करना चाहते हैं उस पर जा सकते हैं। और आप अपडेट कर सकते हैं,
00:47:54अनइंस्टॉल कर सकते हैं, आप कुछ भी कर सकते हैं। तो आप इसे उस तरह से डिसेबल कर सकते हैं। और वहाँ
00:48:03अन्य अधिक उन्नत तरीके भी हैं, जैसे कस्टम ZSH फंक्शन्स सेट करना या जो भी,
00:48:10जो यूजर के हिसाब से सेटिंग्स के विशिष्ट सेट लोड करते हैं। यह सब बहुत अजीब है, जैसे
00:48:17कंप्यूटर पर बैठने वाले व्यक्ति की प्रोफाइल की अवधारणा। और
00:48:23वे जो कुछ भी देख रहे हैं उसके आधार पर वे कौन से प्लगइन्स चाहते हैं? और इसके लिए
00:48:29कोई सटीक समाधान नहीं है। हालाँकि, उम्मीद है कि हम एक समाधान ढूँढ लेंगे।
00:48:34यह वैसा ही है जैसे जब एक Waymo कार आती है और आपके अंदर कदम रखते ही
00:48:39वह आपकी सीटों को पूरी तरह एडजस्ट कर देती है।
00:48:40हाँ, हाँ। और मुझे लगता है कि एक निश्चित बिंदु पर, मैं कल्पना करता हूँ कि हम एजेंटों को आपसे
00:48:49आपके बारे में अधिक पूछते हुए देखेंगे। मुझे लगता है कि प्रोफाइल पहचान और भूमिका की अवधारणा,
00:48:57मुझे एकMissing पीस की तरह लगती है। जब तक आप यह न मान लें कि हर कोई अब
00:49:05पूरी चीज़ के लिए प्रोजेक्ट मैनेजर है। मुझे नहीं लगता कि ऐसा जल्द ही होने वाला है।
00:49:12मुझे बस ऐसा लगता है कि कुछ लोगों के पास कुछ चीज़ों के बारे में दूसरों से बेहतर विचार होते हैं।
00:49:19तो—
00:49:20हाँ, आइए इसकी समीक्षा करें। तो क्या दिलचस्प है? देखते हैं, ये— हाँ,
00:49:33यह दिलचस्प है कि मैं Opus से Opus की समीक्षा करवा रहा हूँ और यह अभी भी गलत है, है ना? जैसे कि यह
00:49:37अभी भी 'generate object' और v6 की सिफारिश कर रहा है। चलिए डॉक्स के साथ इसकी पुष्टि करते हैं। तो यह पुष्टि करने की
00:49:50कोशिश कर रहा है और कह रहा है कि, आप जानते हैं, मैंने जो लिखा है वह गलत है। यह
00:49:56अभी भी मान्य लेकिन पुराना दिखा रहा है। तो जैसे, हमारे Haiku ने सबसे नए मॉडल्स की सिफारिश की,
00:50:05और मेरे लिए यह बहुत महत्वपूर्ण है। मुझे नहीं पता कि आपने कितनी बार एजेंट का उपयोग करके
00:50:08AI के साथ कुछ लिखने की कोशिश की है। और यह कहता है, 'आइए GPT-4 का उपयोग करें'—
00:50:14नहीं, वह अब बहुत पुराना हो गया है। और यह उस गुणवत्ता के करीब भी नहीं है जिसकी हमें ज़रूरत है।
00:50:20यह उन चीज़ों में से एक है जिन्हें आप पहचान सकते हैं, पकड़ सकते हैं और कह सकते हैं, 'AI गेटवे में नए मॉडल्स चेक करें'।
00:50:25और आप कह सकते हैं कि नवीनतम मॉडल्स का पता लगाओ और यूजर से पूछो कि
00:50:31उन्हें कौन से चाहिए और प्रत्येक मॉडल का वर्णन करें और वह सब कुछ। जबकि अभी,
00:50:36ये एजेंट हमेशा बस GPT-4 की तरह ही रहते हैं। यह देखना दिलचस्प रहा है, बस एक साइड नोट के रूप में,
00:50:43कि Claude Code हाल ही में Anthropic SDK की अधिक सिफारिश कर रहा है जहाँ वह पहले नहीं करता था।
00:50:49और आप सोचते हैं, 'मुझे लगता है कि पर्दे के पीछे कोई सिस्टम प्रॉम्प्ट्स में बदलाव कर रहा है'—
00:50:55कि 'हमारे अपने SDK की सिफारिश करो'। जिसका मैं उन्हें दोष नहीं देता। यह बिजनेस है, है ना? ठीक है।
00:51:03हाँ, तो 'generate object' अभी भी उसमें है। और हाँ, वह अच्छा था। डॉक्स चेक करने के बाद,
00:51:13ट्यूटोरियल अधिक सटीक है। कई चीज़ें जिन्हें मैंने फैब्रिकेटेड कहा था, वे वास्तव में मौजूद हैं।
00:51:19तो हाँ, यह Opus है, जो महसूस कर रहा है कि ये वास्तविक चीज़ें हैं— जैसे यह प्लगइन के साथ
00:51:25Haiku है। और Opus, जैसे ट्यूटोरियल लिख रहा है और ट्यूटोरियल को वैलिडेट करने की कोशिश कर रहा है,
00:51:32जैसे मुझे उसे ठीक डॉक्स को देखने के लिए कहना पड़ा यह पता लगाने के लिए कि कुछ ऐसा जिसे प्लगइन के साथ
00:51:39Haiku ने एक ही बार में कर दिया था। और अगर आप Opus और Haiku के बीच का अंतर जानते हैं,
00:51:44तो यह एक बड़ी बात है। तो यहाँ एक अंतर (diff) है कि चुनौतियों या बदलावों के लिए
00:51:53इसने क्या सही पाया। वैसे भी, उम्मीद है कि यह सरल तरीके से प्रदर्शित करता है।
00:52:04जैसे परिदृश्यों में से एक, AI SDK, यह उससे बहुत अधिक है। यह वर्कफ़्लो और सैंडबॉक्स जैसी
00:52:15चीज़ों के लिए बहुत नई वर्सेल तकनीकों के साथ है जो अविश्वसनीय हैं, लेकिन मॉडल्स की
00:52:21नॉलेज कटऑफ के भीतर नहीं हैं। ये अंतर और भी बड़े हो जाते हैं क्योंकि मॉडल्स
00:52:28उनके बारे में जानते तक नहीं हैं, है ना। तो वर्सेल प्लगइन इसी के लिए है। अगर किसी के पास
00:52:35कोई सवाल है, तो बेझिझक मुझसे X पर या जहाँ भी आप मुझे ढूँढ सकें, संपर्क करें। मुझे इस बारे में
00:52:41बात करना पसंद है और किसी भी चिंता को दूर करने में खुशी होगी या यह निश्चित रूप से प्रगति पर है और
00:52:48ऐसी चीज़ है जिसे हम तब तक दोहराते रहेंगे जब तक कि यह एक अद्भुत
00:52:52जादुई अनुभव न बन जाए। और उम्मीद है कि आप आज इसकी शुरुआत देख सकते हैं। अगर किसी के पास
00:52:59कोई सवाल है, तो मुझे उनका जवाब देने में खुशी होगी। अगर किसी के पास कोई प्लगइन विचार है जिस पर वे विचार-मंथन करना चाहते हैं,
00:53:04तो मुझे उस बारे में भी बात करने में खुशी होगी। तो बस इतना ही, जब तक कि
00:53:14कोई नहीं चाहता कि मैं किसी और चीज़ में गहराई से जाऊँ। आज के लिए मेरे पास बस इतना ही है।
00:53:20समय निकालने के लिए वास्तव में आपकी सराहना करता हूँ। यह समझने के लिए बहुत कुछ है। यह एक बड़ा बदलाव है। हम
00:53:25इन सभी AI टूल्स के साथ बहुत तेज़ी से आगे बढ़ रहे हैं।
00:53:28हाँ, दुर्भाग्य से यह धीमा नहीं होने वाला है।
00:53:33मेरा एक सवाल यह है कि अगर लोग किसी भी तरह से योगदान देना चाहते हैं, या अगर उन्हें कोई बग मिलता है और वे
00:53:38उसकी रिपोर्ट करना चाहते हैं, तो आप तक पहुँचने का सबसे अच्छा तरीका क्या है?
00:53:41ओह, हाँ, इसके लिए रेपो। vercel/vercel-plugin या क्या यह vercel/
00:53:49vercel-plugin है?
00:53:51हाँ, vercel/vercel-plugin।
00:53:58ठीक है। मैं इसे चैट में भी डाल दूँगा ताकि लोगों के पास यह रहे।
00:54:03शुक्रिया। हाँ, वहाँ इश्यूज (issues) डालना बढ़िया है। यह तेज़ी से बदल रहा होगा। मुझे पता है कि मैंने
00:54:10इस कॉल से ठीक पहले एक बड़े PR को मंजूरी दी है।
00:54:14शानदार। ठीक है, जैकब, आपकी तरफ से कोई और सवाल?
00:54:20नहीं, नहीं, मुझे लगता है कि हमने स्ट्रीम पर सब कुछ कवर कर लिया है। हाँ, इतने
00:54:24विस्तृत और बेहतरीन डेमो के लिए धन्यवाद। मुझे लग रहा है कि मैं अब यहाँ अपने खुद के क्लाउड प्लगइन्स बनाने के लिए
00:54:30तैयार हूँ। और एजेंट पर चिल्लाने के बजाय जब वह मुझ पर जबरन
00:54:37मेन ब्रांच में पुश करने का फैसला करता है, अब मुझे पता है कि मुझे उसे किन हुक्स का उपयोग करने के लिए कहना चाहिए
00:54:42ताकि वह दोबारा ऐसा न करे। तो यह बहुत मददगार है।
00:54:45प्री-टूल्स आपके दोस्त हैं, वे उन चीज़ों के खिलाफ आपका सबसे अच्छा बचाव हैं जिन्हें आप नहीं चाहते।
00:54:51तो, बढ़िया। बहुत-बहुत धन्यवाद, जॉन। बिल्कुल। धन्यवाद, सभी को।
00:54:56और हम सभी के साथ जुड़ने के लिए आप सभी का धन्यवाद। आप आने वाले सेशन्स [community.vercel.com/events](https://community.vercel.com/events) पर
00:55:01देख सकते हैं। और हम आपसे अगली बार मिलेंगे।
00:55:05हाँ। हाँ। मैं आपसे कम्युनिटी में मिलूँगा। सभी का दिन शुभ हो।

Key Takeaway

Vercel प्लगइन 'हुक्स' आधारित लाइफसाइकिल नियंत्रण का उपयोग करके AI एजेंटों को नवीनतम प्लेटफॉर्म अपडेट के साथ सिंक करता है, जिससे पुराने मॉडल्स भी आधुनिक कोडिंग मानकों और सुरक्षा नियमों का पालन कर पाते हैं।

Highlights

Vercel प्लगइन एजेंटों के लिए नॉलेज कट-ऑफ की समस्या को हल करता है, जिससे वे 6 से 12 महीने पुराने डेटा के बजाय नवीनतम Vercel SDK और फीचर्स का उपयोग कर पाते हैं।

प्लगइन्स में 'हुक्स' (Hooks) होते हैं जो सेशन स्टार्ट, प्री-टूल यूज, यूजर प्रॉम्प्ट सबमिट, पोस्ट-टूल यूज और सेशन एंड जैसे लाइफसाइकिल चरणों पर प्रोग्रामेटिक नियंत्रण देते हैं।

प्री-टूल यूज हुक का उपयोग करके एजेंट को अनचाहे बैश कमांड चलाने या गलत ब्रांच में कोड कमिट करने से रोका जा सकता है।

Vercel प्लगइन के साथ Claude Haiku मॉडल का उपयोग करने पर वह बिना प्लगइन वाले महंगे Claude Opus मॉडल की तुलना में अधिक सटीक और अपडेटेड AI SDK कोड (v6) जेनरेट करता है।

प्लगइन 'यूजर प्रॉम्प्ट सबमिट' हुक के माध्यम से विशिष्ट कीवर्ड्स जैसे 'schedule' या 'commit' को पहचानकर संबंधित स्किल्स को ऑटोमैटिकली लोड कर सकता है।

Timeline

स्किल्स से प्लगइन्स तक का विकास

  • एजेंट की क्षमताओं को बढ़ाने के लिए स्किल्स अब प्लगइन्स के रूप में विकसित हो रहे हैं।
  • प्लगइन्स के लिए एक वैश्विक मानक पर काम किया जा रहा है ताकि एक ही प्लगइन Claude Code, Cursor और अन्य एडिटर्स पर काम कर सके।

वर्तमान में स्किल्स और प्लगइन्स के बीच संक्रमण काल चल रहा है। प्लगइन्स का मुख्य उद्देश्य एजेंटों को ऐसी चीजें करने में सक्षम बनाना है जो वे सामान्य रूप से नहीं कर पाते। भविष्य में एक साझा मानक इन टूल्स को विभिन्न प्लेटफॉर्म्स पर पोर्टेबल बना देगा।

एजेंट लाइफसाइकिल हुक्स और नॉलेज कट-ऑफ

  • स्किल्स मुख्य रूप से यूजर द्वारा या डिस्क्रिप्शन के आधार पर मैन्युअल रूप से इनवोक किए जाते हैं।
  • प्लगइन्स लाइफसाइकिल हुक्स का उपयोग करके एजेंट के काम करने के तरीके को गहराई से नियंत्रित करते हैं।

हुक्स सेशन की शुरुआत से लेकर अंत तक सक्रिय रहते हैं। Vercel प्लगइन का प्राथमिक लक्ष्य एजेंट को पुराने कोड पैटर्न लिखने से रोकना है। चूंकि मॉडल्स का नॉलेज कट-ऑफ अक्सर एक साल पुराना होता है, इसलिए ये हुक्स उन्हें Vercel के नवीनतम AI SDK और वर्कफ़्लो से परिचित कराते हैं।

सेशन स्टार्ट और नॉलेज ग्राफ इंजेक्शन

  • सेशन स्टार्ट हुक वर्सेल प्लेटफॉर्म का एक 'टेबल ऑफ कंटेंट्स' या नॉलेज ग्राफ इंजेक्ट करता है।
  • प्लगइन यूजर की package.json फाइल को स्कैन करके सही लाइब्रेरी वर्जन के अनुसार डॉक्यूमेंटेशन यूआरएल लोड करता है।

बातचीत शुरू होते ही एजेंट को पूरे इकोसिस्टम की एक स्ट्रक्चर्ड समझ दी जाती है। इससे डेवलपर को विशिष्ट तकनीकी शब्दावली याद रखने की जरूरत नहीं पड़ती। प्लगइन स्थानीय रूप से प्रोजेक्ट का निरीक्षण करता है ताकि यह सुनिश्चित हो सके कि SDK v5 और v6 जैसे अलग-अलग वर्जन्स के बीच कोई टकराव न हो।

प्री-टूल और पोस्ट-टूल नियंत्रण

  • प्री-टूल हुक फाइल में बदलाव होने या बैश कमांड चलने से पहले उसे प्रोग्रामेटिक रूप से रोक सकता है।
  • पोस्ट-टूल हुक कमांड चलने के बाद परिणाम या फाइलों के 'diff' का निरीक्षण करने की अनुमति देता है।

यह सुरक्षा और सटीकता के लिए सबसे महत्वपूर्ण चरण है। यदि एजेंट 'generate object' जैसे पुराने API का उपयोग करने की कोशिश करता है, तो प्लगइन उसे उसी क्षण पकड़ लेता है। यह केवल टेक्स्ट संकेतों (hints) पर निर्भर रहने के बजाय वास्तविक इंजीनियरिंग नियंत्रण प्रदान करता है।

यूजर प्रॉम्प्ट और कस्टम कमांड भाषा

  • यूजर प्रॉम्प्ट सबमिट हुक यूजर द्वारा टाइप किए गए टेक्स्ट पर रेगेक्स (regex) चलाने की सुविधा देता है।
  • सेशन एंड हुक का उपयोग सेशन के दौरान बनाई गई अस्थायी फाइलों को साफ करने या प्रगति की समीक्षा करने के लिए किया जाता है।

डेवलपर अपनी खुद की संक्षिप्त भाषा या शॉर्टकट बना सकते हैं, जैसे डॉलर साइन ($) से शुरू होने वाले शब्दों को स्वचालित रूप से कमिट स्क्रिप्ट में बदलना। यह एजेंट के अनावश्यक टर्न्स को बचाकर प्रक्रिया को तेज करता है। सेशन समाप्त होने पर सिस्टम नोटिफिकेशन के जरिए यूजर को अलर्ट भी किया जा सकता है।

परफॉरमेंस तुलना: Haiku बनाम Opus

  • प्लगइन के साथ सबसे सस्ता मॉडल (Haiku) बिना प्लगइन वाले सबसे स्मार्ट मॉडल (Opus) से बेहतर परिणाम दे सकता है।
  • Vercel प्लगइन का वर्तमान स्वरूप आक्रामक है और इसे गैर-Vercel प्रोजेक्ट्स पर मैन्युअल रूप से डिसेबल करना पड़ सकता है।

डेमो में देखा गया कि बिना प्लगइन वाला Opus मॉडल पुराने 'generate object' का सुझाव देता रहा, जबकि प्लगइन के साथ Haiku ने तुरंत सही V6 सिंटैक्स का उपयोग किया। वर्तमान में प्लगइन को '/slash plugin' कमांड के जरिए मैनेज किया जा सकता है। भविष्य में एजेंट ऑटोमैटिकली यूजर की भूमिका और प्रोजेक्ट की जरूरतों को पहचानने में सक्षम होंगे।

Community Posts

View all posts