Gemini के कई मॉडल में, 10 लाख या उससे ज़्यादा टोकन वाली बड़ी कॉन्टेक्स्ट विंडो होती हैं. पहले, लार्ज लैंग्वेज मॉडल (एलएलएम) में एक बार में सीमित मात्रा में टेक्स्ट (या टोकन) प्रोसेस करने की क्षमता होती थी. Gemini की लंबी कॉन्टेक्स्ट विंडो की मदद से, डेवलपर के लिए इस्तेमाल के कई नए उदाहरण और नए पैराडाइम उपलब्ध होते हैं.
टेक्स्ट जनरेट करने या मल्टीमोडल इनपुट जैसे मामलों के लिए, पहले से इस्तेमाल किया जा रहा कोड, लंबी कॉन्टेक्स्ट विंडो के साथ बिना किसी बदलाव के काम करेगा.
इस दस्तावेज़ में, 10 लाख या उससे ज़्यादा टोकन वाली कॉन्टेक्स्ट विंडो वाले मॉडल का इस्तेमाल करके, हासिल किए जा सकने वाले नतीजों की खास जानकारी दी गई है. इस पेज पर, कॉन्टेक्स्ट विंडो की खास जानकारी दी गई है. साथ ही, यह भी बताया गया है कि डेवलपर को लंबी कॉन्टेक्स्ट विंडो के बारे में कैसे सोचना चाहिए. इसमें लंबी कॉन्टेक्स्ट विंडो के इस्तेमाल के अलग-अलग उदाहरण और लंबी कॉन्टेक्स्ट विंडो के इस्तेमाल को ऑप्टिमाइज़ करने के तरीके भी बताए गए हैं.
अलग-अलग मॉडल की कॉन्टेक्स्ट विंडो के साइज़ के बारे में जानने के लिए, मॉडल पेज देखें.
कॉन्टेक्स्ट विंडो क्या होती है?
Gemini मॉडल का इस्तेमाल करने का बुनियादी तरीका यह है कि मॉडल को जानकारी (कॉन्टेक्स्ट) दी जाए. इसके बाद, मॉडल जवाब जनरेट करेगा. कॉन्टेक्स्ट विंडो की तुलना, शॉर्ट टर्म मेमोरी से की जा सकती है. किसी व्यक्ति की शॉर्ट टर्म मेमोरी में सीमित मात्रा में जानकारी सेव की जा सकती है. जनरेटिव मॉडल के लिए भी यही बात लागू होती है.
जनरेटिव मॉडल गाइड में जाकर, मॉडल के काम करने के तरीके के बारे में ज़्यादा जानें.
लंबी कॉन्टेक्स्ट विंडो का इस्तेमाल शुरू करना
जनरेटिव मॉडल के पुराने वर्शन, एक बार में सिर्फ़ 8,000 टोकन प्रोसेस कर पाते थे. नए मॉडल, 32,000 या 1,28,000 टोकन प्रोसेस कर सकते हैं. Gemini, 10 लाख टोकन प्रोसेस करने वाला पहला मॉडल है.
असल में, 10 लाख टोकन कुछ इस तरह दिखेंगे:
- कोड की 50,000 लाइनें (हर लाइन में 80 वर्णों के हिसाब से)
- पिछले पांच सालों में भेजे गए सभी टेक्स्ट मैसेज
- अंग्रेज़ी के आठ नॉवेल, जिनकी लंबाई औसत हो
- औसत लंबाई वाले 200 से ज़्यादा पॉडकास्ट एपिसोड के ट्रांसक्रिप्ट
कई अन्य मॉडल में, कॉन्टेक्स्ट विंडो की सीमा कम होती है. इसलिए, टोकन सेव करने के लिए, पुरानी चैट को हटाना, कॉन्टेंट की खास जानकारी पाना, वेक्टर डेटाबेस के साथ आरएजी का इस्तेमाल करना या प्रॉम्प्ट फ़िल्टर करना जैसी रणनीतियां अपनानी पड़ती हैं.
हालांकि, कुछ खास मामलों में ये तकनीकें काम की साबित होती हैं. वहीं, Gemini की लंबी कॉन्टेक्स्ट विंडो की मदद से, सीधे तौर पर काम किया जा सकता है. इसके लिए, सभी काम की जानकारी पहले से ही उपलब्ध कराई जा सकती है. Gemini मॉडल को खास तौर पर, बड़ी कॉन्टेक्स्ट विंडो के साथ काम करने के लिए बनाया गया है. इसलिए, ये मॉडल कॉन्टेक्स्ट के हिसाब से बेहतर तरीके से सीखते हैं. उदाहरण के लिए, Gemini ने सिर्फ़ कॉन्टेक्स्ट के हिसाब से निर्देश देने वाले मटीरियल (500 पेज की रेफ़रंस ग्रामर, एक डिक्शनरी, और ≈400 मिलते-जुलते वाक्य) का इस्तेमाल करके, अंग्रेज़ी से कलामांग में अनुवाद करना सीखा . कलामांग, पापुआ की एक भाषा है, जिसे 200 से भी कम लोग बोलते हैं . Gemini ने उसी क्वालिटी के साथ अनुवाद किया, जिस क्वालिटी के साथ कोई व्यक्ति इन मटीरियल का इस्तेमाल करके अनुवाद कर सकता है . इससे पता चलता है कि Gemini की लंबी कॉन्टेक्स्ट विंडो की मदद से, पैराडाइम में बदलाव किया जा सकता है. साथ ही, कॉन्टेक्स्ट के हिसाब से बेहतर तरीके से सीखने की सुविधा की मदद से, नई संभावनाएं मिलती हैं.
लंबी कॉन्टेक्स्ट विंडो के इस्तेमाल के उदाहरण
ज़्यादातर जनरेटिव मॉडल के लिए, टेक्स्ट इनपुट का इस्तेमाल अब भी सामान्य है. हालांकि, Gemini मॉडल फ़ैमिली की मदद से, मल्टीमोडल इस्तेमाल के नए उदाहरण मिलते हैं. ये मॉडल, टेक्स्ट, वीडियो, ऑडियो, और इमेज को आसानी से समझ सकते हैं. इनके साथ, Gemini API भी उपलब्ध है. इसमें मल्टीमोडल फ़ाइल टाइप इस्तेमाल किए जा सकते हैं.
लंबा टेक्स्ट
टेक्स्ट, एलएलएम के इस्तेमाल को बढ़ावा देने में अहम साबित हुआ है. जैसा कि पहले बताया गया है, एलएलएम के इस्तेमाल की सीमा, कॉन्टेक्स्ट विंडो की सीमित क्षमता की वजह से थी. इसकी वजह से, एलएलएम कुछ खास काम नहीं कर पाते थे. इस वजह से, रिट्रीवल ऑगमेंटेड जनरेशन (आरएजी) और अन्य तकनीकों का इस्तेमाल तेज़ी से बढ़ा. इनकी मदद से, मॉडल को कॉन्टेक्स्ट के हिसाब से काम की जानकारी मिलती है. अब, बड़ी कॉन्टेक्स्ट विंडो की मदद से, नई तकनीकें उपलब्ध हो रही हैं. इससे इस्तेमाल के नए उदाहरण मिलते हैं.
टेक्स्ट पर आधारित लंबी कॉन्टेक्स्ट विंडो के इस्तेमाल के कुछ नए और सामान्य उदाहरण:
- टेक्स्ट के बड़े कॉर्पस की खास जानकारी पाना
- कॉन्टेक्स्ट विंडो की सीमित क्षमता वाले मॉडल की मदद से, खास जानकारी पाने के लिए, स्लाइडिंग विंडो या किसी अन्य तकनीक का इस्तेमाल करना पड़ता था. इससे मॉडल को नए टोकन मिलने पर, पिछले सेक्शन की जानकारी सेव रहती थी
- सवाल और जवाब
- पहले, यह सिर्फ़ आरएजी की मदद से मुमकिन था. इसकी वजह यह थी कि कॉन्टेक्स्ट की सीमित क्षमता और मॉडल की जानकारी याद रखने की क्षमता कम थी
- एजेंटिक वर्कफ़्लो
- एजेंट, टेक्स्ट की मदद से यह जानकारी सेव रखते हैं कि उन्होंने क्या किया है और उन्हें क्या करना है. दुनिया और एजेंट के लक्ष्य के बारे में पूरी जानकारी न होने की वजह से, एजेंट की परफ़ॉर्मेंस पर असर पड़ता है
मेनी-शॉट इन-कॉन्टेक्स्ट लर्निंग, लंबी कॉन्टेक्स्ट विंडो वाले मॉडल की सबसे खास क्षमताओं में से एक है. रिसर्च से पता चला है कि "सिंगल शॉट" या "मल्टी-शॉट" उदाहरण पैराडाइम का इस्तेमाल करने से, मॉडल की नई क्षमताएं मिल सकती हैं. इसमें मॉडल को किसी टास्क के एक या कुछ उदाहरण दिखाए जाते हैं. अगर उदाहरणों की संख्या बढ़ाकर सैकड़ों, हज़ारों या लाखों कर दी जाए, तो मॉडल की नई क्षमताएं मिल सकती हैं. यह भी पता चला है कि मेनी-शॉट अप्रोच, किसी खास टास्क के लिए फ़ाइन-ट्यून किए गए मॉडल की तरह ही परफ़ॉर्म करता है. अगर Gemini मॉडल की परफ़ॉर्मेंस, प्रोडक्शन रोलआउट के लिए अब तक बेहतर नहीं है, तो मेनी-शॉट अप्रोच आज़माया जा सकता है. लंबी कॉन्टेक्स्ट विंडो को ऑप्टिमाइज़ करने वाले सेक्शन में, आपको कॉन्टेक्स्ट कैशिंग के बारे में पता चलेगा. इससे, ज़्यादा इनपुट टोकन वाले वर्कलोड को कम लागत में मैनेज किया जा सकता है. साथ ही, कुछ मामलों में इंतज़ार का समय भी कम हो जाता है.
लंबी अवधि के वीडियो
वीडियो कॉन्टेंट का इस्तेमाल, लंबे समय से सीमित रहा है. इसकी वजह यह है कि वीडियो को ऐक्सेस करने की सुविधा सीमित है. वीडियो के कॉन्टेंट को सरसरी तौर पर देखना मुश्किल था. ट्रांसक्रिप्ट में, वीडियो के कॉन्टेंट की बारीकियां अक्सर कैप्चर नहीं हो पाती थीं. साथ ही, ज़्यादातर टूल, इमेज, टेक्स्ट, और ऑडियो को एक साथ प्रोसेस नहीं करते थे. Gemini की लंबी कॉन्टेक्स्ट विंडो की मदद से, टेक्स्ट को प्रोसेस करने की क्षमता मिलती है. इससे, मल्टीमोडल इनपुट के बारे में तर्क दिया जा सकता है और सवालों के जवाब दिए जा सकते हैं. साथ ही, परफ़ॉर्मेंस को बेहतर बनाए रखा जा सकता है.
वीडियो के लिए लंबी कॉन्टेक्स्ट विंडो के इस्तेमाल के कुछ नए और सामान्य उदाहरण:
- वीडियो से जुड़े सवाल और जवाब
- वीडियो मेमोरी, जैसा कि Google's Project Astra में दिखाया गया है
- वीडियो में कैप्शन जोड़ना
- वीडियो के सुझाव देने वाले सिस्टम. इसके लिए, मौजूदा मेटाडेटा में मल्टीमोडल की नई जानकारी जोड़ना
- वीडियो को पसंद के मुताबिक बनाना. इसके लिए, डेटा के कॉर्पस और उससे जुड़े वीडियो मेटाडेटा को देखना. इसके बाद, वीडियो के उन हिस्सों को हटाना जो दर्शकों के लिए काम के नहीं हैं
- वीडियो कॉन्टेंट को मॉडरेट करना
- वीडियो को रीयल-टाइम में प्रोसेस करना
वीडियो के साथ काम करते समय, यह जानना ज़रूरी है कि वीडियो को टोकन में कैसे प्रोसेस किया जाता है. इससे बिलिंग और इस्तेमाल की सीमाओं पर असर पड़ता है. प्रॉम्प्टिंग गाइड में जाकर, वीडियो फ़ाइलों के साथ प्रॉम्प्टिंग के बारे में ज़्यादा जानें.
लंबी अवधि के ऑडियो
Gemini मॉडल, पहले ऐसे लार्ज लैंग्वेज मॉडल हैं जो ऑडियो को आसानी से समझ सकते हैं. पहले, डेवलपर वर्कफ़्लो में, ऑडियो को प्रोसेस करने के लिए, अलग-अलग डोमेन के मॉडल को एक साथ इस्तेमाल करना पड़ता था. जैसे, स्पीच-टू-टेक्स्ट मॉडल और टेक्स्ट-टू-टेक्स्ट मॉडल. इससे, राउंड-ट्रिप के कई अनुरोध करने की वजह से, इंतज़ार का समय बढ़ जाता था. साथ ही, परफ़ॉर्मेंस कम हो जाती थी. इसकी वजह यह थी कि कई मॉडल सेटअप के आर्किटेक्चर अलग-अलग होते थे.
ऑडियो कॉन्टेक्स्ट के इस्तेमाल के कुछ नए और सामान्य उदाहरण:
- बोले जा रहे शब्दों को रीयल-टाइम में टेक्स्ट में बदलने और अनुवाद की सुविधा
- पॉडकास्ट / वीडियो से जुड़े सवाल और जवाब
- मीटिंग में बोले जा रहे शब्दों को टेक्स्ट में बदलने की सुविधा और खास जानकारी
- वॉइस असिस्टेंट
प्रॉम्प्टिंग गाइड में जाकर, ऑडियो फ़ाइलों के साथ प्रॉम्प्टिंग के बारे में ज़्यादा जानें.
लंबी कॉन्टेक्स्ट विंडो को ऑप्टिमाइज़ करना
लंबी कॉन्टेक्स्ट विंडो और Gemini मॉडल के साथ काम करते समय, ऑप्टिमाइज़ेशन का मुख्य तरीका है कॉन्टेक्स्ट कैशिंग का इस्तेमाल करना. पहले, एक ही अनुरोध में ज़्यादा टोकन प्रोसेस करना मुमकिन नहीं था. इसके अलावा, लागत भी एक बड़ी समस्या थी. अगर आपके पास "अपने डेटा के साथ चैट करें" ऐप्लिकेशन है, जिसमें कोई उपयोगकर्ता 10 पीडीएफ़, एक वीडियो, और काम से जुड़े कुछ दस्तावेज़ अपलोड करता है, तो इन अनुरोधों को प्रोसेस करने के लिए, आपको रिट्रीवल ऑगमेंटेड जनरेशन (आरएजी) के ज़्यादा जटिल टूल / फ़्रेमवर्क का इस्तेमाल करना पड़ता था. साथ ही, कॉन्टेक्स्ट विंडो में ले जाए गए टोकन के लिए, ज़्यादा पैसे चुकाने पड़ते थे. अब, उपयोगकर्ता की अपलोड की गई फ़ाइलों को कैश किया जा सकता है और उन्हें हर घंटे के हिसाब से सेव करने के लिए पैसे चुकाए जा सकते हैं. उदाहरण के लिए, Gemini Flash के साथ, हर अनुरोध के लिए इनपुट / आउटपुट की लागत, स्टैंडर्ड इनपुट / आउटपुट लागत से ~4 गुना कम है. इसलिए, अगर उपयोगकर्ता अपने डेटा के साथ ज़्यादा चैट करता है, तो डेवलपर के तौर पर आपके लिए यह लागत में बड़ी बचत साबित हो सकती है.
लंबी कॉन्टेक्स्ट विंडो की सीमाएं
इस गाइड के अलग-अलग सेक्शन में, हमने बताया है कि Gemini मॉडल, "भूसे के ढेर में सुई ढूंढने" जैसे मुश्किल टास्क को भी बेहतर तरीके से कैसे पूरा करते हैं. इन टेस्ट में, सबसे बुनियादी सेटअप को ध्यान में रखा जाता है. इसमें आपको सिर्फ़ एक "सुई" ढूंढनी होती है. अगर आपको एक से ज़्यादा "सुई" या जानकारी के खास हिस्से ढूंढने हैं, तो मॉडल उतनी सटीक परफ़ॉर्मेंस नहीं देता. कॉन्टेक्स्ट के हिसाब से, परफ़ॉर्मेंस में काफ़ी अंतर आ सकता है. यह जानना ज़रूरी है, क्योंकि सही जानकारी पाने और लागत के बीच एक समझौता होता है. एक क्वेरी पर, आपको ~99% सटीक नतीजे मिल सकते हैं. हालांकि, उस क्वेरी को भेजने पर, आपको हर बार इनपुट टोकन की लागत चुकानी होगी. इसलिए, अगर आपको 100 तरह की जानकारी चाहिए और आपको 99% सटीक नतीजे चाहिए, तो आपको 100 अनुरोध भेजने होंगे. यह एक अच्छा उदाहरण है कि कॉन्टेक्स्ट कैशिंग की मदद से, Gemini मॉडल के इस्तेमाल से जुड़ी लागत को कैसे कम किया जा सकता है. साथ ही, परफ़ॉर्मेंस को बेहतर बनाए रखा जा सकता है.
अक्सर पूछे जाने वाले सवाल
कॉन्टेक्स्ट विंडो में, अपनी क्वेरी कहां डालनी चाहिए?
ज़्यादातर मामलों में, मॉडल की परफ़ॉर्मेंस बेहतर होगी. खास तौर पर, अगर कुल कॉन्टेक्स्ट लंबा है, तो अपनी क्वेरी / सवाल को प्रॉम्प्ट के आखिर में (अन्य सभी कॉन्टेक्स्ट के बाद) डालें.
किसी क्वेरी में ज़्यादा टोकन जोड़ने पर, क्या मॉडल की परफ़ॉर्मेंस कम हो जाती है?
आम तौर पर, अगर मॉडल को टोकन पास करने की ज़रूरत नहीं है, तो उन्हें पास न करना ही बेहतर है. हालांकि, अगर आपके पास कुछ जानकारी वाले टोकन का बड़ा हिस्सा है और आपको उस जानकारी के बारे में सवाल पूछने हैं, तो मॉडल उस जानकारी को निकालने में सक्षम है. ज़्यादातर मामलों में, यह 99% सटीक नतीजे देता है.
लंबी कॉन्टेक्स्ट विंडो वाली क्वेरी की लागत कैसे कम की जा सकती है?
अगर आपके पास टोकन / कॉन्टेक्स्ट का ऐसा सेट है जिसे आपको कई बार इस्तेमाल करना है, तो कॉन्टेक्स्ट कैशिंग की मदद से, उस जानकारी के बारे में सवाल पूछने से जुड़ी लागत को कम किया जा सकता है.
क्या कॉन्टेक्स्ट की लंबाई का असर, मॉडल के इंतज़ार के समय पर पड़ता है?
किसी भी अनुरोध में, इंतज़ार का समय तय होता है. हालांकि, आम तौर पर लंबी क्वेरी में, इंतज़ार का समय ज़्यादा होता है (पहले टोकन के लिए लगने वाला समय).