Models

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

तरीका: models.get

यह किसी खास Model के बारे में जानकारी देता है. जैसे, वर्शन नंबर, टोकन की सीमाएं, पैरामीटर, और अन्य मेटाडेटा. मॉडल के बारे में ज़्यादा जानकारी के लिए, Gemini मॉडल की गाइड देखें.

एंडपॉइंट

get https://generativelanguage.googleapis.com/v1beta/{name=models/*}

पाथ पैरामीटर

name string

ज़रूरी है. मॉडल के संसाधन का नाम.

यह नाम, models.list तरीके से मिले मॉडल के नाम से मेल खाना चाहिए.

फ़ॉर्मैट: models/{model} यह models/{model} के फ़ॉर्म में होता है.

अनुरोध का मुख्य भाग

अनुरोध का मुख्य हिस्सा खाली होना चाहिए.

अनुरोध का उदाहरण

Python

from google import genai

client = genai.Client()
model_info = client.models.get(model="gemini-2.0-flash")
print(model_info)

शुरू करें

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}

modelInfo, err := client.Models.Get(ctx, "gemini-2.0-flash", nil)
if err != nil {
	log.Fatal(err)
}

fmt.Println(modelInfo)

शेल

curl https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash?key=$GEMINI_API_KEY

जवाब का मुख्य भाग

कामयाब रहने पर, जवाब के मुख्य हिस्से में Model का एक इंस्टेंस शामिल किया जाता है.

तरीका: models.list

Gemini API के ज़रिए उपलब्ध Models की सूची दिखाता है.

एंडपॉइंट

get https://generativelanguage.googleapis.com/v1beta/models

क्वेरी पैरामीटर

pageSize integer

हर पेज पर, ज़्यादा से ज़्यादा Models आइटम दिखाए जा सकते हैं.

अगर इसे तय नहीं किया गया है, तो हर पेज पर 50 मॉडल दिखेंगे. इस तरीके से, हर पेज पर ज़्यादा से ज़्यादा 1,000 मॉडल दिखते हैं. भले ही, आपने pageSize की ज़्यादा वैल्यू पास की हो.

pageToken string

यह एक पेज टोकन है, जो पिछले models.list कॉल से मिला था.

अगले पेज को वापस पाने के लिए, एक अनुरोध से मिले pageToken को अगले अनुरोध के लिए आर्ग्युमेंट के तौर पर दें.

पेज नंबर के हिसाब से नतीजे दिखाने के दौरान, models.list को दिए गए अन्य सभी पैरामीटर, पेज टोकन देने वाले कॉल से मेल खाने चाहिए.

अनुरोध का मुख्य भाग

अनुरोध का मुख्य हिस्सा खाली होना चाहिए.

अनुरोध का उदाहरण

Python

from google import genai

client = genai.Client()

print("List of models that support generateContent:\n")
for m in client.models.list():
    for action in m.supported_actions:
        if action == "generateContent":
            print(m.name)

print("List of models that support embedContent:\n")
for m in client.models.list():
    for action in m.supported_actions:
        if action == "embedContent":
            print(m.name)

शुरू करें

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}


// Retrieve the list of models.
models, err := client.Models.List(ctx, &genai.ListModelsConfig{})
if err != nil {
	log.Fatal(err)
}

fmt.Println("List of models that support generateContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "generateContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

fmt.Println("\nList of models that support embedContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "embedContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

शेल

curl https://generativelanguage.googleapis.com/v1beta/models?key=$GEMINI_API_KEY

जवाब का मुख्य भाग

ListModel से मिला जवाब, जिसमें मॉडल की पेज के हिसाब से बांटी गई सूची होती है.

अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.

Fields
models[] object (Model)

लौटाए गए मॉडल.

nextPageToken string

यह एक टोकन है. इसका इस्तेमाल अगले पेज को वापस पाने के लिए, pageToken के तौर पर किया जा सकता है.

अगर इस फ़ील्ड को शामिल नहीं किया जाता है, तो इसका मतलब है कि कोई और पेज नहीं है.

JSON के काेड में दिखाना
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

REST रिसॉर्स: models

संसाधन: मॉडल

जनरेटिव लैंग्वेज मॉडल के बारे में जानकारी.

Fields
name string

ज़रूरी है. Model के संसाधन का नाम. अनुमति वाली सभी वैल्यू के लिए, मॉडल के वैरिएंट देखें.

फ़ॉर्मैट: models/{model}, जिसमें {model} के नाम रखने का तरीका यह है:

  • "{baseModelId}-{version}"

उदाहरण:

  • models/gemini-1.5-flash-001
baseModelId string

ज़रूरी है. बेस मॉडल का नाम. इसे जनरेशन के अनुरोध में पास करें.

उदाहरण:

  • gemini-1.5-flash
version string

ज़रूरी है. मॉडल का वर्शन नंबर.

यह मेजर वर्शन (1.0 या 1.5) दिखाता है

displayName string

मॉडल का ऐसा नाम जिसे आसानी से पढ़ा जा सकता है. उदाहरण के लिए, "Gemini 1.5 Flash".

नाम में ज़्यादा से ज़्यादा 128 वर्ण हो सकते हैं. साथ ही, इसमें UTF-8 फ़ॉर्मैट वाले कोई भी वर्ण शामिल किए जा सकते हैं.

description string

मॉडल के बारे में कम शब्दों में जानकारी.

inputTokenLimit integer

इस मॉडल के लिए, ज़्यादा से ज़्यादा इतने इनपुट टोकन इस्तेमाल किए जा सकते हैं.

outputTokenLimit integer

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

supportedGenerationMethods[] string

मॉडल के साथ काम करने वाले जनरेशन के तरीके.

एपीआई के तरीके के नाम, पास्कल केस स्ट्रिंग के तौर पर तय किए जाते हैं. जैसे, generateMessage और generateContent.

thinking boolean

मॉडल में सोचने की क्षमता है या नहीं.

temperature number

इससे आउटपुट में रैंडमनेस को कंट्रोल किया जाता है.

वैल्यू [0.0,maxTemperature] तक हो सकती हैं. वैल्यू जितनी ज़्यादा होगी, जवाब उतने ही अलग-अलग होंगे. वहीं, वैल्यू 0.0 के आस-पास होने पर, मॉडल से आम तौर पर कम चौंकाने वाले जवाब मिलेंगे. यह वैल्यू, मॉडल को कॉल करते समय बैकएंड के लिए इस्तेमाल की जाने वाली डिफ़ॉल्ट वैल्यू के बारे में बताती है.

maxTemperature number

यह मॉडल ज़्यादा से ज़्यादा कितने तापमान का इस्तेमाल कर सकता है.

topP number

न्यूक्लियस सैंपलिंग के लिए.

न्यूक्लियस सैंपलिंग में, टोकन के सबसे छोटे सेट को चुना जाता है. इस सेट में शामिल टोकन की संभावनाओं का योग कम से कम topP होता है. यह वैल्यू, मॉडल को कॉल करते समय बैकएंड के लिए इस्तेमाल की जाने वाली डिफ़ॉल्ट वैल्यू के बारे में बताती है.

topK integer

टॉप-k सैंपलिंग के लिए.

टॉप-k सैंपलिंग में, topK सबसे ज़्यादा संभावित टोकन के सेट को ध्यान में रखा जाता है. यह वैल्यू, मॉडल को कॉल करते समय बैकएंड के लिए इस्तेमाल की जाने वाली डिफ़ॉल्ट वैल्यू के बारे में बताती है. अगर यह खाली है, तो इसका मतलब है कि मॉडल, टॉप-के सैंपलिंग का इस्तेमाल नहीं करता है. साथ ही, जनरेशन पैरामीटर के तौर पर topK का इस्तेमाल नहीं किया जा सकता.

JSON के काेड में दिखाना
{
  "name": string,
  "baseModelId": string,
  "version": string,
  "displayName": string,
  "description": string,
  "inputTokenLimit": integer,
  "outputTokenLimit": integer,
  "supportedGenerationMethods": [
    string
  ],
  "thinking": boolean,
  "temperature": number,
  "maxTemperature": number,
  "topP": number,
  "topK": integer
}

तरीका: models.predict

यह कुकी, अनुमान लगाने के अनुरोध को पूरा करती है.

एंडपॉइंट

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predict

पाथ पैरामीटर

model string

ज़रूरी है. अनुमान के लिए मॉडल का नाम. फ़ॉर्मैट: name=models/{model}. यह models/{model} के फ़ॉर्म में होता है.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य भाग में, इस स्ट्रक्चर का डेटा शामिल होता है:

Fields
instances[] value (Value format)

ज़रूरी है. वे इंस्टेंस जो अनुमान लगाने के लिए किए गए कॉल के इनपुट होते हैं.

parameters value (Value format)

ज़रूरी नहीं. ये पैरामीटर, अनुमान लगाने के लिए किए जाने वाले कॉल को कंट्रोल करते हैं.

जवाब का मुख्य भाग

[PredictionService.Predict] के लिए जवाब का मैसेज.

अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.

Fields
predictions[] value (Value format)

पूर्वानुमान लगाने वाले कॉल के आउटपुट.

JSON के काेड में दिखाना
{
  "predictions": [
    value
  ]
}

तरीका: models.predictLongRunning

यह models.predict की तरह ही है, लेकिन यह LRO दिखाता है.

एंडपॉइंट

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predictLongRunning

पाथ पैरामीटर

model string

ज़रूरी है. अनुमान के लिए मॉडल का नाम. फ़ॉर्मैट: name=models/{model}.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य भाग में, इस स्ट्रक्चर का डेटा शामिल होता है:

Fields
instances[] value (Value format)

ज़रूरी है. वे इंस्टेंस जो अनुमान लगाने के लिए किए गए कॉल के इनपुट होते हैं.

parameters value (Value format)

ज़रूरी नहीं. ये पैरामीटर, अनुमान लगाने के लिए किए जाने वाले कॉल को कंट्रोल करते हैं.

जवाब का मुख्य भाग

कामयाब रहने पर, जवाब के मुख्य हिस्से में Operation का एक इंस्टेंस शामिल किया जाता है.