Gemini की सूझ-बूझ वाली सुविधा

Gemini 3 और 2.5 सीरीज़ के मॉडल, अंदरूनी "सोचने की प्रक्रिया" का इस्तेमाल करते हैं. इससे उनकी रीज़निंग और मल्टी-स्टेप प्लानिंग की क्षमताओं में काफ़ी सुधार होता है. इस वजह से, ये मॉडल कोडिंग, ऐडवांस लेवल की गणित, और डेटा विश्लेषण जैसे मुश्किल कामों के लिए बहुत कारगर साबित होते हैं.

इस गाइड में, Gemini API का इस्तेमाल करके, Gemini की सूझ-बूझ वाली सुविधाओं के साथ काम करने का तरीका बताया गया है.

सूझ-बूझ वाली सुविधा का इस्तेमाल करके कॉन्टेंट जनरेट करना

सूझ-बूझ वाले मॉडल के साथ अनुरोध शुरू करना, कॉन्टेंट जनरेट करने के किसी अन्य अनुरोध की तरह ही होता है. मुख्य अंतर, model फ़ील्ड में, सूझ-बूझ वाली सुविधा के साथ काम करने वाले किसी मॉडल को तय करने में होता है:

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Explain the concept of Occam's Razor and provide a simple, everyday example."
)
print(interaction.steps[-1].content[0].text)

JavaScript

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

const client = new GoogleGenAI({});

const interaction = await client.interactions.create({
    model: "gemini-3-flash-preview",
    input: "Explain the concept of Occam's Razor and provide a simple, everyday example."
});
console.log(interaction.steps.at(-1).content[0].text);

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "Explain the concept of Occam'\''s Razor and provide a simple example."
  }'

सूझ-बूझ से बनाई गई खास जानकारी

सूझ-बूझ से बनाई गई खास जानकारी से, मॉडल की इंटरनल रीज़निंग प्रोसेस के बारे में अहम जानकारी मिलती है. डिफ़ॉल्ट रूप से, सिर्फ़ फ़ाइनल आउटपुट दिखता है. thinking_summaries की मदद से, सूझ-बूझ से बनाई गई खास जानकारी की सुविधा चालू की जा सकती है:

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="What is the sum of the first 50 prime numbers?",
    generation_config={
        "thinking_summaries": "auto"
    }
)

for step in interaction.steps:
    if step.type == "thought":
        print("Thought summary:")
        for content_block in step.summary:
            if content_block.type == "text":
                print(content_block.text)
        print()
    elif step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "text":
                print("Answer:")
                print(content_block.text)
                print()

JavaScript

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

const client = new GoogleGenAI({});

const interaction = await client.interactions.create({
    model: "gemini-3-flash-preview",
    input: "What is the sum of the first 50 prime numbers?",
    generationConfig: {
        thinkingSummaries: "auto"
    }
});

for (const step of interaction.steps) {
    if (step.type === "thought") {
        console.log("Thought summary:");
        for (const contentBlock of step.summary) {
            if (contentBlock.type === "text") console.log(contentBlock.text);
        }
    } else if (step.type === "model_output") {
        for (const contentBlock of step.content) {
            if (contentBlock.type === "text") {
                console.log("Answer:");
                console.log(contentBlock.text);
            }
        }
    }
}

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "What is the sum of the first 50 prime numbers?",
    "generationConfig": {
      "thinkingSummaries": "auto"
    }
  }'

सूझ-बूझ वाली सुविधा के साथ स्ट्रीम करना

जनरेट करने के दौरान, सूझ-बूझ से बनाई गई खास जानकारी को धीरे-धीरे पाने के लिए, स्ट्रीमिंग का इस्तेमाल करें. इससे, खास जानकारी जनरेट होने पर, धीरे-धीरे दिखती है:

Python

from google import genai

client = genai.Client()

prompt = """
Alice, Bob, and Carol each live in a different house on the same street: red, green, and blue.
Alice does not live in the red house.
Bob does not live in the green house.
Carol does not live in the red or green house.
Which house does each person live in?
"""

thoughts = ""
answer = ""

stream = client.interactions.create(
    model="gemini-3-flash-preview",
    input=prompt,
    generation_config={
        "thinking_summaries": "auto"
    },
    stream=True
)

thoughts = ""
answer = ""

for event in stream:
    if event.event_type == "step.delta":
        if event.delta.type == "thought":
            if not thoughts:
                print("Thinking...")
            summary_text = getattr(event.delta, 'text', '')
            print(f"[Thought] {summary_text}", end="")
            thoughts += summary_text
        elif event.delta.type == "text" and event.delta.text:
            if not answer:
                print("\nAnswer:")
            print(event.delta.text, end="")
            answer += event.delta.text

JavaScript

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

const client = new GoogleGenAI({});

const prompt = `Alice, Bob, and Carol each live in a different house on the same
street: red, green, and blue. Alice does not live in the red house.
Bob does not live in the green house.
Carol does not live in the red or green house.
Which house does each person live in?`;

let thoughts = "";
let answer = "";

const stream = await client.interactions.create({
    model: "gemini-3-flash-preview",
    input: prompt,
    generationConfig: {
        thinkingSummaries: "auto"
    },
    stream: true
});

for await (const event of stream) {
    if (event.type === "step.delta") {
        if (event.delta.type === "thought") {
            if (!thoughts) console.log("Thinking...");
            process.stdout.write(`[Thought] ${event.delta.text || ""}`);
            thoughts += event.delta.text || "";
        } else if (event.delta.type === "text" && event.delta.text) {
            if (!answer) console.log("\nAnswer:");
            process.stdout.write(event.delta.text);
            answer += event.delta.text;
        }
    }
}

सूझ-बूझ वाली सुविधा को कंट्रोल करना

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

सूझ-बूझ वाले मॉडल के लेवल (Gemini 3)

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

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

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Provide a list of 3 famous physicists and their key contributions",
    generation_config={
        "thinking_level": "low"
    }
)
print(interaction.steps[-1].content[0].text)

JavaScript

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

const client = new GoogleGenAI({});

const interaction = await client.interactions.create({
    model: "gemini-3-flash-preview",
    input: "Provide a list of 3 famous physicists and their key contributions",
    generationConfig: {
        thinkingLevel: "low"
    }
});
console.log(interaction.steps.at(-1).content[0].text);

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3-flash-preview",
    "input": "Provide a list of 3 famous physicists and their key contributions",
    "generation_config": {
      "thinking_level": "low"
    }
  }'

Gemini 3 Pro के लिए, सूझ-बूझ वाली सुविधा को बंद नहीं किया जा सकता. Gemini 3 Flash के लिए भी, सूझ-बूझ वाली सुविधा को पूरी तरह से बंद नहीं किया जा सकता. हालांकि, minimal सेटिंग का मतलब है कि मॉडल शायद ही सोच-विचार करेगा (हालांकि, इसमें अब भी सोच-विचार करने की क्षमता है).

सूझ-बूझ वाले मॉडल के सिग्नेचर

Gemini API, स्टेटलेस है. इसलिए, मॉडल हर एपीआई अनुरोध को अलग-अलग तरीके से प्रोसेस करता है. साथ ही, मल्टी-टर्न इंटरैक्शन में, पिछले टर्न के सूझ-बूझ वाले कॉन्टेक्स्ट का ऐक्सेस नहीं होता.

मल्टी-टर्न इंटरैक्शन में, सूझ-बूझ वाले कॉन्टेक्स्ट को बनाए रखने के लिए, Gemini, सूझ-बूझ वाले मॉडल के सिग्नेचर दिखाता है. ये मॉडल की इंटरनल सूझ-बूझ वाली प्रोसेस के एन्क्रिप्ट किए गए वर्शन होते हैं.

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

कीमत

सूझ-बूझ वाली सुविधा चालू होने पर, जवाब की कीमत, आउटपुट टोकन और सूझ-बूझ वाले मॉडल के टोकन की कुल संख्या के हिसाब से तय की जाती है. total_thought_tokens फ़ील्ड से, जनरेट किए गए सूझ-बूझ वाले मॉडल के टोकन की कुल संख्या पाई जा सकती है.

Python

# ...
print("Thoughts tokens:", interaction.usage.total_thought_tokens)
print("Output tokens:", interaction.usage.total_output_tokens)

JavaScript

// ...
console.log(`Thoughts tokens: ${interaction.usage.totalThoughtTokens}`);
console.log(`Output tokens: ${interaction.usage.totalOutputTokens}`);

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

टोकन के बारे में ज़्यादा जानने के लिए, टोकन की गिनती करने से जुड़ी गाइड पढ़ें.

सबसे सही तरीके

इस सेक्शन में, सूझ-बूझ वाले मॉडल का असरदार तरीके से इस्तेमाल करने के बारे में दिशा-निर्देश दिए गए हैं.

डीबग करना और कंट्रोल करना

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

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

टास्क की मुश्किल

  • आसान टास्क (सूझ-बूझ वाली सुविधा बंद की जा सकती है): ऐसे सीधे-सादे अनुरोधों के लिए जिनमें मुश्किल रीज़निंग की ज़रूरत नहीं होती, सूझ-बूझ वाली सुविधा की ज़रूरत नहीं होती. उदाहरण:
    • "DeepMind की स्थापना कहां हुई थी?"
    • "क्या इस ईमेल में मीटिंग के लिए कहा गया है या सिर्फ़ जानकारी दी गई है?"
  • मीडियम टास्क (डिफ़ॉल्ट/कुछ सूझ-बूझ वाली सुविधा): कई सामान्य अनुरोधों को चरण-दर-चरण प्रोसेस करने या ज़्यादा गहराई से समझने से फ़ायदा मिलता है. उदाहरण:
    • प्रकाश संश्लेषण और बड़े होने की तुलना करें.
    • इलेक्ट्रिक कारों और हाइब्रिड कारों की तुलना करें.
  • मुश्किल टास्क (सूझ-बूझ वाली सुविधा की ज़्यादा से ज़्यादा क्षमता): वाकई मुश्किल चुनौतियों के लिए, हमारा सुझाव है कि सूझ-बूझ वाले मॉडल के लिए ज़्यादा बजट सेट करें. इस तरह के टास्क के लिए, मॉडल को अपनी पूरी रीज़निंग और प्लानिंग की क्षमताओं का इस्तेमाल करना पड़ता है. उदाहरण:
    • AIME 2025 में समस्या 1 हल करें: सभी पूर्णांक आधारों b > 9 का योग निकालें...
    • वेब ऐप्लिकेशन के लिए Python कोड लिखें. यह ऐप्लिकेशन, उपयोगकर्ता की पुष्टि करने की सुविधा के साथ-साथ, शेयर बाज़ार के रीयल-टाइम डेटा को विज़ुअलाइज़ करता है. इसे ज़्यादा से ज़्यादा असरदार बनाएं.

काम करने वाले मॉडल

मॉडल डिफ़ॉल्ट सूझ-बूझ वाली सुविधा काम करने वाले लेवल
gemini-3.1-pro-preview चालू (ज़्यादा) कम, मीडियम, ज़्यादा
gemini-3-flash-preview चालू (ज़्यादा) बहुत कम, कम, मीडियम, ज़्यादा
gemini-3-pro-preview चालू (ज़्यादा) कम, ज़्यादा
gemini-2.5-pro चालू बजट: 128-32768
gemini-2.5-flash चालू बजट: 0-24576
gemini-2.5-flash-lite बंद बजट: 0-24576

सूझ-बूझ वाले मॉडल, Gemini के सभी टूल और सुविधाओं के साथ काम करते हैं. इससे मॉडल, बाहरी सिस्टम के साथ इंटरैक्ट कर सकते हैं, कोड को एक्ज़ीक्यूट कर सकते हैं या रीयल-टाइम जानकारी ऐक्सेस कर सकते हैं. साथ ही, नतीजों को अपनी रीज़निंग में शामिल कर सकते हैं.

आगे क्या करना है