Google का नया AI प्रति सेकंड 1,000+ टोकन जेनरेट करता है (DiffusionGemma)
BBetter Stack
컴퓨터/소프트웨어게임/e스포츠
Transcript
00:00:00गूगल आजकल काफी चर्चा में है। पिछले हफ्ते मैंने उनके ग्राउंडब्रेकिंग एनकोडर-फ्री
00:00:05जेम्मा 4 मॉडल पर एक वीडियो बनाया था और इस हफ्ते उन्होंने एक और चौंकाने वाला इनोवेटिव मॉडल पेश किया है। इसका नाम डिफ्यूजन
00:00:11जेम्मा है और यह मॉडल बहुत तेज़ है। यह एक हजार से अधिक टोकन जेनरेट करने में सक्षम है
00:00:18प्रति सेकंड और इसके ऐसा कर पाने का कारण यह है कि यह पूरी तरह से
00:00:23अलग तरीके से टेक्स्ट जेनरेट करता है, जैसा आपने पहले किसी अन्य मॉडल में नहीं देखा होगा। तो इस वीडियो में हम देखेंगे
00:00:29डिफ्यूजन जेम्मा को, यह कैसे काम करता है और मैं आपको यह भी दिखाऊंगा कि आप इसे खुद कैसे टेस्ट कर सकते हैं।
00:00:35यह काफी मजेदार होने वाला है, तो चलिए शुरू करते हैं।
00:00:41तो आपने अब तक जिस भी भाषा मॉडल से बात की है, वह मौलिक रूप से एक ही तरह से काम करता है। वे ऑटो-रिग्रेसिव
00:00:48होते हैं और यह एक फैंसी शब्द है जिसका मतलब है कि वे बाएं से दाएं एक बार में एक टोकन जेनरेट करते हैं। वे एक शब्द लिखते हैं
00:00:54फिर वे अब तक लिखे गए सब कुछ को देखते हैं और फिर अगले शब्द की भविष्यवाणी करते हैं और यह चक्र बस
00:00:59दोहराता रहता है। क्लॉड या जीपीटी जैसे बड़े कमर्शियल मॉडल्स के लिए यह काम ऐसे करता है कि जब कोई सर्वर
00:01:06एक टोकन जेनरेट करता है, तो अधिकांश समय कंप्यूटिंग में नहीं, बल्कि मॉडल के वेट्स को
00:01:12मेमोरी से लोड करने में खर्च होता है। और अगर आप केवल एक यूजर को सर्विस दे रहे हैं तो यह थोड़ा बर्बादी भरा है। इसलिए सर्वर सैकड़ों
00:01:19यूजर्स को एक साथ बैच करते हैं, वेट्स को एक बार लोड करते हैं और उन्हें एक ही समय में सभी के लिए चलाते हैं। और इस तरह,
00:01:25आप एक मेमोरी लोड के साथ 256 यूजर्स को सर्विस दे सकते हैं। लेकिन जब आप किसी मॉडल को स्थानीय रूप से चलाते हैं, तो आप सिर्फ एक यूजर होते हैं,
00:01:33इसलिए आपके साथ बैच करने के लिए कोई नहीं होता। जीपीयू वेट्स के बड़े हिस्से को लोड करता है, एक टोकन तैयार करने के लिए एक छोटा सा
00:01:39कंप्यूटेशन करता है, और फिर अगले टोकन के लिए सब कुछ दोबारा करने से पहले खाली बैठा रहता है। तकनीकी शब्दों में,
00:01:46इसे मेमोरी बाउंड कहा जाता है। आपका महंगा जीपीयू अपना अधिकांश समय वास्तव में कंप्यूटिंग करने के बजाय अगले
00:01:52टोकन के इंतजार में बिताता है। तो गूगल डीपमाइंड ने इस समस्या को देखा और एक चतुर
00:01:58सवाल पूछा। यदि क्लाउड एक साथ 256 यूजर्स को सर्विस देकर उस खाली समय को भरता है, तो क्या होगा अगर हम उस खाली समय को
00:02:07एक अकेले यूजर के लिए भर दें? तो 256 लोगों के लिए एक टोकन के बजाय, क्या होगा अगर हम 256 टोकन एक ही बार में
00:02:16एक व्यक्ति के लिए जेनरेट करें? और यही डिफ्यूजन जेम्मा के पीछे का पूरा विचार है। शब्द दर शब्द लिखने के बजाय,
00:02:23मॉडल एक कैनवस के साथ शुरू होता है, जो 256 पूरी तरह से यादृच्छिक (रैंडम) प्लेसहोल्डर टोकन की एक पंक्ति है। तो यह सिर्फ
00:02:31शोर (नॉइज) है। और इसका काम उस कैनवस को एक साथ सभी स्थितियों में ठीक करना और उसे असली टेक्स्ट में बदलना है। तो एक ही बार में
00:02:38सभी 256 टोकन की भविष्यवाणी करके, आप अपने जीपीयू को खाली बैठाने के बजाय काम का एक बड़ा हिस्सा दे रहे हैं। इस तरह,
00:02:46आप मॉडल को मेमोरी बाउंड से कंप्यूट बाउंड में बदल देते हैं, और वह सारी बर्बाद हो रही शक्ति आखिरकार इस्तेमाल हो जाती है।
00:02:53लेकिन यह उतना सीधा नहीं है जितना लगता है। एक साथ 256 टोकन की भविष्यवाणी करना वास्तव में बहुत कठिन है।
00:03:01क्योंकि मॉडल को कैसे पता चलेगा कि टोकन नंबर 254 क्या होगा जब उसे यह भी नहीं पता कि 1 से 253 तक के टोकन क्या
00:03:09निकले हैं? और ठीक ऐसा ही होता है। पहले कुछ टोकन तो अच्छे निकलते हैं, लेकिन जैसे-जैसे यह आगे बढ़ता है,
00:03:15यह और ज्यादा बकवास में बदलता जाता है। लेकिन क्या होगा अगर सिर्फ एक पास करने के बजाय, मॉडल कई
00:03:21पास करे? और यही मुख्य ट्रिक है। मॉडल बार-बार कैनवस के ऊपर से गुजरता है, लेकिन अब
00:03:28यह अपने पिछले अनुमानों को देख सकता है। जिन टोकन की इसने विश्वास के साथ भविष्यवाणी की थी, वे संदर्भ संकेत (कॉन्टेक्स्ट क्लूज) बन जाते हैं जो
00:03:35गड़बड़ वाले टोकन को ठीक करने में मदद करते हैं। और सबसे अच्छी बात यह है कि इसे केवल कुछ पास की जरूरत होती है। कुल टोकन संख्या 256 से
00:03:42बहुत कम पास। और यही वह जगह है जहां से मॉडल की गति आती है। और आपने शायद यह ट्रिक पहले देखी होगी।
00:03:49इसे डिफ्यूजन कहते हैं। आप शोर (नॉइज) से शुरुआत करते हैं और फिर इसे धीरे-धीरे सुधारते हैं। और
00:03:55यह बिल्कुल वही विचार है जो एआई इमेज जेनरेटर्स को शक्ति देता है। और मॉडल इसे सीखने का तरीका है
00:04:01ट्रेनिंग में वास्तविक छवियों में जानबूझकर शोर जोड़ना और फिर उस शोर को वापस घटाकर भविष्यवाणी करना सीखना।
00:04:07लेकिन आप उसी अवधारणा को टेक्स्ट पर कैसे लागू करते हैं? यह मुश्किल हिस्सा है। क्योंकि इमेज के साथ,
00:04:14शोर आसान है। किसी पिक्सेल को थोड़ा और लाल या नीला बना दो। लेकिन टेक्स्ट के साथ, आप “the” शब्द को
00:04:19थोड़ा कम “the” कैसे बनाएंगे? एक शब्द के लिए उस शोर का क्या मतलब है? खैर, डीपमाइंड ने कुछ
00:04:27निकाला जिसे यूनिफॉर्म स्टेट डिफ्यूजन कहते हैं। तो अक्षरों के साथ छेड़छाड़ करने के बजाय, आप रैंडमली
00:04:32बदले गए शब्द को शोर के रूप में मानते हैं। और अपने ट्रेनिंग टेक्स्ट को करप्ट करने के लिए, आप कुछ असली शब्दों को रैंडम
00:04:38शब्दों से बदल देते हैं। और मॉडल का काम यह पता लगाना है कि कौन से शब्द कचरा हैं और आखिरकार उन्हें कई पास के साथ ठीक करना है।
00:04:45इसे करने का एक सरल तरीका भी है जिसे मास्क डिफ्यूजन कहते हैं जो सिर्फ टोकन को ब्लैंक कर देता है।
00:04:51लेकिन इसमें एक बड़ी खामी है। एक बार जब मॉडल किसी शब्द के लिए प्रतिबद्ध हो जाता है, तो वह हमेशा के लिए लॉक हो जाता है। इसमें वही
00:04:57समस्या होती है जो ऑटो-रिग्रेसिव मॉडल्स में होती है। लेकिन यूनिफॉर्म स्टेट डिफ्यूजन इसे हर स्थिति में किसी तरह का टोकन रखकर ठीक कर देता है।
00:05:04तो मॉडल तीन कदम पहले स्वीकार किए गए शब्द को देख सकता है, यह तय कर सकता है कि क्या यह अब फिट
00:05:10नहीं है और उसे बदल सकता है। इसलिए हम इसे पूरी तरह से सेल्फ-करेक्ट कर सकते हैं। लेकिन इस समाधान
00:05:15में एक और पेंच है। डिफ्यूजन को आपके प्रॉम्प्ट को समझने के लिए एक एनकोडर और कैनवस को साफ करने के लिए एक डिनोइज़र की
00:05:23जरूरत होती है। तो डीपमाइंड ने एक एनकोडर डिनोइज़र पैच विकसित किया। यह उनके मौजूदा 26 बिलियन
00:05:30जेम्मा 4 मॉडल के ऊपर बनाया गया है और जब यह आपकी प्रतिक्रिया जेनरेट कर रहा होता है तो यह दोनों मोड के बीच स्विच करता है। एनकोडर मोड में,
00:05:36मॉडल आपके प्रॉम्प्ट को पढ़ता है, कुछ संदर्भ और मार्गदर्शन निकालने की कोशिश करता है। यह उस सब को
00:05:42केवी कैश में इकट्ठा करता है और फिर उसे सीधे डिनोइज़र को पास कर देता है। और डिनोइज़र का काम अनिवार्य रूप से
00:05:49कैनवस को साफ करना है। और यह दो चीजें करके ऐसा करता है। पहला, याद रखें कि कैसे एक सामान्य एलएलएम
00:05:56हर स्थिति के लिए एक कॉन्फिडेंस स्कोर या लॉजिट बनाता है लेकिन अंतिम को छोड़कर बाकी सब को फेंक देता है? वैसे,
00:06:02अगर आप यहाँ भ्रमित हो रहे हैं, तो मैंने कुछ समय पहले एक वीडियो बनाया था जो बताता है कि एलएलएम कैसे काम करते हैं, और अधिक
00:06:07विस्तार से। तो अगर आप रुचि रखते हैं तो उस वीडियो को देखें। तो अनिवार्य रूप से डिफ्यूजन जेम्मा
00:06:13स्कोर्स को नहीं फेंकता है। यह उन सभी कॉन्फिडेंस स्कोर्स को रखता है क्योंकि हर कैनवस स्थिति को अपनी भविष्यवाणी की आवश्यकता होती है।
00:06:19और दूसरी बात, यह डिनोइज़र कॉजल अटेंशन का उपयोग नहीं करता है, जो यह नियम है कि एक शब्द केवल
00:06:25पीछे देख सकता है, जो कि ऑटो-रिग्रेसिव मॉडल्स के काम करने का तरीका है। तो इसके बजाय, यह इसे एक द्वि-दिशात्मक
00:06:31अटेंशन के साथ बदल देता है। तो अब हर टोकन हर दिशा में हर दूसरे टोकन को देख सकता है। तो हर स्थिति के लिए,
00:06:38आप उन कॉन्फिडेंस स्कोर्स को लागू करते हैं, अन्य टोकन को देखते हैं, और कैनवस को धीरे-धीरे, कदम दर कदम साफ करते हैं।
00:06:44और इस तरह डिफ्यूजन जेम्मा 1000 से अधिक टोकन प्रति सेकंड की अपनी अविश्वसनीय गति हासिल करने में सक्षम है
00:06:51H100 जीपीयू पर। अब मुझे आपसे सच कहना होगा। यह कोई जादुई समाधान नहीं है। इन नई रणनीतियों के साथ,
00:06:58डिफ्यूजन जेम्मा अनिवार्य रूप से गति के लिए गुणवत्ता का व्यापार कर रहा है। अधिकतम गुणवत्ता वाले काम के लिए, मानक जेम्मा 4
00:07:05अभी भी एक बेहतर विकल्प है। यह मॉडल विशेष रूप से महत्वपूर्ण स्थानीय कार्यों जैसे इनलाइन एडिटिंग या कोड
00:07:13फिलिंग या रैपिड इटरेशन के लिए बनाया गया है। और यह नॉन-लीनियर कार्यों जैसे कोड ब्लॉक के बीच में फिलिंग
00:07:19करना या सुडोकू पहेली को सुलझाना, जिसमें सामान्य बाएं से दाएं वाले मॉडल वास्तव में काफी खराब होते हैं,
00:07:26में विशेष रूप से मजबूत है। तो यह सब आकर्षक लगता है, लेकिन आइए इसे खुद टेस्ट करें और देखें कि यह वास्तव में कैसे काम करता है।
00:07:33तो गूगल ने हगिंग फेस पर Apache 2.0 लाइसेंस के तहत वेट्स को ओपन सोर्स किया है।
00:07:38तो अगर आपके पास RTX 5090 जैसा एक शक्तिशाली जीपीयू है, तो आप इसे स्थानीय रूप से चलाने की कोशिश कर सकते हैं। और वहाँ एक
00:07:44VLLM के लिए एक विशेष रेसिपी भी है जिसे आप उस प्रक्रिया को सुव्यवस्थित करने के लिए डॉकर पर चला सकते हैं। लेकिन मैं वास्तव में यह देखने के लिए
00:07:51उत्सुक हूं कि क्या यह मॉडल वास्तव में 1000 से अधिक टोकन प्रति सेकंड तक पहुंच सकता है। तो इस टेस्ट के लिए, मैं वास्तव में कोशिश करूंगा कि
00:07:58इसे रन पॉड कंटेनर का उपयोग करके H100 जीपीयू पर चलाऊं और देखूं कि यह कैसा चलता है। और वैसे, मैंने भी
00:08:04रन पॉड पर इसे चलाने के लिए एक डिफ्यूजन जेम्मा टेम्पलेट प्रकाशित किया है। तो अगर आप इस टेस्ट को दोहराना चाहते हैं,
00:08:10तो आपको बस एक नया पॉड बनाते समय उस टेम्पलेट को रन करना है। तो रन पॉड पर यह टेस्ट करने के लिए,
00:08:15मैं H100 कंटेनर चुनूंगा। और जैसा कि मैंने पहले बताया, मैंने एक डिफ्यूजन जेम्मा
00:08:22टेम्पलेट बनाया है जिसे आप दोबारा इस्तेमाल कर सकते हैं। तो आप बस वॉल्यूम डिस्क पर क्लिक कर सकते हैं और फिर बस डिप्लॉय
00:08:28ऑन डिमांड पर क्लिक करें। और इसमें कुछ मिनट लगेंगे जब तक यह कंटेनर डाउनलोड नहीं कर लेता और सब कुछ लॉन्च नहीं कर देता।
00:08:34और अगर हम लॉग्स में जाएं, अगर आप एप्लिकेशन स्टार्टअप कंप्लीट देखते हैं, तो इसका मतलब है कि VLLM तैयार है
00:08:40और अब यह पोर्ट 8000 के माध्यम से सुलभ है। अगर हम इसे खोलते हैं, तो आप डिटेल नॉट फाउंड देखेंगे,
00:08:46लेकिन इसके बारे में चिंता न करें। इसका मतलब है कि यह वास्तव में काम कर रहा है। हमें बस इस यूआरएल को कॉपी करना है। तो
00:08:52डिफ्यूजन जेम्मा को एआई एजेंट टर्मिनल, जैसे ओपन कोड, में चलाने के लिए कॉन्फ़िगर करने हेतु, आपको
00:08:58रिमोट सर्वर तक पहुँचने के लिए अपनी ओपन कोड सेटिंग्स को कॉन्फ़िगर करना होगा। तो आप इसे इस सरल
00:09:04कमांड के साथ कर सकते हैं और यह कॉन्फ़िग फ़ाइल खोल देगा। और यहाँ, मैं बस हमारे रन पॉड सर्वर को निर्दिष्ट कर रहा हूँ और
00:09:11इसमें डिफ्यूजन जेम्मा मॉडल चुना गया है। और आप बस इस फ़ाइल को सेव कर सकते हैं और ओपन कोड शुरू कर सकते हैं।
00:09:17तो इस टेस्ट में, मैं इसे एक व्यक्तिगत वित्त ट्रैकिंग डैशबोर्ड जेनरेट करने के लिए प्रॉम्प्ट करने जा रहा हूँ जिसे “ledger” कहते हैं।
00:09:24और देखते हैं कि इसे जेनरेट करने में यह कितना तेज़ है। देखो उसे। तुरंत, यह स्ट्रीमिंग शुरू कर देता है।
00:09:34देखो यह कितना तेज़ है। बाप रे। वाह। यह पागलपन है। और यहाँ लॉग्स में,
00:09:43हम देख सकते हैं कि यह 700 टोकन प्रति सेकंड की औसत दे रहा है। तो आउटपुट चरण के लिए, यह थोड़ा गिर गया,
00:09:50लेकिन तर्क (रीजनिंग) चरण के दौरान, यह 700 टोकन प्रति सेकंड तक चला गया। यह पागलपन है। तो आइए
00:09:58इसे खोलें। ठीक है। तो यह एक डैशबोर्ड जैसा दिखता है। यह अच्छा है। ठीक है। हमें यहाँ वास्तव में कुछ श्रेणियां
00:10:06और चीजें मिल रही हैं। अगर हम यहाँ कुछ जोड़ें। ओह, यह वास्तव में इसे एक खर्च के रूप में जोड़ता है। तो
00:10:13खर्च वास्तव में अपडेट नहीं हो रहे हैं। तो यह पूरी तरह कार्यात्मक नहीं है, लेकिन कम से कम कुछ हिस्से इंटरैक्टिव हैं।
00:10:20इस अगले कार्य के लिए, देखते हैं कि क्या यह वास्तव में एक आर्केड स्टाइल गेम बना सकता है।
00:10:26तो चलिए इसे शुरू करते हैं। एक बार फिर, गति पागल कर देने वाली है। ठीक है। यह वाला थोड़ा ज्यादा समय ले रहा है।
00:10:36हमें यहाँ वास्तव में दो फ़ाइलें मिली हैं। दिलचस्प, दिलचस्प। ठीक है। तो इसने एक टाइपो देखा और फिर इसने
00:10:44एचटीएमएल फ़ाइल को फिर से प्रोसेस किया, जो काफी अच्छा है। ठीक है। सब ठीक है। चलिए इसे खोलते हैं। रीस्टार्ट।
00:10:52ओह, वाह। यह वाला यह काम कर रहा है। ओह, वाह। यह कूल है। वाह। बहुत बढ़िया। यह प्रभावशाली है। तो गेम
00:11:03पूरी तरह कार्यात्मक है और इस गेम को जेनरेट करने में 14 सेकंड का समय लगा। इस तरह का गेम जेनरेट करने में 14 सेकंड।
00:11:11तो हालाँकि उनके मार्केटिंग पेज ने कहा था कि हम H
00:11:18100 पर एक हजार टोकन प्रति सेकंड की गति की उम्मीद कर सकते हैं। यह मेरा अवलोकन नहीं था। उम, मुझे नहीं पता। शायद कुछ ऐसा है जिसे मुझे
00:11:26टेम्पलेट में या अपने प्रॉम्प्ट में ट्विक करना चाहिए, लेकिन फिर भी, मैं वास्तव में प्रभावित हूँ। यह एक जानवर है। तो लीजिए,
00:11:33दोस्तों। वह डिफ्यूजन जेम्मा संक्षेप में है। मुझे लगता है कि यह साल के सबसे दिलचस्प रिलीज में से एक
00:11:38है क्योंकि यह साबित करता है कि आप इमेज की दुनिया से पूरी तरह से अलग जेनरेशन प्रतिमान ले सकते हैं,
00:11:44इसे किसी ऐसे मॉडल पर लगा सकते हैं जिसे आपने पहले ही ट्रेन किया है और एकल स्थानीय यूजर
00:11:51सेटअप के लिए वास्तविक गति लाभ अनलॉक कर सकते हैं। और मुझे लगता है कि यह तेज़ इंटरैक्टिव स्थानीय मॉडल्स के एक पूरे नए परिवार के लिए दरवाजा खोलता है
00:11:58जो आपके हार्डवेयर को खाली बैठाने के बजाय उसकी पूरी क्षमता का उपयोग करता है। तो आप क्या सोचते हैं
00:12:04डिफ्यूजन जेम्मा के बारे में? क्या आपने इसे आज़माया है? क्या आप इसका इस्तेमाल करेंगे? हमें नीचे कमेंट सेक्शन में बताएं।
00:12:09और दोस्तों, अगर आपको इस प्रकार के तकनीकी विश्लेषण पसंद हैं, तो कृपया मुझे वीडियो के नीचे
00:12:14उस लाइक बटन को दबाकर बताएं। और हमारे चैनल को सब्सक्राइब करना न भूलें। यह थे
00:12:19बेटरस्टैक से एंड्रस और मैं आपको अगले वीडियो में देखूंगा।
Community Posts
No posts yet. Be the first to write about this video!
Write about this video