कॉन्टेक्स्ट कैश मेमोरी की सुविधा की मदद से, पहले से कैलकुलेट किए गए उन इनपुट टोकन को सेव किया जा सकता है जिनका आपको बार-बार इस्तेमाल करना है. उदाहरण के लिए, एक ही मीडिया फ़ाइल के बारे में अलग-अलग सवाल पूछते समय. इस्तेमाल के आधार पर, इससे लागत कम हो सकती है और काम तेज़ी से हो सकता है. ज़्यादा जानकारी के लिए, कॉन्टेक्स्ट कैश मेमोरी गाइड देखें.
तरीका: cachedContents.create
यह CachedContent संसाधन बनाता है.
एंडपॉइंट
posthttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
अनुरोध का मुख्य भाग
अनुरोध के मुख्य भाग में CachedContent का उदाहरण है.
contents[]
object (Content)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. कैश मेमोरी में सेव किया जाने वाला कॉन्टेंट.
tools[]
object (Tool)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. Tools मॉडल, अगला जवाब जनरेट करने के लिए इस सूची का इस्तेमाल कर सकता है
expiration
Union type
expiration इनमें से सिर्फ़ एक हो सकता है:expireTime
string (Timestamp format)
यूटीसी में टाइमस्टैंप, जिससे पता चलता है कि यह संसाधन कब खत्म हो जाएगा. यह जानकारी, इनपुट में दी गई जानकारी के बावजूद, आउटपुट में हमेशा दी जाती है.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
सिर्फ़ इनपुट के लिए. इस संसाधन के लिए नया टीटीएल, सिर्फ़ इनपुट करें.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
displayName
string
ज़रूरी नहीं. इम्यूटेबल. कैश किए गए कॉन्टेंट का यूज़र जनरेटेड डिसप्ले नेम. ज़्यादा से ज़्यादा 128 यूनिकोड वर्ण.
model
string
ज़रूरी है. इम्यूटेबल. कैश किए गए कॉन्टेंट के लिए इस्तेमाल किए जाने वाले Model का नाम. फ़ॉर्मैट: models/{model}
systemInstruction
object (Content)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. डेवलपर ने सिस्टम के लिए निर्देश सेट किए हैं. फ़िलहाल, सिर्फ़ टेक्स्ट के तौर पर उपलब्ध है.
toolConfig
object (ToolConfig)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. टूल कॉन्फ़िगरेशन. यह कॉन्फ़िगरेशन सभी टूल के लिए शेयर किया जाता है.
अनुरोध का उदाहरण
सामान्य
Python
Node.js
ऐप पर जाएं
शेल
नाम
Python
Node.js
ऐप पर जाएं
चैट से
Python
Node.js
ऐप पर जाएं
जवाब का मुख्य भाग
अनुरोध पूरा होने पर, जवाब के मुख्य हिस्से में CachedContent का नया इंस्टेंस शामिल किया जाता है.
तरीका: cachedContents.list
Lists CachedContents.
एंडपॉइंट
gethttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
क्वेरी पैरामीटर
pageSize
integer
ज़रूरी नहीं. कैश किए गए ज़्यादा से ज़्यादा कॉन्टेंट वापस लाने की संख्या. ऐसा हो सकता है कि सेवा इस वैल्यू से कम नतीजे दिखाए. अगर इसे तय नहीं किया गया है, तो ज़्यादा से ज़्यादा संख्या के तहत कुछ डिफ़ॉल्ट आइटम दिखाए जाएंगे. इसकी ज़्यादा से ज़्यादा वैल्यू 1,000 हो सकती है. इससे ज़्यादा वैल्यू डालने पर, उसे 1,000 पर सेट कर दिया जाएगा.
pageToken
string
ज़रूरी नहीं. यह एक पेज टोकन है, जो पिछली cachedContents.list कॉल से मिला था. अगला पेज पाने के लिए, यह जानकारी दें.
पेज नंबर के हिसाब से डेटा दिखाने के दौरान, cachedContents.list को दिए गए अन्य सभी पैरामीटर, पेज टोकन देने वाले कॉल से मेल खाने चाहिए.
अनुरोध का मुख्य भाग
अनुरोध का मुख्य हिस्सा खाली होना चाहिए.
जवाब का मुख्य भाग
CachedContents की सूची के साथ जवाब.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
cachedContents[]
object (CachedContent)
कैश मेमोरी में सेव किए गए कॉन्टेंट की सूची.
nextPageToken
string
यह एक टोकन है. इसका इस्तेमाल pageToken के तौर पर किया जा सकता है, ताकि अगला पेज वापस पाया जा सके. अगर इस फ़ील्ड को खाली छोड़ा जाता है, तो इसके बाद कोई पेज नहीं होता.
| JSON के काेड में दिखाना |
|---|
{
"cachedContents": [
{
object ( |
तरीका: cachedContents.get
यह CachedContent संसाधन को पढ़ता है.
एंडपॉइंट
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
पाथ पैरामीटर
name
string
ज़रूरी है. कॉन्टेंट की कैश मेमोरी में सेव की गई एंट्री का रेफ़रंस देने वाला संसाधन का नाम. फ़ॉर्मैट: cachedContents/{id} यह cachedContents/{cachedcontent} के फ़ॉर्म में होता है.
अनुरोध का मुख्य भाग
अनुरोध का मुख्य हिस्सा खाली होना चाहिए.
अनुरोध का उदाहरण
Python
Node.js
ऐप पर जाएं
शेल
जवाब का मुख्य भाग
कामयाब रहने पर, जवाब के मुख्य हिस्से में CachedContent का एक इंस्टेंस शामिल किया जाता है.
तरीका: cachedContents.patch
- एंडपॉइंट
- पाथ पैरामीटर
- क्वेरी पैरामीटर
- अनुरोध का मुख्य हिस्सा
- जवाब का मुख्य हिस्सा
- अनुमति पाने के लिंक
- अनुरोध का उदाहरण
यह CachedContent संसाधन को अपडेट करता है. सिर्फ़ खत्म होने की तारीख को अपडेट किया जा सकता है.
एंडपॉइंट
patchhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}
PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
पाथ पैरामीटर
cachedContent.name
string
सिर्फ़ आउटपुट के लिए. आइडेंटिफ़ायर. कैश मेमोरी में सेव किए गए कॉन्टेंट का संसाधन नाम. फ़ॉर्मैट: cachedContents/{id} यह cachedContents/{cachedcontent} के फ़ॉर्म में होता है.
क्वेरी पैरामीटर
updateMask
string (FieldMask format)
अपडेट किए जाने वाले फ़ील्ड की सूची.
यह फ़ील्ड के पूरी तरह क्वालिफ़ाइड नामों की कॉमा लगाकर अलग की गई लिस्ट है. उदाहरण: "user.displayName,photo".
अनुरोध का मुख्य भाग
अनुरोध के मुख्य भाग में CachedContent का उदाहरण है.
expiration
Union type
expiration इनमें से सिर्फ़ एक हो सकता है:expireTime
string (Timestamp format)
यूटीसी में टाइमस्टैंप, जिससे पता चलता है कि यह संसाधन कब खत्म हो जाएगा. यह जानकारी, इनपुट में दी गई जानकारी के बावजूद, आउटपुट में हमेशा दी जाती है.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
सिर्फ़ इनपुट के लिए. इस संसाधन के लिए नया टीटीएल, सिर्फ़ इनपुट करें.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
अनुरोध का उदाहरण
Python
Node.js
ऐप पर जाएं
शेल
जवाब का मुख्य भाग
कामयाब रहने पर, जवाब के मुख्य हिस्से में CachedContent का एक इंस्टेंस शामिल किया जाता है.
तरीका: cachedContents.delete
यह CachedContent संसाधन को मिटाता है.
एंडपॉइंट
deletehttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
पाथ पैरामीटर
name
string
ज़रूरी है. कॉन्टेंट कैश मेमोरी की एंट्री का रेफ़रंस देने वाला संसाधन का नाम. फ़ॉर्मैट: cachedContents/{id} यह cachedContents/{cachedcontent} के फ़ॉर्म में होता है.
अनुरोध का मुख्य भाग
अनुरोध का मुख्य हिस्सा खाली होना चाहिए.
अनुरोध का उदाहरण
Python
Node.js
ऐप पर जाएं
शेल
जवाब का मुख्य भाग
अगर अनुरोध पूरा हो जाता है, तो जवाब के मुख्य हिस्से में एक खाली JSON ऑब्जेक्ट होता है.
REST रिसॉर्स: cachedContents
- संसाधन: CachedContent
- कॉन्टेंट
- हिस्सा
- Blob
- FunctionCall
- FunctionResponse
- FunctionResponsePart
- FunctionResponseBlob
- शेड्यूलिंग
- FileData
- ExecutableCode
- भाषा
- CodeExecutionResult
- नतीजा
- ToolCall
- ToolType
- ToolResponse
- VideoMetadata
- MediaResolution
- लेवल
- टूल
- FunctionDeclaration
- स्कीमा
- समस्या
- व्यवहार
- GoogleSearchRetrieval
- DynamicRetrievalConfig
- मोड
- CodeExecution
- GoogleSearch
- Interval
- SearchTypes
- WebSearch
- ImageSearch
- ComputerUse
- परिवेश
- UrlContext
- FileSearch
- McpServer
- StreamableHttpTransport
- GoogleMaps
- ToolConfig
- FunctionCallingConfig
- मोड
- RetrievalConfig
- LatLng
- UsageMetadata
- तरीके
संसाधन: CachedContent
ऐसा कॉन्टेंट जिसे पहले से प्रोसेस किया गया हो और जिसका इस्तेमाल, GenerativeService को किए जाने वाले अगले अनुरोध में किया जा सकता हो.
कैश किए गए कॉन्टेंट का इस्तेमाल सिर्फ़ उसी मॉडल के साथ किया जा सकता है जिसके लिए इसे बनाया गया था.
contents[]
object (Content)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. कैश मेमोरी में सेव किया जाने वाला कॉन्टेंट.
tools[]
object (Tool)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. Tools मॉडल, अगला जवाब जनरेट करने के लिए इस सूची का इस्तेमाल कर सकता है
createTime
string (Timestamp format)
सिर्फ़ आउटपुट के लिए. कैश मेमोरी की एंट्री बनाए जाने का समय.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
updateTime
string (Timestamp format)
सिर्फ़ आउटपुट के लिए. यूटीसी के मुताबिक, कैश मेमोरी की एंट्री को आखिरी बार कब अपडेट किया गया था.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
usageMetadata
object (UsageMetadata)
सिर्फ़ आउटपुट के लिए. कैश मेमोरी में सेव किए गए कॉन्टेंट के इस्तेमाल से जुड़ा मेटाडेटा.
expiration
Union type
expiration इनमें से सिर्फ़ एक हो सकता है:expireTime
string (Timestamp format)
यूटीसी में टाइमस्टैंप, जिससे पता चलता है कि यह संसाधन कब खत्म हो जाएगा. यह जानकारी, इनपुट में दी गई जानकारी के बावजूद, आउटपुट में हमेशा दी जाती है.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
सिर्फ़ इनपुट के लिए. इस संसाधन के लिए नया टीटीएल, सिर्फ़ इनपुट करें.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
name
string
सिर्फ़ आउटपुट के लिए. आइडेंटिफ़ायर. कैश मेमोरी में सेव किए गए कॉन्टेंट का संसाधन नाम. फ़ॉर्मैट: cachedContents/{id}
displayName
string
ज़रूरी नहीं. इम्यूटेबल. कैश किए गए कॉन्टेंट का यूज़र जनरेटेड डिसप्ले नेम. ज़्यादा से ज़्यादा 128 यूनिकोड वर्ण.
model
string
ज़रूरी है. इम्यूटेबल. कैश किए गए कॉन्टेंट के लिए इस्तेमाल किए जाने वाले Model का नाम. फ़ॉर्मैट: models/{model}
systemInstruction
object (Content)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. डेवलपर ने सिस्टम के लिए निर्देश सेट किए हैं. फ़िलहाल, सिर्फ़ टेक्स्ट के तौर पर उपलब्ध है.
toolConfig
object (ToolConfig)
ज़रूरी नहीं. सिर्फ़ इनपुट के लिए. इम्यूटेबल. टूल कॉन्फ़िगरेशन. यह कॉन्फ़िगरेशन सभी टूल के लिए शेयर किया जाता है.
| JSON के काेड में दिखाना |
|---|
{ "contents": [ { object ( |
सामग्री
यह एक बुनियादी स्ट्रक्चर्ड डेटाटाइप है. इसमें मैसेज का कई हिस्सों वाला कॉन्टेंट शामिल होता है.
Content में एक role फ़ील्ड होता है, जो Content के प्रोड्यूसर को दिखाता है. साथ ही, इसमें एक parts फ़ील्ड होता है, जिसमें कई हिस्सों वाला डेटा होता है. इस डेटा में मैसेज टर्न का कॉन्टेंट होता है.
parts[]
object (Part)
क्रम से लगाए गए Parts, जो एक मैसेज बनाते हैं. अलग-अलग हिस्सों के MIME टाइप अलग-अलग हो सकते हैं.
role
string
ज़रूरी नहीं. कॉन्टेंट का प्रोड्यूसर. इसकी वैल्यू 'user' या 'model' होनी चाहिए.
इसका इस्तेमाल, कई बार बातचीत करने के लिए किया जाता है. अगर ऐसा नहीं करना है, तो इसे खाली छोड़ा जा सकता है या अनसेट किया जा सकता है.
| JSON के काेड में दिखाना |
|---|
{
"parts": [
{
object ( |
भाग
यह एक डेटाटाइप है. इसमें ऐसा मीडिया शामिल होता है जो कई हिस्सों वाले Content मैसेज का हिस्सा होता है.
Part में ऐसा डेटा होता है जिसका डेटाटाइप जुड़ा होता है. Part में, Part.data में स्वीकार किए गए टाइप में से सिर्फ़ एक टाइप हो सकता है.
अगर inlineData फ़ील्ड में रॉ बाइट भरी गई हैं, तो Part में IANA का तय किया गया MIME टाइप होना चाहिए. इससे मीडिया के टाइप और सबटाइप की पहचान होती है.
thought
boolean
ज़रूरी नहीं. इससे पता चलता है कि जवाब का यह हिस्सा मॉडल ने जनरेट किया है या नहीं.
thoughtSignature
string (bytes format)
ज़रूरी नहीं. विचार के लिए एक ओपेक हस्ताक्षर, ताकि इसे बाद के अनुरोधों में फिर से इस्तेमाल किया जा सके.
base64 कोड में बदली गई स्ट्रिंग.
partMetadata
object (Struct format)
पार्ट से जुड़ा कस्टम मेटाडेटा. कॉन्टेंट दिखाने के लिए genai.Part का इस्तेमाल करने वाले एजेंट को अतिरिक्त जानकारी ट्रैक करनी पड़ सकती है. उदाहरण के लिए, यह उस फ़ाइल/सोर्स का नाम हो सकता है जिससे पार्ट बना है या एक से ज़्यादा पार्ट स्ट्रीम को मल्टीप्लेक्स करने का तरीका हो सकता है.
mediaResolution
object (MediaResolution)
ज़रूरी नहीं. इनपुट मीडिया के लिए मीडिया रिज़ॉल्यूशन.
data
Union type
data इनमें से सिर्फ़ एक हो सकता है:text
string
इनलाइन टेक्स्ट.
inlineData
object (Blob)
इनलाइन मीडिया बाइट.
functionCall
object (FunctionCall)
मॉडल से मिली अनुमानित FunctionCall, जिसमें FunctionDeclaration.name को दिखाने वाली स्ट्रिंग होती है. इसमें आर्ग्युमेंट और उनकी वैल्यू शामिल होती हैं.
functionResponse
object (FunctionResponse)
FunctionCall के नतीजे के तौर पर मिले आउटपुट का इस्तेमाल मॉडल के कॉन्टेक्स्ट के तौर पर किया जाता है. इस आउटपुट में, FunctionDeclaration.name को दिखाने वाली स्ट्रिंग और फ़ंक्शन से मिले किसी भी आउटपुट को दिखाने वाला स्ट्रक्चर्ड JSON ऑब्जेक्ट शामिल होता है.
fileData
object (FileData)
यूआरआई पर आधारित डेटा.
executableCode
object (ExecutableCode)
मॉडल ने ऐसा कोड जनरेट किया है जिसे एक्ज़ीक्यूट किया जाना है.
codeExecutionResult
object (CodeExecutionResult)
ExecutableCode को लागू करने का नतीजा.
toolCall
object (ToolCall)
सर्वर-साइड टूल कॉल. जब मॉडल, टूल को शुरू करने का अनुमान लगाता है, तब इस फ़ील्ड में जानकारी अपने-आप भर जाती है. इस टूल को सर्वर पर शुरू किया जाना चाहिए. क्लाइंट को इस मैसेज को एपीआई को वापस भेजना होगा.
toolResponse
object (ToolResponse)
सर्वर-साइड ToolCall के एक्ज़ीक्यूशन का आउटपुट. इस फ़ील्ड में, क्लाइंट ToolCall को लागू करने के नतीजों की जानकारी भरता है.
metadata
Union type
metadata इनमें से सिर्फ़ एक हो सकता है:videoMetadata
object (VideoMetadata)
ज़रूरी नहीं. वीडियो का मेटाडेटा. मेटाडेटा सिर्फ़ तब तय किया जाना चाहिए, जब वीडियो डेटा को inlineData या fileData में दिखाया गया हो.
| JSON के काेड में दिखाना |
|---|
{ "thought": boolean, "thoughtSignature": string, "partMetadata": { object }, "mediaResolution": { object ( |
ब्लॉब
मीडिया के रॉ बाइट.
टेक्स्ट को रॉ बाइट के तौर पर नहीं भेजा जाना चाहिए. इसके लिए, 'text' फ़ील्ड का इस्तेमाल करें.
mimeType
string
सोर्स डेटा का IANA स्टैंडर्ड MIME टाइप. इस्तेमाल किए जा सकने वाले टाइप के उदाहरण: - इमेज: image/png, image/jpeg, image/jpg, image/webp, image/heic, image/heif, image/gif, image/avif - ऑडियो: audio/*, video/audio/s16le, video/audio/wav - वीडियो: video/* - टेक्स्ट: text/plain, text/html, text/css, text/javascript, text/x-typescript, text/csv, text/markdown, text/x-python, text/xml, text/rtf, video/text/timestamp - ऐप्लिकेशन: application/x-javascript, application/x-typescript, application/x-python-code, application/json, application/x-ipynb+json, application/rtf, application/pdf ज़्यादा जानकारी के लिए, इस्तेमाल किए जा सकने वाले फ़ाइल फ़ॉर्मैट देखें. //
data
string (bytes format)
मीडिया फ़ॉर्मैट के लिए रॉ बाइट.
base64 कोड में बदली गई स्ट्रिंग.
| JSON के काेड में दिखाना |
|---|
{ "mimeType": string, "data": string } |
FunctionCall
मॉडल से मिली अनुमानित FunctionCall, जिसमें FunctionDeclaration.name को दिखाने वाली स्ट्रिंग होती है. इसमें आर्ग्युमेंट और उनकी वैल्यू शामिल होती हैं.
id
string
ज़रूरी नहीं. फ़ंक्शन कॉल का यूनीक आइडेंटिफ़ायर. अगर यह फ़ील्ड भरा गया है, तो क्लाइंट को functionCall को लागू करना होगा और मैच करने वाले id के साथ जवाब देना होगा.
name
string
ज़रूरी है. कॉल किए जाने वाले फ़ंक्शन का नाम. इसमें a-z, A-Z, 0-9 के साथ-साथ अंडरस्कोर और डैश शामिल होने चाहिए. इसकी लंबाई ज़्यादा से ज़्यादा 128 वर्ण होनी चाहिए.
args
object (Struct format)
ज़रूरी नहीं. JSON ऑब्जेक्ट फ़ॉर्मैट में फ़ंक्शन के पैरामीटर और वैल्यू.
| JSON के काेड में दिखाना |
|---|
{ "id": string, "name": string, "args": { object } } |
FunctionResponse
FunctionCall से मिले नतीजे के आउटपुट में, FunctionDeclaration.name को दिखाने वाली स्ट्रिंग और फ़ंक्शन से मिले किसी भी आउटपुट को शामिल करने वाला स्ट्रक्चर्ड JSON ऑब्जेक्ट होता है. इसका इस्तेमाल मॉडल के कॉन्टेक्स्ट के तौर पर किया जाता है. इसमें मॉडल के अनुमान के आधार पर किए गए FunctionCall का नतीजा होना चाहिए.
id
string
ज़रूरी नहीं. यह आइडेंटिफ़ायर, उस फ़ंक्शन कॉल का होता है जिसके लिए यह जवाब दिया गया है. क्लाइंट इस फ़ील्ड में वैल्यू भरता है, ताकि यह फ़ंक्शन कॉल id से मैच हो सके.
name
string
ज़रूरी है. कॉल किए जाने वाले फ़ंक्शन का नाम. इसमें a-z, A-Z, 0-9 के साथ-साथ अंडरस्कोर और डैश शामिल होने चाहिए. इसकी लंबाई ज़्यादा से ज़्यादा 128 वर्ण होनी चाहिए.
response
object (Struct format)
ज़रूरी है. JSON ऑब्जेक्ट फ़ॉर्मैट में फ़ंक्शन का रिस्पॉन्स. फ़ंक्शन का इस्तेमाल करने वाले लोग, फ़ंक्शन के सिंटैक्स के हिसाब से अपनी पसंद की किसी भी कुंजी का इस्तेमाल करके, फ़ंक्शन का आउटपुट दिखा सकते हैं.उदाहरण के लिए, "output", "result" वगैरह. खास तौर पर, अगर फ़ंक्शन कॉल को पूरा नहीं किया जा सका, तो जवाब में "error" कुंजी हो सकती है. इससे मॉडल को गड़बड़ी की जानकारी मिलती है.
मल्टीमीडिया को शामिल करने के लिए, एक ऐसा सबऑब्जेक्ट इस्तेमाल किया जा सकता है जिसमें सिर्फ़ एक "$ref" कुंजी होती है. इसकी वैल्यू, मल्टीमीडिया रखने वाले FunctionResponsePart का inlineData.display_name होती है. https://ai.google.dev/gemini-api/docs/function-calling#multimodal पर जाएं.
parts[]
object (FunctionResponsePart)
ज़रूरी नहीं. क्रम से लगाए गए Parts, जो फ़ंक्शन के जवाब बनाते हैं. इनके अलग-अलग IANA MIME टाइप हो सकते हैं.
willContinue
boolean
ज़रूरी नहीं. इससे पता चलता है कि फ़ंक्शन कॉल जारी है और ज़्यादा जवाब मिलेंगे. इससे फ़ंक्शन कॉल, जनरेटर में बदल जाता है. यह सिर्फ़ NON_BLOCKING फ़ंक्शन कॉल पर लागू होता है. अन्य फ़ंक्शन कॉल के लिए इसे अनदेखा कर दिया जाता है. इस नीति को 'गलत है' पर सेट करने पर, आगे के जवाबों पर विचार नहीं किया जाएगा. फ़ंक्शन कॉल पूरा होने का सिग्नल देने के लिए, willContinue=False के साथ खाली response को वापस लाने की अनुमति है. इससे मॉडल जनरेट हो सकता है. जनरेशन को ट्रिगर होने से रोकने और फ़ंक्शन कॉल को पूरा करने के लिए, scheduling को SILENT पर सेट करें.
scheduling
enum (Scheduling)
ज़रूरी नहीं. इससे पता चलता है कि बातचीत में जवाब को कैसे शेड्यूल किया जाना चाहिए. यह सिर्फ़ NON_BLOCKING फ़ंक्शन कॉल पर लागू होता है. अन्य फ़ंक्शन कॉल के लिए, इसे अनदेखा कर दिया जाता है. डिफ़ॉल्ट रूप से, यह WHEN_IDLE पर सेट होता है.
| JSON के काेड में दिखाना |
|---|
{ "id": string, "name": string, "response": { object }, "parts": [ { object ( |
FunctionResponsePart
यह एक डेटाटाइप है, जिसमें FunctionResponse मैसेज का हिस्सा बनने वाला मीडिया शामिल होता है.
FunctionResponsePart में ऐसा डेटा होता है जिसका डेटाटाइप जुड़ा होता है. FunctionResponsePart में, FunctionResponsePart.data में स्वीकार किए गए टाइप में से सिर्फ़ एक टाइप हो सकता है.
अगर inlineData फ़ील्ड में रॉ बाइट भरी गई हैं, तो FunctionResponsePart में IANA का तय किया गया MIME टाइप होना चाहिए. इससे मीडिया के टाइप और सबटाइप की पहचान होती है.
data
Union type
data इनमें से सिर्फ़ एक हो सकता है:inlineData
object (FunctionResponseBlob)
इनलाइन मीडिया बाइट.
| JSON के काेड में दिखाना |
|---|
{
// data
"inlineData": {
object ( |
FunctionResponseBlob
फ़ंक्शन के जवाब के लिए रॉ मीडिया बाइट.
टेक्स्ट को रॉ बाइट के तौर पर नहीं भेजा जाना चाहिए. इसके लिए, 'FunctionResponse.response' फ़ील्ड का इस्तेमाल करें.
mimeType
string
सोर्स डेटा का IANA स्टैंडर्ड MIME टाइप. उदाहरण: - image/png - image/jpeg अगर ऐसा एमआईएमई टाइप दिया जाता है जो काम नहीं करता, तो गड़बड़ी का मैसेज दिखेगा. इस्तेमाल किए जा सकने वाले फ़ाइल फ़ॉर्मैट की पूरी सूची देखने के लिए, इस्तेमाल किए जा सकने वाले फ़ाइल फ़ॉर्मैट पर जाएं.
data
string (bytes format)
मीडिया फ़ॉर्मैट के लिए रॉ बाइट.
base64 कोड में बदली गई स्ट्रिंग.
| JSON के काेड में दिखाना |
|---|
{ "mimeType": string, "data": string } |
शेड्यूलिंग
इससे पता चलता है कि बातचीत में जवाब को कैसे शेड्यूल किया जाना चाहिए.
| Enums | |
|---|---|
SCHEDULING_UNSPECIFIED |
इस वैल्यू का इस्तेमाल नहीं किया गया है. |
SILENT |
सिर्फ़ नतीजे को बातचीत के कॉन्टेक्स्ट में जोड़ें. जनरेशन को न तो रोकें और न ही ट्रिगर करें. |
WHEN_IDLE |
नतीजे को बातचीत के कॉन्टेक्स्ट में जोड़ें और जनरेट हो रहे आउटपुट में रुकावट डाले बिना आउटपुट जनरेट करने के लिए प्रॉम्प्ट करें. |
INTERRUPT |
नतीजे को बातचीत के कॉन्टेक्स्ट में जोड़ता है, जनरेट हो रहे कॉन्टेंट को रोकता है, और आउटपुट जनरेट करने के लिए प्रॉम्प्ट करता है. |
FileData
यूआरआई पर आधारित डेटा.
mimeType
string
ज़रूरी नहीं. सोर्स डेटा का IANA स्टैंडर्ड MIME टाइप.
fileUri
string
ज़रूरी है. यूआरआई.
| JSON के काेड में दिखाना |
|---|
{ "mimeType": string, "fileUri": string } |
ExecutableCode
मॉडल से जनरेट किया गया ऐसा कोड जिसे एक्ज़ीक्यूट किया जाना है. साथ ही, मॉडल को नतीजा वापस भेजा जाता है.
यह सिर्फ़ CodeExecution टूल का इस्तेमाल करने पर जनरेट होता है. इसमें कोड अपने-आप लागू हो जाएगा और इससे मिलता-जुलता CodeExecutionResult भी जनरेट हो जाएगा.
id
string
ज़रूरी नहीं. ExecutableCode पार्ट का यूनीक आइडेंटिफ़ायर. सर्वर, मैच करने वाले id के साथ CodeExecutionResult दिखाता है.
language
enum (Language)
ज़रूरी है. code की प्रोग्रामिंग लैंग्वेज.
code
string
ज़रूरी है. वह कोड जिसे एक्ज़ीक्यूट करना है.
| JSON के काेड में दिखाना |
|---|
{
"id": string,
"language": enum ( |
भाषा
जनरेट किए गए कोड के लिए, इस्तेमाल की जा सकने वाली प्रोग्रामिंग भाषाएँ.
| Enums | |
|---|---|
LANGUAGE_UNSPECIFIED |
इस भाषा के बारे में जानकारी उपलब्ध नहीं है. इस वैल्यू का इस्तेमाल नहीं किया जाना चाहिए. |
PYTHON |
Python >= 3.10, जिसमें numpy और simpy उपलब्ध हों. Python डिफ़ॉल्ट भाषा है. |
CodeExecutionResult
ExecutableCode को लागू करने का नतीजा.
यह सिर्फ़ तब जनरेट होता है, जब CodeExecution टूल का इस्तेमाल किया जाता है.
id
string
ज़रूरी नहीं. यह नतीजा, ExecutableCode के जिस हिस्से के लिए है उसका आइडेंटिफ़ायर. यह फ़ील्ड सिर्फ़ तब भरा जाता है, जब इससे जुड़े ExecutableCode में कोई आईडी मौजूद हो.
outcome
enum (Outcome)
ज़रूरी है. कोड चलाने का नतीजा.
output
string
ज़रूरी नहीं. अगर कोड को सही तरीके से लागू किया जाता है, तो इसमें stdout होता है. अगर ऐसा नहीं होता है, तो इसमें stderr या अन्य जानकारी होती है.
| JSON के काेड में दिखाना |
|---|
{
"id": string,
"outcome": enum ( |
नतीजा
कोड को चलाने के संभावित नतीजों की गिनती.
| Enums | |
|---|---|
OUTCOME_UNSPECIFIED |
स्थिति की जानकारी नहीं दी गई है. इस वैल्यू का इस्तेमाल नहीं किया जाना चाहिए. |
OUTCOME_OK |
कोड लागू हो गया. output में stdout शामिल होता है. अगर कोई stdout नहीं है, तो यह फ़ील्ड मौजूद नहीं होता. |
OUTCOME_FAILED |
कोड नहीं चल सका. output में stderr और stdout शामिल होता है. |
OUTCOME_DEADLINE_EXCEEDED |
कोड को बहुत ज़्यादा समय तक चलाया गया. इसलिए, इसे रद्द कर दिया गया. ऐसा हो सकता है कि output मौजूद हो या न हो. |
ToolCall
मॉडल से अनुमानित सर्वर-साइड ToolCall मिला. इस मैसेज में, उस टूल के बारे में जानकारी होती है जिसे मॉडल इस्तेमाल करना चाहता है. क्लाइंट को यह ToolCall लागू नहीं करना चाहिए. इसके बजाय, क्लाइंट को इस ToolCall को Content मैसेज में, एपीआई को वापस भेजना चाहिए. साथ ही, इससे जुड़ा ToolResponse भी भेजना चाहिए.
id
string
ज़रूरी नहीं. टूल कॉल का यूनीक आइडेंटिफ़ायर. सर्वर, टूल से मिले जवाब में मौजूद id से मेल खाने वाले id को दिखाता है.
toolType
enum (ToolType)
ज़रूरी है. कॉल किए गए टूल का टाइप.
args
object (Struct format)
ज़रूरी नहीं. टूल कॉल के आर्ग्युमेंट. उदाहरण: {"arg1" : "value1", "arg2" : "value2" , ...}
| JSON के काेड में दिखाना |
|---|
{
"id": string,
"toolType": enum ( |
ToolType
फ़ंक्शन कॉल में टूल का टाइप.
| Enums | |
|---|---|
TOOL_TYPE_UNSPECIFIED |
टूल के टाइप की जानकारी नहीं दी गई है. |
GOOGLE_SEARCH_WEB |
Google का खोज टूल, Tool.google_search.search_types.web_search से मैप होता है. |
GOOGLE_SEARCH_IMAGE |
इमेज सर्च टूल, Tool.google_search.search_types.image_search पर मैप करता है. |
URL_CONTEXT |
यूआरएल कॉन्टेक्स्ट टूल, Tool.url_context से मैप करता है. |
GOOGLE_MAPS |
Google Maps टूल, Tool.google_maps पर मैप करता है. |
FILE_SEARCH |
फ़ाइल खोजने का टूल, Tool.file_search पर मैप करता है. |
ToolResponse
सर्वर-साइड पर ToolCall को लागू करने का आउटपुट. इस मैसेज में, टूल को शुरू करने के नतीजे शामिल हैं. इसे मॉडल से ToolCall ने शुरू किया था. क्लाइंट को इस ToolResponse को एपीआई को वापस भेजना चाहिए. इसके लिए, उसे Content मैसेज में ToolCall के साथ, अगले टर्न में ऐसा करना होगा.
id
string
ज़रूरी नहीं. यह जवाब, टूल कॉल के जिस आइडेंटिफ़ायर के लिए है.
toolType
enum (ToolType)
ज़रूरी है. कॉल किए गए टूल का टाइप, जो ToolCall में मौजूद toolType से मेल खाता है.
response
object (Struct format)
ज़रूरी नहीं. टूल से मिला जवाब.
| JSON के काेड में दिखाना |
|---|
{
"id": string,
"toolType": enum ( |
VideoMetadata
इस्तेमाल बंद कर दिया गया है: इसके बजाय, GenerateContentRequest.processing_options का इस्तेमाल करें. मेटाडेटा में, इनपुट वीडियो कॉन्टेंट के बारे में जानकारी होती है.
startOffset
string (Duration format)
ज़रूरी नहीं. वीडियो शुरू होने का ऑफ़सेट.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
endOffset
string (Duration format)
ज़रूरी नहीं. वीडियो का आखिरी ऑफ़सेट.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
fps
number
ज़रूरी नहीं. मॉडल को भेजे गए वीडियो का फ़्रेम रेट. अगर कोई वैल्यू तय नहीं की गई है, तो डिफ़ॉल्ट वैल्यू 1.0 होगी. एफ़पीएस की रेंज (0.0, 24.0] है.
| JSON के काेड में दिखाना |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |
MediaResolution
टोकनाइज़ेशन के लिए मीडिया रिज़ॉल्यूशन.
value
Union type
value इनमें से सिर्फ़ एक हो सकता है:level
enum (Level)
दिए गए मीडिया के लिए इस्तेमाल की गई टोकनाइज़ेशन क्वालिटी.
| JSON के काेड में दिखाना |
|---|
{
// value
"level": enum ( |
लेवल
मीडिया का रिज़ॉल्यूशन लेवल.
| Enums | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
मीडिया का रिज़ॉल्यूशन सेट नहीं किया गया है. |
MEDIA_RESOLUTION_LOW |
मीडिया का रिज़ॉल्यूशन कम पर सेट है. |
MEDIA_RESOLUTION_MEDIUM |
मीडिया का रिज़ॉल्यूशन मीडियम पर सेट किया गया है. |
MEDIA_RESOLUTION_HIGH |
मीडिया का रिज़ॉल्यूशन, ज़्यादा पर सेट हो. |
MEDIA_RESOLUTION_ULTRA_HIGH |
मीडिया का रिज़ॉल्यूशन अल्ट्रा हाई पर सेट हो. |
टूल
टूल की वह जानकारी जिसका इस्तेमाल मॉडल, जवाब जनरेट करने के लिए कर सकता है.
Tool एक ऐसा कोड होता है जो सिस्टम को बाहरी सिस्टम के साथ इंटरैक्ट करने की अनुमति देता है. इससे सिस्टम, मॉडल की जानकारी और दायरे से बाहर कोई कार्रवाई या कार्रवाइयों का सेट कर पाता है.
अगला आईडी: 16
functionDeclarations[]
object (FunctionDeclaration)
ज़रूरी नहीं. मॉडल के लिए उपलब्ध FunctionDeclarations की सूची. इनका इस्तेमाल फ़ंक्शन कॉल करने के लिए किया जा सकता है.
मॉडल या सिस्टम, फ़ंक्शन को पूरा नहीं करता है. इसके बजाय, तय किए गए फ़ंक्शन को क्लाइंट साइड पर FunctionCall के तौर पर दिखाया जा सकता है, ताकि क्लाइंट साइड पर इसे लागू किया जा सके. मॉडल, इन फ़ंक्शन के सबसेट को कॉल करने का फ़ैसला कर सकता है. इसके लिए, वह जवाब में FunctionCall भरता है. अगले मॉडल टर्न के लिए, अगले बातचीत वाले टर्न में Content.role "फ़ंक्शन" जनरेशन कॉन्टेक्स्ट के साथ FunctionResponse शामिल हो सकता है.
googleSearchRetrieval
object (GoogleSearchRetrieval)
ज़रूरी नहीं. यह जानकारी वापस पाने का टूल है, जो Google Search की मदद से काम करता है.
codeExecution
object (CodeExecution)
ज़रूरी नहीं. इस सुविधा की मदद से, मॉडल जनरेट करने के दौरान कोड को लागू कर पाता है.
googleSearch
object (GoogleSearch)
ज़रूरी नहीं. GoogleSearch टूल का टाइप. मॉडल में Google Search की सुविधा देने वाला टूल. Google की ओर से उपलब्ध कराया गया.
computerUse
object (ComputerUse)
ज़रूरी नहीं. यह टूल, मॉडल को सीधे तौर पर कंप्यूटर से इंटरैक्ट करने में मदद करता है. यह सुविधा चालू होने पर, कंप्यूटर के इस्तेमाल से जुड़ी फ़ंक्शन डिक्लेरेशन की जानकारी अपने-आप भर जाती है.
urlContext
object (UrlContext)
ज़रूरी नहीं. यह कुकी, यूआरएल के कॉन्टेक्स्ट को वापस पाने में मदद करती है.
fileSearch
object (FileSearch)
ज़रूरी नहीं. FileSearch टूल का टाइप. सिमैंटिक रिट्रीवल कॉर्पस से जानकारी पाने का टूल.
mcpServers[]
object (McpServer)
ज़रूरी नहीं. कनेक्ट करने के लिए एमसीपी सर्वर.
googleMaps
object (GoogleMaps)
ज़रूरी नहीं. यह एक ऐसा टूल है जो उपयोगकर्ता की क्वेरी से जुड़े भू-स्थानिक कॉन्टेक्स्ट के आधार पर, मॉडल के जवाब को बेहतर बनाता है.
| JSON के काेड में दिखाना |
|---|
{ "functionDeclarations": [ { object ( |
FunctionDeclaration
OpenAPI 3.03 स्पेसिफ़िकेशन के मुताबिक, फ़ंक्शन के एलान का स्ट्रक्चर्ड प्रज़ेंटेशन. इस एलान में, फ़ंक्शन का नाम और पैरामीटर शामिल होते हैं. यह FunctionDeclaration, कोड के एक ब्लॉक का प्रतिनिधित्व करता है. इसका इस्तेमाल मॉडल Tool के तौर पर कर सकता है. साथ ही, इसे क्लाइंट एक्ज़ीक्यूट कर सकता है.
name
string
ज़रूरी है. फ़ंक्शन का नाम. यह a-z, A-Z, 0-9 होना चाहिए. इसके अलावा, इसमें अंडरस्कोर, कोलन, बिंदु, और डैश शामिल हो सकते हैं. इसकी लंबाई ज़्यादा से ज़्यादा 128 होनी चाहिए.
description
string
ज़रूरी है. फ़ंक्शन के बारे में कम शब्दों में जानकारी.
behavior
enum (Behavior)
ज़रूरी नहीं. इससे फ़ंक्शन के व्यवहार के बारे में पता चलता है. फ़िलहाल, यह सिर्फ़ BidiGenerateContent तरीके के साथ काम करता है.
parameters
object (Schema)
ज़रूरी नहीं. इस फ़ंक्शन के पैरामीटर के बारे में बताता है. यह Open API 3.03 पैरामीटर ऑब्जेक्ट स्ट्रिंग कुंजी को दिखाता है: पैरामीटर का नाम. पैरामीटर के नाम केस-सेंसिटिव होते हैं. स्कीमा वैल्यू: यह पैरामीटर के लिए इस्तेमाल किए गए टाइप को तय करने वाला स्कीमा है.
parametersJsonSchema
value (Value format)
ज़रूरी नहीं. JSON स्कीमा फ़ॉर्मैट में, फ़ंक्शन के पैरामीटर के बारे में बताता है. स्कीमा में ऐसे ऑब्जेक्ट के बारे में जानकारी होनी चाहिए जिसकी प्रॉपर्टी, फ़ंक्शन के पैरामीटर हों. उदाहरण के लिए:
{
"type": "object",
"properties": {
"name": { "type": "string" },
"age": { "type": "integer" }
},
"additionalProperties": false,
"required": ["name", "age"],
"propertyOrdering": ["name", "age"]
}
यह फ़ील्ड, parameters के साथ काम नहीं करता.
response
object (Schema)
ज़रूरी नहीं. इस फ़ंक्शन के आउटपुट के बारे में JSON स्कीमा फ़ॉर्मैट में बताता है. यह Open API 3.03 रिस्पॉन्स ऑब्जेक्ट को दिखाता है. स्कीमा, फ़ंक्शन की रिस्पॉन्स वैल्यू के लिए इस्तेमाल किए गए टाइप को तय करता है.
responseJsonSchema
value (Value format)
ज़रूरी नहीं. इस फ़ंक्शन के आउटपुट के बारे में JSON स्कीमा फ़ॉर्मैट में बताता है. स्कीमा में दी गई वैल्यू, फ़ंक्शन की रिस्पॉन्स वैल्यू होती है.
यह फ़ील्ड, response के साथ काम नहीं करता.
स्कीमा
Schema ऑब्जेक्ट की मदद से, इनपुट और आउटपुट डेटा टाइप तय किए जा सकते हैं. ये टाइप ऑब्जेक्ट के साथ-साथ प्रिमिटिव और ऐरे भी हो सकते हैं. यह OpenAPI 3.0 स्कीमा ऑब्जेक्ट के चुने गए सबसेट को दिखाता है.
type
enum (Type)
ज़रूरी है. डेटा टाइप.
format
string
ज़रूरी नहीं. डेटा का फ़ॉर्मैट. कोई भी वैल्यू इस्तेमाल की जा सकती है. हालांकि, ज़्यादातर वैल्यू से कोई खास सुविधा ट्रिगर नहीं होती.
title
string
ज़रूरी नहीं. स्कीमा का टाइटल.
description
string
ज़रूरी नहीं. पैरामीटर के बारे में कम शब्दों में जानकारी. इसमें इस्तेमाल के उदाहरण हो सकते हैं. पैरामीटर के ब्यौरे को Markdown के तौर पर फ़ॉर्मैट किया जा सकता है.
nullable
boolean
ज़रूरी नहीं. इससे पता चलता है कि वैल्यू शून्य हो सकती है या नहीं.
enum[]
string
ज़रूरी नहीं. enum फ़ॉर्मैट में Type.STRING के एलिमेंट की संभावित वैल्यू. उदाहरण के लिए, हम Enum Direction को इस तरह से तय कर सकते हैं : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}
maxItems
string (int64 format)
ज़रूरी नहीं. Type.ARRAY के लिए, एलिमेंट की ज़्यादा से ज़्यादा संख्या.
minItems
string (int64 format)
ज़रूरी नहीं. Type.ARRAY के लिए एलिमेंट की कम से कम संख्या.
properties
map (key: string, value: object (Schema))
ज़रूरी नहीं. Type.OBJECT की प्रॉपर्टी.
एक ऑब्जेक्ट, जिसमें "key": value जोड़े की सूची शामिल हो. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
required[]
string
ज़रूरी नहीं. Type.OBJECT की ज़रूरी प्रॉपर्टी.
minProperties
string (int64 format)
ज़रूरी नहीं. Type.OBJECT के लिए प्रॉपर्टी की कम से कम संख्या.
maxProperties
string (int64 format)
ज़रूरी नहीं. Type.OBJECT के लिए प्रॉपर्टी की ज़्यादा से ज़्यादा संख्या.
minLength
string (int64 format)
ज़रूरी नहीं. TYPE.STRING के लिए स्कीमा फ़ील्ड. Type.STRING की कम से कम लंबाई
maxLength
string (int64 format)
ज़रूरी नहीं. Type.STRING की ज़्यादा से ज़्यादा लंबाई
pattern
string
ज़रूरी नहीं. Type.STRING का पैटर्न, ताकि किसी स्ट्रिंग को रेगुलर एक्सप्रेशन तक सीमित किया जा सके.
example
value (Value format)
ज़रूरी नहीं. ऑब्जेक्ट का उदाहरण. यह सिर्फ़ तब पॉप्युलेट होगा, जब ऑब्जेक्ट रूट हो.
anyOf[]
object (Schema)
ज़रूरी नहीं. वैल्यू की पुष्टि, सूची में मौजूद किसी भी (एक या उससे ज़्यादा) सबस्कीमा के हिसाब से की जानी चाहिए.
propertyOrdering[]
string
ज़रूरी नहीं. प्रॉपर्टी का क्रम. यह ओपन एपीआई स्पेसिफ़िकेशन में स्टैंडर्ड फ़ील्ड नहीं है. इसका इस्तेमाल, रिस्पॉन्स में प्रॉपर्टी के क्रम का पता लगाने के लिए किया जाता है.
default
value (Value format)
ज़रूरी नहीं. फ़ील्ड की डिफ़ॉल्ट वैल्यू. JSON स्कीमा के मुताबिक, इस फ़ील्ड का इस्तेमाल दस्तावेज़ जनरेट करने वालों के लिए किया जाता है. इससे पुष्टि पर कोई असर नहीं पड़ता. इसलिए, इसे यहां शामिल किया गया है और अनदेखा किया गया है, ताकि default फ़ील्ड वाले स्कीमा भेजने वाले डेवलपर को unknown-field से जुड़ी गड़बड़ियां न मिलें.
items
object (Schema)
ज़रूरी नहीं. Type.ARRAY के एलिमेंट का स्कीमा.
minimum
number
ज़रूरी नहीं. टाइप INTEGER और NUMBER के लिए स्कीमा फ़ील्ड, Type.INTEGER और Type.NUMBER की कम से कम वैल्यू
maximum
number
ज़रूरी नहीं. Type.INTEGER और Type.NUMBER की ज़्यादा से ज़्यादा वैल्यू
| JSON के काेड में दिखाना |
|---|
{ "type": enum ( |
टाइप
टाइप में, OpenAPI के डेटा टाइप की सूची होती है. इन्हें https://spec.openapis.org/oas/v3.0.3#data-types में बताया गया है
| Enums | |
|---|---|
TYPE_UNSPECIFIED |
यह तय नहीं किया गया है. इसका इस्तेमाल नहीं किया जाना चाहिए. |
STRING |
स्ट्रिंग टाइप. |
NUMBER |
नंबर टाइप. |
INTEGER |
पूर्णांक टाइप. |
BOOLEAN |
बूलियन टाइप. |
ARRAY |
ऐरे टाइप. |
OBJECT |
ऑब्जेक्ट का टाइप. |
NULL |
शून्य प्रकार. |
व्यवहार
इससे फ़ंक्शन के व्यवहार के बारे में पता चलता है. यह डिफ़ॉल्ट रूप से BLOCKING पर सेट होता है.
| Enums | |
|---|---|
UNSPECIFIED |
इस वैल्यू का इस्तेमाल नहीं किया गया है. |
BLOCKING |
अगर यह सेट है, तो सिस्टम बातचीत जारी रखने से पहले, फ़ंक्शन के जवाब का इंतज़ार करेगा. |
NON_BLOCKING |
अगर यह विकल्प सेट है, तो सिस्टम फ़ंक्शन के जवाब का इंतज़ार नहीं करेगा. इसके बजाय, यह फ़ंक्शन के जवाबों को मैनेज करने की कोशिश करेगा. ऐसा तब होगा, जब उपयोगकर्ता और मॉडल के बीच बातचीत जारी रहेगी. |
GoogleSearchRetrieval
यह टूल, Google की मदद से तैयार किया गया है. यह सार्वजनिक वेब डेटा को वापस पाने के लिए इस्तेमाल किया जाता है, ताकि जवाब को ज़्यादा भरोसेमंद बनाया जा सके.
dynamicRetrievalConfig
object (DynamicRetrievalConfig)
इससे दिए गए सोर्स के लिए, डाइनैमिक तरीके से डेटा पाने का कॉन्फ़िगरेशन तय किया जाता है.
| JSON के काेड में दिखाना |
|---|
{
"dynamicRetrievalConfig": {
object ( |
DynamicRetrievalConfig
इस कुकी में, डाइनैमिक तौर पर डेटा पाने की सुविधा को पसंद के मुताबिक बनाने के विकल्पों के बारे में बताया गया है.
mode
enum (Mode)
डाइनैमिक तौर पर डेटा पाने के लिए, अनुमान लगाने वाले टूल का इस्तेमाल किया जाता है.
dynamicThreshold
number
डाइनैमिक तौर पर डेटा पाने के लिए इस्तेमाल किया जाने वाला थ्रेशोल्ड. अगर यह सेट नहीं है, तो सिस्टम की डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाता है.
| JSON के काेड में दिखाना |
|---|
{
"mode": enum ( |
मोड
डाइनैमिक तौर पर डेटा पाने के लिए, अनुमान लगाने वाले टूल का इस्तेमाल किया जाता है.
| Enums | |
|---|---|
MODE_UNSPECIFIED |
डेटा हमेशा वापस पाने की सुविधा चालू रहती है. |
MODE_DYNAMIC |
सिर्फ़ तब डेटा वापस पाएं, जब सिस्टम को लगे कि ऐसा करना ज़रूरी है. |
CodeExecution
इस टाइप में कोई फ़ील्ड नहीं है.
यह एक ऐसा टूल है जो मॉडल से जनरेट किए गए कोड को लागू करता है. साथ ही, मॉडल को अपने-आप नतीजे दिखाता है.
ExecutableCode और CodeExecutionResult भी देखें. ये सिर्फ़ इस टूल का इस्तेमाल करने पर जनरेट होते हैं.
GoogleSearch
GoogleSearch टूल का टाइप. मॉडल में Google Search की सुविधा देने वाला टूल. Google की ओर से उपलब्ध कराया गया.
timeRangeFilter
object (Interval)
ज़रूरी नहीं. खोज के नतीजों को किसी खास समयसीमा के हिसाब से फ़िल्टर करें. अगर खरीदार शुरू होने का समय सेट करते हैं, तो उन्हें खत्म होने का समय भी सेट करना होगा. इसके उलट, अगर वे खत्म होने का समय सेट करते हैं, तो उन्हें शुरू होने का समय भी सेट करना होगा.
searchTypes
object (SearchTypes)
ज़रूरी नहीं. खोज के टाइप का वह सेट जिसे चालू करना है. अगर इस नीति को सेट नहीं किया जाता है, तो वेब पर खोज करने की सुविधा डिफ़ॉल्ट रूप से चालू होती है.
| JSON के काेड में दिखाना |
|---|
{ "timeRangeFilter": { object ( |
इंटरवल
यह टाइम इंटरवल को दिखाता है. इसे टाइमस्टैंप के तौर पर कोड किया जाता है. इसमें टाइमस्टैंप के शुरू होने का समय (शामिल है) और टाइमस्टैंप के खत्म होने का समय (शामिल नहीं है) होता है.
शुरू होने की तारीख, खत्म होने की तारीख से पहले या उसके बराबर होनी चाहिए. शुरू होने और खत्म होने का समय एक जैसा होने पर, इंटरवल खाली होता है. इसका मतलब है कि यह किसी भी समय से मेल नहीं खाता. शुरू और खत्म होने का समय तय न होने पर, अंतराल किसी भी समय से मेल खाता है.
startTime
string (Timestamp format)
ज़रूरी नहीं. समय अंतराल शुरू होने का समय शामिल है.
अगर इस इंटरवल के हिसाब से कोई टाइमस्टैंप दिया गया है, तो वह शुरू होने के समय के बराबर या उसके बाद का होना चाहिए.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
endTime
string (Timestamp format)
ज़रूरी नहीं. इंटरवल खत्म होने का समय (अलग से उपलब्ध).
अगर यह तय किया गया है, तो इस इंटरवल से मेल खाने वाला टाइमस्टैंप, खत्म होने के समय से पहले का होना चाहिए.
यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".
| JSON के काेड में दिखाना |
|---|
{ "startTime": string, "endTime": string } |
SearchTypes
GoogleSearch टूल पर अलग-अलग तरह की खोजें चालू की जा सकती हैं.
webSearch
object (WebSearch)
ज़रूरी नहीं. यह कुकी, वेब पर खोजने की सुविधा चालू करती है. सिर्फ़ टेक्स्ट वाले नतीजे दिखाए जाते हैं.
imageSearch
object (ImageSearch)
ज़रूरी नहीं. इस कुकी से इमेज सर्च की सुविधा चालू होती है. इमेज के बाइट वापस कर दिए जाते हैं.
| JSON के काेड में दिखाना |
|---|
{ "webSearch": { object ( |
WebSearch
इस टाइप में कोई फ़ील्ड नहीं है.
ग्राउंडिंग और उससे जुड़े कॉन्फ़िगरेशन के लिए स्टैंडर्ड वेब सर्च.
ImageSearch
इस टाइप में कोई फ़ील्ड नहीं है.
ग्राउंडिंग और उससे जुड़े कॉन्फ़िगरेशन के लिए इमेज खोज.
ComputerUse
कंप्यूटर के इस्तेमाल से जुड़ा टूल टाइप.
environment
enum (Environment)
ज़रूरी है. जिस एनवायरमेंट में काम किया जा रहा है.
excludedPredefinedFunctions[]
string
ज़रूरी नहीं. डिफ़ॉल्ट रूप से, पहले से तय किए गए फ़ंक्शन, फ़ाइनल मॉडल कॉल में शामिल होते हैं. इनमें से कुछ को, अपने-आप शामिल होने से साफ़ तौर पर रोका जा सकता है. इससे दो फ़ायदे हो सकते हैं: 1. ज़्यादा पाबंदी वाले / अलग ऐक्शन स्पेस का इस्तेमाल करना. 2. पहले से तय किए गए फ़ंक्शन की परिभाषाओं / निर्देशों को बेहतर बनाना.
| JSON के काेड में दिखाना |
|---|
{
"environment": enum ( |
परिवेश
यह उस एनवायरमेंट को दिखाता है जिसमें कार्रवाई की जा रही है. जैसे, वेब ब्राउज़र.
| Enums | |
|---|---|
ENVIRONMENT_UNSPECIFIED |
डिफ़ॉल्ट रूप से, यह ब्राउज़र पर सेट होता है. |
ENVIRONMENT_BROWSER |
यह वेब ब्राउज़र में काम करता है. |
UrlContext
इस टाइप में कोई फ़ील्ड नहीं है.
यह कुकी, यूआरएल के कॉन्टेक्स्ट को वापस पाने में मदद करती है.
FileSearch
यह FileSearch टूल है, जो सिमैंटिक रिट्रीवल कॉर्पस से जानकारी हासिल करता है. ImportFile API का इस्तेमाल करके, फ़ाइलों को सिमैंटिक रिट्रीवल कॉर्पस में इंपोर्ट किया जाता है.
fileSearchStoreNames[]
string
ज़रूरी है. उन fileSearchStores के नाम जिनसे डेटा वापस पाना है. उदाहरण: fileSearchStores/my-file-search-store-123
metadataFilter
string
ज़रूरी नहीं. सिमैंटिक तरीके से जानकारी पाने के लिए, दस्तावेज़ों और चंक पर लागू किया जाने वाला मेटाडेटा फ़िल्टर.
topK
integer
ज़रूरी नहीं. सेमैंटिक तरीके से खोजे गए कितने डेटा के हिस्से वापस पाने हैं.
| JSON के काेड में दिखाना |
|---|
{ "fileSearchStoreNames": [ string ], "metadataFilter": string, "topK": integer } |
McpServer
MCPServer एक ऐसा सर्वर होता है जिसे मॉडल, कार्रवाइयां करने के लिए कॉल कर सकता है. यह एक ऐसा सर्वर है जो एमसीपी प्रोटोकॉल लागू करता है. अगला आईडी: 6
name
string
MCPServer का नाम.
transport
Union type
transport इनमें से सिर्फ़ एक हो सकता है:streamableHttpTransport
object (StreamableHttpTransport)
एक ऐसा ट्रांसपोर्ट जो एचटीटीपी अनुरोधों और जवाबों को स्ट्रीम कर सकता है.
| JSON के काेड में दिखाना |
|---|
{
"name": string,
// transport
"streamableHttpTransport": {
object ( |
StreamableHttpTransport
एक ऐसा ट्रांसपोर्ट जो एचटीटीपी अनुरोधों और जवाबों को स्ट्रीम कर सकता है. अगला आईडी: 6
url
string
MCPServer एंडपॉइंट का पूरा यूआरएल. उदाहरण: "https://api.example.com/mcp"
headers
map (key: string, value: string)
ज़रूरी नहीं: अगर ज़रूरी हो, तो पुष्टि करने वाले हेडर, टाइमआउट वगैरह के लिए फ़ील्ड.
एक ऑब्जेक्ट, जिसमें "key": value जोड़े की सूची शामिल हो. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
timeout
string (Duration format)
सामान्य कार्रवाइयों के लिए एचटीटीपी टाइमआउट.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
sseReadTimeout
string (Duration format)
एसएसई रीड ऑपरेशन के लिए टाइम आउट.
यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंकों तक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".
terminateOnClose
boolean
ट्रांसपोर्ट बंद होने पर, क्लाइंट सेशन बंद करना है या नहीं.
| JSON के काेड में दिखाना |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
GoogleMaps
GoogleMaps टूल, उपयोगकर्ता की क्वेरी के लिए जियोस्पेशल कॉन्टेक्स्ट उपलब्ध कराता है.
enableWidget
boolean
ज़रूरी नहीं. जवाब के GroundingMetadata में विजेट कॉन्टेक्स्ट टोकन दिखाना है या नहीं. डेवलपर, विजेट कॉन्टेक्स्ट टोकन का इस्तेमाल करके Google Maps विजेट को रेंडर कर सकते हैं. इसमें उन जगहों से जुड़ा जियोस्पेशल कॉन्टेक्स्ट होता है जिनके बारे में मॉडल ने जवाब में बताया है.
| JSON के काेड में दिखाना |
|---|
{ "enableWidget": boolean } |
ToolConfig
टूल कॉन्फ़िगरेशन में ऐसे पैरामीटर होते हैं जिनसे अनुरोध में Tool के इस्तेमाल के बारे में जानकारी मिलती है.
functionCallingConfig
object (FunctionCallingConfig)
ज़रूरी नहीं. फ़ंक्शन कॉलिंग कॉन्फ़िगरेशन.
retrievalConfig
object (RetrievalConfig)
ज़रूरी नहीं. डेटा वापस पाने का कॉन्फ़िगरेशन.
includeServerSideToolInvocations
boolean
ज़रूरी नहीं. अगर यह वैल्यू सही है, तो एपीआई से मिले जवाब में, सर्वर-साइड टूल कॉल और जवाब शामिल होंगे. ये जवाब, Content मैसेज में शामिल होंगे. इससे क्लाइंट, सर्वर के टूल इंटरैक्शन को देख सकते हैं.
| JSON के काेड में दिखाना |
|---|
{ "functionCallingConfig": { object ( |
FunctionCallingConfig
फ़ंक्शन कॉल करने के तरीके के बारे में बताने के लिए कॉन्फ़िगरेशन.
mode
enum (Mode)
ज़रूरी नहीं. यह बताता है कि फ़ंक्शन कॉलिंग किस मोड में काम करनी चाहिए. अगर कोई वैल्यू तय नहीं की जाती है, तो डिफ़ॉल्ट वैल्यू AUTO पर सेट हो जाएगी.
allowedFunctionNames[]
string
ज़रूरी नहीं. फ़ंक्शन के नामों का एक सेट. इसे उपलब्ध कराने पर, मॉडल सिर्फ़ उन फ़ंक्शन को कॉल करेगा.
इसे सिर्फ़ तब सेट किया जाना चाहिए, जब मोड ANY या VALIDATED हो. फ़ंक्शन के नाम, [FunctionDeclaration.name] से मेल खाने चाहिए. इस विकल्प को सेट करने पर, मॉडल सिर्फ़ उन फ़ंक्शन के नाम के आधार पर फ़ंक्शन कॉल का अनुमान लगाएगा जिनकी अनुमति दी गई है.
| JSON के काेड में दिखाना |
|---|
{
"mode": enum ( |
मोड
यह फ़ंक्शन कॉल करने के तरीके के बारे में बताता है. इसके लिए, यह फ़ंक्शन कॉल करने का मोड तय करता है.
| Enums | |
|---|---|
MODE_UNSPECIFIED |
फ़ंक्शन कॉलिंग मोड की जानकारी नहीं दी गई है. इस वैल्यू का इस्तेमाल नहीं किया जाना चाहिए. |
AUTO |
मॉडल का डिफ़ॉल्ट व्यवहार, मॉडल यह तय करता है कि फ़ंक्शन कॉल या नैचुरल लैंग्वेज में जवाब का अनुमान लगाना है. |
ANY |
मॉडल को हमेशा सिर्फ़ फ़ंक्शन कॉल का अनुमान लगाने के लिए बाध्य किया जाता है. अगर "allowedFunctionNames" सेट किए गए हैं, तो अनुमानित फ़ंक्शन कॉल, "allowedFunctionNames" में से किसी एक तक सीमित रहेगा. ऐसा न होने पर, अनुमानित फ़ंक्शन कॉल, दिए गए "functionDeclarations" में से कोई एक होगा. |
NONE |
मॉडल, किसी भी फ़ंक्शन कॉल का अनुमान नहीं लगाएगा. मॉडल का व्यवहार वैसा ही होता है जैसा फ़ंक्शन के किसी भी एलान को पास न करने पर होता है. |
VALIDATED |
मॉडल यह तय करता है कि फ़ंक्शन कॉल का अनुमान लगाना है या सामान्य भाषा में जवाब देना है. हालांकि, यह फ़ंक्शन कॉल की पुष्टि, सीमित डिकोडिंग की मदद से करेगा. अगर "allowedFunctionNames" सेट किए गए हैं, तो अनुमानित फ़ंक्शन कॉल, "allowedFunctionNames" में से किसी एक तक सीमित रहेगा. ऐसा न होने पर, अनुमानित फ़ंक्शन कॉल, दिए गए "functionDeclarations" में से कोई एक होगा. |
RetrievalConfig
डेटा वापस पाने का कॉन्फ़िगरेशन.
latLng
object (LatLng)
ज़रूरी नहीं. उपयोगकर्ता की जगह.
languageCode
string
ज़रूरी नहीं. उपयोगकर्ता की भाषा का कोड. कॉन्टेंट के लिए भाषा कोड. BCP47 के हिसाब से तय किए गए भाषा टैग का इस्तेमाल करें.
| JSON के काेड में दिखाना |
|---|
{
"latLng": {
object ( |
LatLng
यह अक्षांश/देशांतर की जोड़ी को दिखाता है. इसे डबल के तौर पर दिखाया जाता है, ताकि अक्षांश और देशांतर की डिग्री को दिखाया जा सके. जब तक अलग से कोई जानकारी न दी जाए, तब तक इस ऑब्जेक्ट को WGS84 स्टैंडर्ड के मुताबिक होना चाहिए. वैल्यू, सामान्य की गई रेंज में होनी चाहिए.
latitude
number
डिग्री में अक्षांश. यह [-90.0, +90.0] की रेंज में होना चाहिए.
longitude
number
डिग्री में देशांतर. यह [-180.0, +180.0] की रेंज में होना चाहिए.
| JSON के काेड में दिखाना |
|---|
{ "latitude": number, "longitude": number } |
UsageMetadata
कैश मेमोरी में सेव किए गए कॉन्टेंट के इस्तेमाल से जुड़ा मेटाडेटा.
totalTokenCount
integer
कैश किए गए कॉन्टेंट के लिए इस्तेमाल किए गए टोकन की कुल संख्या.
| JSON के काेड में दिखाना |
|---|
{ "totalTokenCount": integer } |