Gemini 3.5 Flash में नया क्या है

3.6 Flash और 3.5 Flash-Lite के बारे में जानकारी देने वाला यह पेज

Gemini 3.5 Flash, सामान्य तौर पर उपलब्ध (जीए) है. यह स्टेबल है और बड़े पैमाने पर प्रोडक्शन में इस्तेमाल किया जा सकता है. यह हमारा सबसे ऐडवांस Flash मॉडल है. यह एजेंटिक एक्ज़ीक्यूशन, कोडिंग, और लंबे समय तक चलने वाले टास्क को बड़े पैमाने पर पूरा करने में बेहतरीन परफ़ॉर्मेंस देता है.

इस गाइड में, Gemini 3.5 Flash में किए गए सुधारों, एपीआई में हुए बदलावों, और माइग्रेशन के बारे में जानकारी दी गई है.

नया मॉडल

मॉडल मॉडल आईडी ब्यौरा
Gemini 3.5 Flash gemini-3.5-flash यह हमारा सबसे ऐडवांस मॉडल है. यह एजेंटिक और कोडिंग से जुड़े टास्क को बड़े पैमाने पर पूरा करने में बेहतरीन परफ़ॉर्मेंस देता है.

Gemini 3.5 Flash, 10 लाख टोकन वाली कॉन्टेक्स्ट विंडो, ज़्यादा से ज़्यादा 65 हज़ार आउटपुट टोकन, सूझ-बूझ वाले मॉडल, और Gemini 3 Flash के जैसे ही टूल और प्लैटफ़ॉर्म की सुविधाओं के साथ काम करता है, इसमें कंप्यूटर इस्तेमाल करने की सुविधा (प्रीव्यू) भी शामिल है. पूरी जानकारी के लिए, मॉडल की खास जानकारी देखें. कीमत की जानकारी के लिए, कीमत तय करने से जुड़ा पेज देखें.

क्विकस्टार्ट

इस गाइड में दिए गए सभी उदाहरणों में, GenerateContent API का इस्तेमाल किया गया है. Interactions API भी काम करता है. इसके लिए भी, कॉन्फ़िगरेशन के वही विकल्प और सुझाव लागू होते हैं.

Python

from google import genai

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Explain how parallel agentic execution works in three sentences.",
)
print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.5-flash",
    contents: "Explain how parallel agentic execution works in three sentences.",
  });
  console.log(response.text);
}

main();

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [{
      "parts": [{"text": "Explain how parallel agentic execution works in three sentences."}]
    }]
  }'

नया क्या है

  • बेहतरीन परफ़ॉर्मेंस: यह हमारा सबसे ऐडवांस Flash मॉडल है. इसे एजेंटिक और कोडिंग से जुड़े टास्क को बड़े पैमाने पर पूरा करने के लिए ऑप्टिमाइज़ किया गया है.
  • एजेंटिक एक्ज़ीक्यूशन: सब-एजेंट डिप्लॉयमेंट, समस्या हल करना, और बड़े पैमाने पर तेज़ी से एजेंटिक लूप बनाना.
  • कोडिंग: कोडिंग के बार-बार होने वाले साइकल, तेज़ी से एक्सप्लोर करना, और प्रोटोटाइप बनाना, ताकि अलग-अलग पाथ की जांच की जा सके और डाइनैमिक तरीके से समाधान खोजे जा सकें.
  • लंबे समय तक चलने वाले टास्क: मल्टी-स्टेप वर्कफ़्लो और बड़े पैमाने पर टूल का इस्तेमाल.
  • विचार को बनाए रखना: मॉडल, कई बार की बातचीत के दौरान, बीच-बीच में की गई रीज़निंग को अपने-आप बनाए रखता है. एपीआई में कोई बदलाव करने की ज़रूरत नहीं है.
  • मेहनत के लेवल की नई डिफ़ॉल्ट सेटिंग: सूझ-बूझ वाले मॉडल के लिए, मेहनत के लेवल की डिफ़ॉल्ट सेटिंग को high से बदलकर medium कर दिया गया है. ज़्यादा जानकारी के लिए, मेहनत के लेवल की नई डिफ़ॉल्ट सेटिंग देखें.
  • बेहतर low रीज़निंग: low को अब कोड और एजेंटिक टास्क के लिए काफ़ी बेहतर बनाया गया है. इसके लिए, कम चरणों की ज़रूरत होती है. साथ ही, यह कम समय में और कम लागत में बेहतर क्वालिटी देता है.
  • जीए रिलीज़: बड़े पैमाने पर प्रोडक्शन में इस्तेमाल करने के लिए स्टेबल मॉडल.

सही Flash मॉडल चुनना

Gemini 3.5 Flash, हमारा सबसे ऐडवांस और बेहतरीन Flash मॉडल है. हालांकि, अलग-अलग इस्तेमाल के उदाहरणों के लिए, लागत और समय की अलग-अलग ज़रूरतें हो सकती हैं.

  • Gemini 3.1 Flash-Lite: कम लागत वाले, ज़्यादा वॉल्यूम वाले टास्क के लिए, जिनके लिए 3.5 Flash की ऐडवांस रीज़निंग की गहराई की ज़रूरत नहीं होती, हम Gemini 3.1 Flash-Lite का इस्तेमाल करने का सुझाव देते हैं. यह एक स्टेबल, लंबे समय तक चलने वाला मॉडल है, जिसे बेहतर परफ़ॉर्मेंस के लिए ऑप्टिमाइज़ किया गया है. ज़्यादा जानकारी के लिए, Flash-Lite की डेवलपर गाइड देखें.
  • Gemini 3 Flash (प्रीव्यू): हालांकि, हम जीए की स्टेबिलिटी और बेहतर गहराई से विश्लेषण के लिए, 3.5 Flash पर माइग्रेट करने का सुझाव देते हैं. फिर भी, Gemini 3 Flash (प्रीव्यू) उन डेवलपर के लिए उपलब्ध है जो प्रीव्यू मॉडल के साथ टेस्टिंग जारी रखना चाहते हैं.

व्यवहार में हुए बदलाव

मेहनत के लेवल की नई डिफ़ॉल्ट सेटिंग: medium

सूझ-बूझ वाले मॉडल के लिए, मेहनत के लेवल की डिफ़ॉल्ट सेटिंग को अब medium कर दिया गया है. इसे Gemini 3 Flash (प्रीव्यू) में high से बदलकर medium किया गया है. medium लेवल की रीज़निंग से, अलग-अलग तरह के टास्क के लिए बहुत अच्छे नतीजे मिलते हैं. साथ ही, यह तेज़ी से और कम लागत में काम करता है. मुश्किल समस्याओं के लिए, high लेवल की रीज़निंग से मॉडल को ज़्यादा गहराई से सोचने में मदद मिलती है.

मेहनत का लेवल कब इस्तेमाल करें
minimal जवाब देने की स्पीड के लिए ऑप्टिमाइज़ किया गया है. चैट जैसे इस्तेमाल के उदाहरण, सटीक जवाब, आसान टूल कॉल.
low कोडिंग और एजेंटिक टास्क के लिए, जिनमें कम समय और कम चरणों की ज़रूरत होती है. यह विश्लेषण और लिखने से जुड़े उन टास्क के लिए भी अच्छा काम करता है जिनमें कुछ सोच-विचार की ज़रूरत होती है.
medium (डिफ़ॉल्ट) ज़्यादातर टास्क के लिए सबसे अच्छी क्वालिटी. मुश्किल कोड और एजेंटिक इस्तेमाल के उदाहरणों के लिए सुझाव दिया जाता है.
high मॉडल की सोचने और टूल का इस्तेमाल करने की क्षमता को बढ़ाता है. मुश्किल रीज़निंग, मुश्किल गणित के सवालों, और सबसे मुश्किल कोड या एजेंट टास्क के लिए सबसे अच्छा है. इससे ज़्यादा सोच-विचार और फ़ंक्शन कॉल किए जा सकते हैं.

डिफ़ॉल्ट सेटिंग को बदलने के लिए, अपने कॉन्फ़िगरेशन में thinking_level सेट करें:

Python

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Prove that the square root of 2 is irrational.",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(thinking_level="high")
    ),
)

print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3.5-flash",
    contents: "Prove that the square root of 2 is irrational.",
    config: {
      thinkingConfig: {
        thinkingLevel: "HIGH",
      },
    },
  });
  console.log(response.text);
}

main();

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [{
      "parts": [{"text": "Prove that the square root of 2 is irrational."}]
    }],
    "generationConfig": {
      "thinkingConfig": {
        "thinkingLevel": "HIGH"
      }
    }
  }'

यहां दी गई टेबल में, हर मॉडल के लिए काम करने वाले रीज़निंग के लेवल दिखाए गए हैं:

रीज़निंग का लेवल Gemini 3.5 Flash Gemini 3.1 Pro Gemini 3.1 Flash-Lite Gemini 3 Flash ब्यौरा
minimal काम करता है काम नहीं करता है काम करता है (डिफ़ॉल्ट) काम करता है ज़्यादातर क्वेरी के लिए, "बिना सोचे-समझे जवाब देने" की सेटिंग से मैच करता है. ध्यान दें, minimal लेवल की रीज़निंग में, यह ज़रूरी नहीं है कि मॉडल बिना सोचे-समझे जवाब दे. हो सकता है कि मॉडल, मुश्किल टास्क के लिए बहुत कम रीज़निंग करे.
low काम करता है काम करता है काम करता है काम करता है इससे समय और लागत कम होती है.
medium काम करता है (डिफ़ॉल्ट) काम करता है काम करता है काम करता है ज़्यादातर टास्क के लिए, बैलेंस रीज़निंग.
high काम करता है (डाइनैमिक) काम करता है (डिफ़ॉल्ट, डाइनैमिक) काम करता है (डाइनैमिक) काम करता है (डिफ़ॉल्ट, डाइनैमिक) रीज़निंग की गहराई को बढ़ाता है.

विचार को बनाए रखना

मॉडल, कई बार की बातचीत के दौरान, बीच-बीच में की गई रीज़निंग को अपने-आप बनाए रखता है. बातचीत के इतिहास में मौजूद होने पर, गहराई से विश्लेषण का कॉन्टेक्स्ट आगे बढ़ता है. इससे, मुश्किल मल्टी-स्टेप टास्क की परफ़ॉर्मेंस बेहतर होती है. जैसे, बार-बार डीबग करना और कोड रीफ़ैक्टर करना. एपीआई में कोई बदलाव करने की ज़रूरत नहीं है:

  • Interactions API: इसमें, रीज़निंग अपने-आप सेव हो जाती है. व्यवहार में कोई बदलाव नहीं हुआ है.
  • GenerateContent API: Gemini 3.5 Flash से, मॉडल, बातचीत के इतिहास में रीज़निंग के सिग्नेचर मौजूद होने पर, पिछले सभी चरणों से रीज़निंग के कॉन्टेक्स्ट का इस्तेमाल करता है. इसे चालू करने के लिए, `contents` में बातचीत का पूरा, बिना बदलाव वाला इतिहास (रीज़निंग के सिग्नेचर शामिल हैं) पास करेंcontents. एसडीके, इसे अपने-आप मैनेज करते हैं.

Gemini 3.x में पैरामीटर के अपडेट और सबसे सही तरीके

ये Gemini 3.x के सभी मॉडल पर लागू होते हैं. इनमें Gemini 3.5 Flash भी शामिल है.

  • temperature, top_p, top_k: हमारा सुझाव है कि इनकी डिफ़ॉल्ट वैल्यू न बदलें. Gemini 3 की रीज़निंग की क्षमताओं को डिफ़ॉल्ट सेटिंग के लिए ऑप्टिमाइज़ किया गया है.
  • thinking_budget के बजाय, thinking_level का इस्तेमाल करें.
  • फ़ंक्शन कॉलिंग के जवाबों को मैच करना: id, name, और जवाबों की संख्या पहले किए गए कॉल से मैच होनी चाहिए.
  • मल्टीमोडल फ़ंक्शन के जवाब: मल्टीमोडल कॉन्टेंट को फ़ंक्शन के जवाब में शामिल करें, न कि उसके बाहर.
  • फ़ंक्शन के जवाबों में इनलाइन निर्देश: इन्हें फ़ंक्शन के जवाब के टेक्स्ट में जोड़ें, न कि अलग-अलग हिस्सों के तौर पर.
  • टूल कॉल की संख्या कम करें: एजेंटिक वर्कफ़्लो में टूल कॉल की संख्या कम करने के लिए, रीज़निंग के लेवल को कम करें या सिस्टम के निर्देशों के साथ एक्सपेरिमेंट करें.

अपना कोड अपडेट करने का तरीका जानने के लिए, नीचे दिए गए सेक्शन देखें.

सैंपलिंग पैरामीटर (अब इनका इस्तेमाल करने का सुझाव नहीं दिया जाता)

temperature, top_p, और top_k पैरामीटर का इस्तेमाल अब Gemini 3.x के सभी मॉडल के लिए करने का सुझाव नहीं दिया जाता. Gemini 3 की रीज़निंग की क्षमताओं को डिफ़ॉल्ट सेटिंग के लिए ऑप्टिमाइज़ किया गया है. सभी अनुरोधों से इन पैरामीटर को हटाएं.

# ⚠️ Remove these parameters (not recommended)
config = types.GenerateContentConfig(
    temperature=0.7,
    top_p=0.9,
    top_k=40
)

डिटरमिनिज़म पक्का करने के लिए, हमारा सुझाव है कि अपने इस्तेमाल के उदाहरण के लिए, साफ़ तौर पर नियमों के साथ सिस्टम का निर्देश तय करें.

thinking_budget (अब इसका इस्तेमाल करने का सुझाव नहीं दिया जाता)

thinking_budget पैरामीटर का इस्तेमाल अब Gemini 3.x के सभी मॉडल के लिए करने का सुझाव नहीं दिया जाता. इसके बजाय, thinking_level स्ट्रिंग एनम का इस्तेमाल करें.

# ⚠️ Before (not recommended)
config = types.GenerateContentConfig(
    thinking_config=types.ThinkingConfig(thinking_budget=7500)
)

# ✅ After
config = types.GenerateContentConfig(
    thinking_config=types.ThinkingConfig(thinking_level="medium")
)

उपलब्ध वैल्यू: minimal, low, medium (डिफ़ॉल्ट), और high.

फ़ंक्शन कॉलिंग: जवाबों को सख्ती से मैच करना

Interactions API में, फ़ंक्शन के जवाब मैच न होने पर पहले से ही गड़बड़ी दिखती है. GenerateContent API में अब तक गड़बड़ी नहीं दिखती है. हालांकि, जवाब मैच न होने पर, मॉडल ज़्यादातर मामलों में finish_reason: STOP के साथ खाली जवाब देता है. हमेशा इन कन्वर्ज़न का पालन करें:

आवश्यकता विवरण
id शामिल करें हर FunctionResponse में, उससे जुड़े FunctionCall का id शामिल होना चाहिए
name मैच करें जवाब में मौजूद name, कॉल में मौजूद name से मैच होना चाहिए
संख्याएं मैच करें हर FunctionCall के लिए, ठीक एक FunctionResponse लौटाएं

Python

# ✅ Include matching id and name in the function response
final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={"result": result},
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Include matching id and name in the function response
const functionResponsePart = {
  functionResponse: {
    name: toolCall.name,
    response: { result: result },
    id: toolCall.id,
  },
};

const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    { role: "user", parts: [functionResponsePart] },
  ],
  config: config,
});

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [
      {"role": "user", "parts": [{"text": "..."}]},
      {"role": "model", "parts": [{"functionCall": {"name": "my_function", "args": {...}}}]},
      {"role": "user", "parts": [{"functionResponse": {"name": "my_function", "id": "call_id", "response": {"result": "..."}}}]}
    ]
  }'

मल्टीमोडल फ़ंक्शन के जवाब

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

Python

# ✅ Include multimodal content in the function response
final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={
                    "result": "instrument.jpg",
                    "image": base64_image_data,
                },
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Include multimodal content in the function response
const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    {
      role: "user",
      parts: [{
        functionResponse: {
          name: toolCall.name,
          id: toolCall.id,
          response: {
            result: "instrument.jpg",
            image: base64ImageData,
          },
        },
      }],
    },
  ],
  config: config,
});

फ़ंक्शन के जवाबों में इनलाइन निर्देश

हम अक्सर देखते हैं कि क्लाइंट, फ़ंक्शन के जवाबों के साथ-साथ, बाद के Parts के तौर पर अतिरिक्त निर्देश देते हैं. इससे मॉडल का व्यवहार उम्मीद के मुताबिक नहीं होता.जैसे, रीज़निंग लीक होना. साथ ही, इससे आउटपुट की क्वालिटी कम हो सकती है. इसके बजाय, किसी भी अतिरिक्त निर्देश को फ़ंक्शन के जवाब के टेक्स्ट के आखिर में दो नई लाइनों से अलग करके जोड़ें.

Python

# ✅ Append inline instructions to the end of the function response separated by two newlines
result_text = f"{json.dumps(result)}\n\n<your inline instructions>"

final_response = client.models.generate_content(
    model="gemini-3.5-flash",
    config=config,
    contents=[
        *previous_contents,
        response.candidates[0].content,
        types.Content(role="user", parts=[
            types.Part.from_function_response(
                name=tool_call.name,
                response={"result": result_text},
                id=tool_call.id,
            )
        ]),
    ],
)

JavaScript

// ✅ Append inline instructions to the end of the function response separated by two newlines
const resultText = `${JSON.stringify(result)}\n\n<your inline instructions>`;

const finalResponse = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: [
    ...previousContents,
    { role: "model", parts: [{ functionCall: toolCall }] },
    {
      role: "user",
      parts: [{
        functionResponse: {
          name: toolCall.name,
          id: toolCall.id,
          response: { result: resultText },
        },
      }],
    },
  ],
  config: config,
});

टूल कॉल की संख्या कम करना

अगर आपको टूल कॉल का ज़्यादा इस्तेमाल होने की समस्या आ रही है, तो इन्हें कम करने के लिए दो तकनीकों का इस्तेमाल किया जा सकता है:

  1. रीज़निंग के लेवल को कम करके शुरू करें (medium, low, या minimal): रीज़निंग के लेवल ज़्यादा होने पर, मॉडल, एक्सप्लोर करने और पुष्टि करने के लिए ज़्यादा टूल का इस्तेमाल करता है. इसलिए, लेवल कम करने से टूल कॉल की संख्या कम हो सकती है.

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

    You have a limited action budget of <n> tool calls. Use them efficiently.
    

माइग्रेशन की चेकलिस्ट

Gemini 3 Flash (प्रीव्यू) से माइग्रेट करना

  • मॉडल का नाम अपडेट करें: gemini-3-flash-previewgemini-3.5-flash
  • कीमत की समीक्षा करें. Gemini 3.5 Flash, Gemini 3 Flash (प्रीव्यू) से ज़्यादा महंगा है. अगर आपके इस्तेमाल के उदाहरण में लागत बहुत मायने रखती है, तो इसके बजाय Gemini 3.1 Flash-Lite पर माइग्रेट करने पर विचार करें. ज़्यादा जानकारी के लिए, कीमत तय करने से जुड़ा पेज देखें.
  • अपने कॉन्फ़िगरेशन से temperature, top_p, top_k हटाएं. अब इनका इस्तेमाल करने का सुझाव नहीं दिया जाता.
  • thinking_budget को thinking_level से बदलें.
  • FunctionResponse के सभी हिस्सों में id और मैचिंग name जोड़ें.
  • अपने प्रॉम्प्ट की जांच करें. मेहनत के लेवल की डिफ़ॉल्ट सेटिंग को high से बदलकर medium कर दिया गया है. इसलिए, क्वालिटी, स्पीड, और लागत की पुष्टि करें.
  • रीज़निंग को सेव करने की सुविधा अब डिफ़ॉल्ट रूप से चालू है. रीज़निंग का कॉन्टेक्स्ट, चरणों के बीच आगे बढ़ता है. इससे परफ़ॉर्मेंस बेहतर होती है, लेकिन टोकन का इस्तेमाल बढ़ सकता है.
  • टूल कॉल की संख्या कम करें: रीज़निंग के लेवल को कम करके शुरू करें (medium, low, या minimal). अगर टूल कॉल का ज़्यादा इस्तेमाल होने की समस्या बनी रहती है, तो टूल के इस्तेमाल पर पाबंदी लगाने के लिए, सिस्टम का निर्देश जोड़ें.
  • कंप्यूटर इस्तेमाल करने की सुविधा उपलब्ध है.

Gemini 2.5 से माइग्रेट करना

ऊपर दी गई सभी जानकारी के अलावा, यह भी देखें:

  • प्रॉम्प्ट को आसान बनाएं. अगर आपने रीज़निंग को मजबूर करने के लिए, चेन-ऑफ़-थॉट प्रॉम्प्ट इंजीनियरिंग का इस्तेमाल किया है, तो इसके बजाय आसान प्रॉम्प्ट के साथ thinking_level: "medium" या "high" आज़माएं.
  • पीडीएफ़ और मीडिया के वर्कलोड की जांच करें. अगर आपने घने दस्तावेज़ को पार्स करने के लिए, किसी खास व्यवहार पर भरोसा किया है, तो सटीक जानकारी मिलती रहे, इसके लिए media_resolution_high सेटिंग की जांच करें. Gemini 3 की डिफ़ॉल्ट सेटिंग पर माइग्रेट करने से, पीडीएफ़ के लिए टोकन का इस्तेमाल बढ़ सकता है. हालांकि, वीडियो के लिए यह कम हो सकता है. अगर अनुरोध, कॉन्टेक्स्ट विंडो से ज़्यादा हैं, तो साफ़ तौर पर media_resolution कम करें. ज़्यादा जानकारी के लिए, मीडिया रिज़ॉल्यूशन के दस्तावेज़ देखें.
  • टूल के संयुक्त इस्तेमाल का फ़ायदा लें. एक ही अनुरोध में, Google Search, यूआरएल कॉन्टेक्स्ट, कोड एक्ज़ीक्यूशन, और कस्टम फ़ंक्शन का इस्तेमाल किया जा सकता है.
  • अगर मल्टीमोडल फ़ंक्शन के जवाबों का इस्तेमाल किया जा रहा है, तो मल्टीमोडल कॉन्टेंट को फ़ंक्शन के जवाब के हिस्सों में शामिल करें, न कि उनके साथ.
  • अगर फ़ंक्शन के जवाबों के साथ इनलाइन निर्देशों का इस्तेमाल किया जा रहा है, तो उन्हें फ़ंक्शन के जवाब के टेक्स्ट में दो नई लाइनों से अलग करके जोड़ें, न कि अलग-अलग हिस्सों के तौर पर.
  • Gemini 3.x में, इमेज सेगमेंटेशन की सुविधा उपलब्ध नहीं है. सेगमेंटेशन वर्कलोड के लिए, Gemini 2.5 Flash का इस्तेमाल, बिना सोचे-समझे जवाब देने की सेटिंग के साथ या Gemini Robotics-ER 1.6 का इस्तेमाल जारी रखें.
  • अपने कॉन्फ़िगरेशन से candidate_count हटाएं (Gemini 3.x में मौजूद नहीं)

Gemini 3 फ़ैमिली की सुविधाएं

Gemini 3.5 Flash में, Gemini 3 फ़ैमिली की सभी क्षमताएं शामिल हैं. इनमें कंप्यूटर इस्तेमाल करने की सुविधा भी शामिल है. Gemini 3 में जोड़ी गई वे सुविधाएं जो आगे भी उपलब्ध रहेंगी:

  • रीज़निंग: एपीआई कॉल के दौरान, एन्क्रिप्टेड रीज़निंग का कॉन्टेक्स्ट सेव रहता है. Interactions API में यह सुविधा अपने-आप काम करती है. GenerateContent में यह सुविधा, डिफ़ॉल्ट रूप से काम करती है.
  • टूल के साथ स्ट्रक्चर्ड आउटपुट: JSON मोड को पहले से मौजूद टूल (Search, यूआरएल कॉन्टेक्स्ट, कोड एक्ज़ीक्यूशन, फ़ंक्शन कॉलिंग) के साथ मिलाएं.
  • मल्टीमोडल फ़ंक्शन के जवाब: फ़ंक्शन कॉल के नतीजों में इमेज, ऑडियो, और अन्य मीडिया लौटाएं.
  • इमेज के साथ कोड एक्ज़ीक्यूशन: इमेज को प्रोसेस करने और जनरेट करने वाले कोड को एक्ज़ीक्यूट करें.
  • टूल का संयुक्त इस्तेमाल: एक ही अनुरोध में, पहले से मौजूद टूल और कस्टम फ़ंक्शन कॉलिंग का इस्तेमाल करें.
  • मीडिया रिज़ॉल्यूशन: इमेज, वीडियो, और पीडीएफ़ इनपुट के लिए टोकन के बंटवारे पर सटीक कंट्रोल. Gemini 3 मॉडल, अलग-अलग क्वालिटी वाले प्रॉम्प्ट के लिए, हर कॉन्टेंट आइटम के हिसाब से रिज़ॉल्यूशन सेटिंग (low, medium, high, ultra_high) के साथ काम करते हैं.
  • रीज़निंग के सिग्नेचर: मॉडल की इंटरनल रीज़निंग के एन्क्रिप्टेड वर्शन. सिलसिलेवार बातचीत वाली फ़ंक्शन कॉलिंग के लिए ज़रूरी है. आधिकारिक एसडीके, इसे अपने-आप मैनेज करते हैं.

प्रॉम्प्ट लिखने के सबसे सही तरीके

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

  • सटीक निर्देश: संक्षिप्त निर्देश दें. Gemini 3.x, सीधे और साफ़ तौर पर दिए गए निर्देशों के लिए सबसे अच्छा जवाब देता है. पुराने मॉडल के लिए डिज़ाइन की गई, ज़्यादा जानकारी वाली या मुश्किल प्रॉम्प्ट इंजीनियरिंग तकनीकों की वजह से, मॉडल ज़्यादा विश्लेषण कर सकता है.
  • आउटपुट की जानकारी: डिफ़ॉल्ट रूप से, Gemini 3.x कम जानकारी देता है और सीधे, असरदार जवाब देता है. अगर आपके इस्तेमाल के उदाहरण के लिए, बातचीत के लहजे की ज़रूरत है, तो अपने प्रॉम्प्ट में मॉडल को साफ़ तौर पर निर्देश दें. उदाहरण के लिए, "इसे एक मददगार और बातूनी असिस्टेंट के तौर पर समझाएं".
  • कॉन्टेक्स्ट मैनेजमेंट: बड़े डेटासेट (जैसे, पूरी किताबें, कोडबेस या लंबे वीडियो) के साथ काम करते समय, अपने खास निर्देश या सवाल, डेटा कॉन्टेक्स्ट के बाद, प्रॉम्प्ट के आखिर में रखें. अपने सवाल की शुरुआत, "पिछली जानकारी के आधार पर..." जैसे वाक्यांश से करके, मॉडल की रीज़निंग को ऐंकर करें.

प्रॉम्प्ट इंजीनियरिंग की गाइड में, प्रॉम्प्ट डिज़ाइन की रणनीतियों के बारे में ज़्यादा जानें.

सीमाएं

  • Gemini 3.x में, इमेज सेगमेंटेशन की सुविधा उपलब्ध नहीं है. सेगमेंटेशन वर्कलोड के लिए, Gemini 2.5 Flash का इस्तेमाल, बिना सोचे-समझे जवाब देने की सेटिंग के साथ या Gemini Robotics-ER 1.6 का इस्तेमाल जारी रखें.

अक्सर पूछे जाने वाले सवाल

  1. Gemini 3.5 Flash के लिए, नॉलेज कटऑफ़ क्या है? Gemini 3.5 Flash के लिए, नॉलेज कटऑफ़ जनवरी 2025 है. हाल ही की जानकारी के लिए, Search Grounding टूल का इस्तेमाल करें.

  2. कॉन्टेक्स्ट विंडो की सीमाएं क्या हैं? Gemini 3.5 Flash, 10 लाख टोकन वाली इनपुट कॉन्टेक्स्ट विंडो और ज़्यादा से ज़्यादा 65 हज़ार आउटपुट टोकन के साथ काम करता है.

  3. क्या मेरा पुराना thinking_budget कोड अब भी काम करेगा? हां, thinking_budget अब भी बैकवर्ड कंपैटिबिलिटी के लिए काम करता है. हालांकि, ज़्यादा सटीक परफ़ॉर्मेंस के लिए, हमारा सुझाव है कि thinking_level पर माइग्रेट करें. एक ही अनुरोध में, दोनों का इस्तेमाल न करें.

  4. क्या Gemini 3.5 Flash, बैच एपीआई के साथ काम करता है? हां. ज़्यादा जानकारी के लिए, बैच एपीआई की गाइड देखें.

  5. क्या कॉन्टेक्स्ट कैशिंग की सुविधा उपलब्ध है? हां, कॉन्टेक्स्ट कैशिंग की सुविधा उपलब्ध है.

  6. कौनसे टूल काम करते हैं? Gemini 3.5 Flash Google Search, Google Maps के साथ Grounding, फ़ाइल सर्च, कोड एक्ज़ीक्यूशन, यूआरएल कॉन्टेक्स्ट, और स्टैंडर्ड फ़ंक्शन कॉलिंग के साथ काम करता है, जिसमें टूल का संयुक्त इस्तेमाल, और कंप्यूटर इस्तेमाल करने की सुविधा भी शामिल है.

अगले चरण