Gemini मॉडल के लिए टोकन की संख्या गिनना

Gemini मॉडल, इनपुट और आउटपुट को टोकन नाम की इकाइयों में प्रोसेस करते हैं.

टोकन, z जैसे सिंगल वर्ण या cat जैसे पूरे शब्द हो सकते हैं. लंबे शब्दों को कई टोकन में बांटा जाता है. मॉडल में इस्तेमाल किए गए सभी टोकन के सेट को शब्दावली कहा जाता है. साथ ही, टेक्स्ट को टोकन में बांटने की प्रोसेस को टोकनाइज़ेशन कहा जाता है.

Gemini मॉडल के लिए, एक टोकन करीब चार वर्णों के बराबर होता है. 100 टोकन, अंग्रेज़ी के करीब 60 से 80 शब्दों के बराबर होते हैं.

हर मॉडल के लिए, टोकन की ज़्यादा से ज़्यादा संख्या तय होती है. यह संख्या, प्रॉम्प्ट और जवाब में इस्तेमाल किए जा सकने वाले टोकन की संख्या होती है. अपने प्रॉम्प्ट में टोकन की संख्या जानने से, आपको यह पता चलता है कि आपने इस सीमा को पार कर लिया है या नहीं. इसके अलावा, किसी अनुरोध की लागत कुछ हद तक इनपुट और आउटपुट टोकन की संख्या से तय होती है. इसलिए, टोकन की गिनती करने का तरीका जानना मददगार हो सकता है.

ध्यान दें कि Gemini 1.0 और 1.5 मॉडल में भी "बिल किए जाने वाले वर्णों" की संख्या और कीमत की जानकारी दी जाती थी. हालांकि, ये मॉडल अब इस्तेमाल नहीं किए जा सकते या जल्द ही बंद हो जाएंगे. इसलिए, इस पेज पर बिल किए जाने वाले वर्णों के बारे में कोई जानकारी नहीं दी गई है.

इन मॉडल के साथ काम करता है

  • gemini-2.5-pro
  • gemini-2.5-flash
  • gemini-2.5-flash-lite
  • gemini-2.0-flash-001 (और इसका अपने-आप अपडेट होने वाला उपनाम gemini-2.0-flash)
  • gemini-2.0-flash-lite-001 (और इसका अपने-आप अपडेट होने वाला उपनाम gemini-2.0-flash-lite)
  • gemini-2.0-flash-preview-image-generation

टोकन की गिनती करने के विकल्प

Gemini API के लिए सभी इनपुट और आउटपुट को टोकन में बदला जाता है. इनमें टेक्स्ट, इमेज फ़ाइलें, और बिना टेक्स्ट वाले अन्य मोडेलिटी शामिल हैं. टोकन गिनने के ये विकल्प उपलब्ध हैं:

सिर्फ़ अनुरोधों के लिए टोकन की संख्या देखें. ऐसा मॉडल को अनुरोध भेजने से पहले करें.
अनुरोध को मॉडल को भेजने countTokens से पहले, अनुरोध के इनपुट के साथ कॉल करें. इससे यह नतीजा मिलता है:
  • total_tokens: सिर्फ़ इनपुट के टोकन की संख्या
आपके अनुरोधों और जवाबों, दोनों के लिए टोकन की संख्या देखें.
जवाब वाले ऑब्जेक्ट पर usageMetadata एट्रिब्यूट का इस्तेमाल करें. इसमें ये शामिल हैं:
  • prompt_token_count: सिर्फ़ इनपुट के टोकन की संख्या
  • candidates_token_count: सिर्फ़ आउटपुट के टोकन की संख्या (इसमें थिंकिंग टोकन शामिल नहीं हैं)
  • thoughts_token_count: जवाब जनरेट करने के लिए इस्तेमाल किए गए किसी भी थिंकिंग टोकन की संख्या
  • total_token_count: इनपुट और आउटपुट, दोनों के लिए टोकन की कुल संख्या (इसमें थिंकिंग टोकन भी शामिल हैं)

स्ट्रीम किए जा रहे आउटपुट में, usageMetadata एट्रिब्यूट सिर्फ़ स्ट्रीम के आखिरी हिस्से में दिखता है. यह nil इंटरमीडिएट चंक के लिए है.

ऊपर दिए गए विकल्पों के बारे में इन बातों का ध्यान रखें:

  • वे इनपुट इमेज की संख्या या वीडियो या ऑडियो इनपुट फ़ाइलों में सेकंड की संख्या को नहीं गिनेंगे. हालांकि, इन सभी मोडैलिटी के लिए टोकन की संख्या, इन वैल्यू से जुड़ी होगी.
  • इनपुट टोकन की संख्या में, प्रॉम्प्ट (टेक्स्ट और कोई भी इनपुट फ़ाइल) के साथ-साथ सिस्टम के निर्देश और टूल शामिल होते हैं.
  • आउटपुट टोकन की संख्या में, सोचने के लिए इस्तेमाल किए गए टोकन शामिल नहीं होते. ये टोकन, अलग फ़ील्ड में दिए जाते हैं.
  • इस पेज पर बाद में, हर तरह के अनुरोध के हिसाब से अतिरिक्त जानकारी देखें.

इन विकल्पों के लिए कीमत

  • countTokens को कॉल करना: countTokens (Count Tokens API) को कॉल करने के लिए कोई शुल्क नहीं लिया जाता. Count Tokens API के लिए, ज़्यादा से ज़्यादा कोटा 3,000 अनुरोध प्रति मिनट (आरपीएम) है.

  • usageMetadata एट्रिब्यूट का इस्तेमाल करना: यह एट्रिब्यूट हमेशा जवाब के तौर पर मिलता है. इसके लिए, न तो कोई टोकन खर्च होता है और न ही कोई शुल्क लगता है.

ज़्यादा जानकारी

यहां कुछ खास तरह के अनुरोधों के बारे में ज़्यादा जानकारी दी गई है.

टेक्स्ट इनपुट टोकन की गिनती करना

कोई अतिरिक्त जानकारी नहीं है.

मल्टी-टर्न (चैट) वाले टोकन की गिनती करना

चैट की सुविधा का इस्तेमाल करते समय, countTokens पर कॉल करने के लिए इन बातों का ध्यान रखें:

  • अगर चैट के इतिहास के साथ countTokens को कॉल किया जाता है, तो यह चैट (total_tokens) में दोनों भूमिकाओं के कुल टोकन की संख्या दिखाता है.
  • बातचीत के अगले मोड़ के बारे में जानने के लिए, आपको countTokens को कॉल करते समय, इसे इतिहास में जोड़ना होगा.

मल्टीमोडल इनपुट टोकन की गिनती करना

मल्टीमॉडल इनपुट के साथ टोकन की गिनती करने के बारे में इन बातों का ध्यान रखें:

  • आपके पास टेक्स्ट और फ़ाइल, दोनों के लिए countTokens को अलग-अलग कॉल करने का विकल्प होता है.
  • टोकन की गिनती करने के दोनों विकल्पों के लिए, आपको टोकन की संख्या एक जैसी मिलेगी. भले ही, आपने फ़ाइल को इनलाइन डेटा के तौर पर दिया हो या उसके यूआरएल का इस्तेमाल किया हो.

इमेज इनपुट फ़ाइलें

इमेज इनपुट फ़ाइलों को उनके डाइमेंशन के आधार पर टोकन में बदला जाता है:

  • ऐसे इमेज इनपुट जिनके दोनों डाइमेंशन 384 पिक्सल के बराबर या उससे कम हैं: हर इमेज को 258 टोकन के तौर पर गिना जाता है.
  • एक या दोनों डाइमेंशन में बड़ी इमेज इनपुट: हर इमेज को ज़रूरत के हिसाब से 768x768 पिक्सल की टाइलों में काटा और स्केल किया जाता है. इसके बाद, हर टाइल को 258 टोकन के तौर पर गिना जाता है.

वीडियो और ऑडियो इनपुट फ़ाइलें

वीडियो और ऑडियो इनपुट फ़ाइलों को टोकन में बदलने की दरें यहां दी गई हैं:

  • वीडियो: 263 टोकन प्रति सेकंड
  • ऑडियो: 32 टोकन प्रति सेकंड

दस्तावेज़ (जैसे, PDF) इनपुट फ़ाइलें

PDF इनपुट फ़ाइलों को इमेज माना जाता है. इसलिए, PDF के हर पेज को इमेज की तरह टोकन में बदला जाता है.