आम तौर पर, एआई वर्कफ़्लो में किसी मॉडल को एक ही इनपुट टोकन बार-बार पास किया जा सकता है. Gemini API के कॉन्टेक्स्ट को कैश मेमोरी में सेव करने की सुविधा का इस्तेमाल करके, मॉडल को कुछ कॉन्टेंट एक बार पास किया जा सकता है. इसके बाद, इनपुट टोकन को कैश मेमोरी में सेव किया जा सकता है. इसके बाद, अगले अनुरोधों के लिए, कैश मेमोरी में सेव किए गए टोकन का रेफ़रंस दिया जा सकता है. कुछ मामलों में, कैश मेमोरी में सेव किए गए टोकन का इस्तेमाल करना, टोकन के एक ही कॉर्पस को बार-बार पास करने की तुलना में कम लागत का होता है.
जब टोकन के किसी सेट को कैश मेमोरी में सेव किया जाता है, तो आपके पास यह चुनने का विकल्प होता है कि टोकन अपने-आप मिटने से पहले, उसे कितनी देर तक सेव रखना है. कैश मेमोरी में सेव होने की इस अवधि को टाइम टू लाइव (टीटीएल) कहा जाता है. अगर यह सेट नहीं किया जाता है, तो टीटीएल डिफ़ॉल्ट रूप से एक घंटे पर सेट हो जाता है. कैश मेमोरी में सेव करने की लागत, इनपुट टोकन के साइज़ और टोकन को सेव रखने की अवधि पर निर्भर करती है.
कॉन्टेक्स्ट कैश मेमोरी, Gemini 1.5 Pro और Gemini 1.5 Flash, दोनों के साथ काम करती है.
कॉन्टेक्स्ट कैश मेमोरी का इस्तेमाल कब करना चाहिए
कॉन्टेक्स्ट कैश मेमोरी का इस्तेमाल उन मामलों में खास तौर पर किया जाता है जहां छोटे अनुरोधों के ज़रिए, शुरुआती कॉन्टेक्स्ट का बार-बार रेफ़रंस दिया जाता है. इस्तेमाल के उदाहरणों के लिए, कॉन्टेक्स्ट कैश मेमोरी का इस्तेमाल करें. जैसे:
- सिस्टम से जुड़े दिशा-निर्देशों वाले चैटबॉट
- लंबी वीडियो फ़ाइलों का बार-बार विश्लेषण
- बड़े दस्तावेज़ सेट के लिए बार-बार की जाने वाली क्वेरी
- कोड को स्टोर करने की नियमित तौर पर जांच करना या गड़बड़ियां ठीक करना
कैश मेमोरी में सेव करने से लागत कैसे कम होती है
कॉन्टेक्स्ट कैश मेमोरी में सेव करने की सुविधा, पैसे चुकाकर ली जाने वाली सुविधा है. इसे ऑपरेशन से जुड़ी कुल लागत को कम करने के लिए डिज़ाइन किया गया है. बिलिंग इन बातों के आधार पर तय की जाती है:
- कैश टोकन की संख्या: कैश मेमोरी में सेव किए गए इनपुट टोकन की संख्या. इन टोकन को अगले प्रॉम्प्ट में शामिल करने पर, कम दर पर बिल भेजा जाता है.
- स्टोरेज की अवधि: कैश मेमोरी में सेव किए गए टोकन के सेव होने की अवधि (टीटीएल), कैश मेमोरी में सेव किए गए टोकन की संख्या के लिए टीटीएल अवधि के हिसाब से बिल की जाती है. टीटीएल के लिए, कम से कम या ज़्यादा से ज़्यादा सीमा तय नहीं की गई है.
- अन्य बातें: अन्य शुल्क लागू होते हैं, जैसे कि कैश नहीं किए गए इनपुट टोकन और आउटपुट टोकन.
कीमतों की अप-टू-डेट जानकारी के लिए, Gemini API का कीमत वाला पेज देखें. टोकन की गिनती करने का तरीका जानने के लिए, टोकन गाइड देखें.
कॉन्टेक्स्ट कैशिंग की सुविधा इस्तेमाल करने का तरीका
इस सेक्शन में मान लिया गया है कि आपने Gemini SDK टूल इंस्टॉल किया है (या कर्ल इंस्टॉल किया है) और आपने एपीआई पासकोड कॉन्फ़िगर किया है, जैसा कि क्विकस्टार्ट में दिखाया गया है.
ज़रूरी बातें
कॉन्टेक्स्ट कैश मेमोरी का इस्तेमाल करते समय इन बातों का ध्यान रखें:
- कॉन्टेक्स्ट कैश मेमोरी के लिए कम से कम इनपुट टोकन की संख्या 32,768 है और ज़्यादा से ज़्यादा, दिए गए मॉडल की ज़्यादा से ज़्यादा संख्या के बराबर है. (टोकन की गिनती करने के बारे में ज़्यादा जानने के लिए, टोकन गाइड देखें).
- यह मॉडल, कैश मेमोरी में सेव किए गए टोकन और सामान्य इनपुट टोकन के बीच कोई फ़र्क़ नहीं करता. कैश मेमोरी में सेव किया गया कॉन्टेंट, प्रॉम्प्ट का सिर्फ़ एक प्रीफ़िक्स होता है.
- कॉन्टेक्स्ट कैश मेमोरी पर, दर या इस्तेमाल की कोई खास सीमा नहीं होती.
GenerateContent
के लिए, स्टैंडर्ड दर की सीमाएं लागू होती हैं. साथ ही, टोकन की सीमाओं में कैश मेमोरी में सेव किए गए टोकन भी शामिल होते हैं. - कैश मेमोरी में सेव किए गए टोकन की संख्या,
usage_metadata
में कैश मेमोरी की सेवा बनाने, पाने, और उसकी सूची बनाने से दिखती है. कैश मेमोरी का इस्तेमाल करते समय, यह संख्याGenerateContent
में भी दिखती है.