Gemini 3.5 Flash में नया क्या है
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 के जैसे ही टूल और प्लैटफ़ॉर्म की सुविधाओं के साथ काम करता है. फ़िलहाल, कंप्यूटर के इस्तेमाल की सुविधा उपलब्ध नहीं है.
पूरी जानकारी के लिए, मॉडल की खास जानकारी देखें. कीमत की जानकारी के लिए, कीमत तय करने से जुड़ा पेज देखें.
क्विकस्टार्ट
इस गाइड में दिए गए सभी उदाहरणों में, Interactions API का इस्तेमाल किया गया है. GenerateContent API भी काम करता है. इसके लिए भी, कॉन्फ़िगरेशन के वही विकल्प और सुझाव लागू होते हैं.
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.5-flash",
input="Explain how parallel agentic execution works in three sentences."
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
async function main() {
const interaction = await client.interactions.create({
model: "gemini-3.5-flash",
input: "Explain how parallel agentic execution works in three sentences.",
});
console.log(interaction.output_text);
}
main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"input": "Explain how parallel agentic execution works in three sentences."
}'
नया क्या है
- बेहतरीन परफ़ॉर्मेंस: यह हमारा सबसे बेहतरीन Flash मॉडल है. इसे एजेंटिक और कोडिंग से जुड़े टास्क को बड़े पैमाने पर पूरा करने के लिए ऑप्टिमाइज़ किया गया है.
- एजेंटिक एक्ज़ीक्यूशन: सब-एजेंट डिप्लॉयमेंट, समस्या हल करना, और बड़े पैमाने पर तेज़ी से एजेंटिक लूप बनाना.
- कोडिंग: कोडिंग के बार-बार होने वाले साइकल, तेज़ी से एक्सप्लोरेशन, और प्रोटोटाइप बनाकर, अलग-अलग पाथ की जांच करना और डाइनैमिक तरीके से समाधान खोजना.
- लंबे समय तक चलने वाले टास्क: मल्टी-स्टेप वर्कफ़्लो और बड़े पैमाने पर टूल का इस्तेमाल करना.
- सोचने की प्रोसेस को सेव करना: मॉडल, कई राउंड वाली बातचीत के दौरान, बीच-बीच में की गई रीज़निंग को अपने-आप सेव करता है. एपीआई में कोई बदलाव करने की ज़रूरत नहीं है.
- कोशिश का नया डिफ़ॉल्ट लेवल: सोचने की कोशिश का डिफ़ॉल्ट लेवल,
highसे बदलकरmediumकर दिया गया है. ज़्यादा जानकारी के लिए, कोशिश का नया डिफ़ॉल्ट लेवल देखें. lowबेहतर तरीके से सोचना:lowलेवल पर, अब कोड और एजेंटिक टास्क के लिए काफ़ी सुधार किया गया है. इन टास्क को कम चरणों में पूरा किया जा सकता है. इससे कम समय और लागत में, अच्छी क्वालिटी मिलती है.- जीए रिलीज़: बड़े पैमाने पर प्रोडक्शन में इस्तेमाल के लिए स्टेबल मॉडल.
व्यवहार में हुए बदलाव
कोशिश का नया डिफ़ॉल्ट लेवल: medium
सोचने की कोशिश का डिफ़ॉल्ट लेवल अब medium है. इसे Gemini 3
Flash के प्रीव्यू में high से बदलकर medium कर दिया गया है. medium लेवल पर, अलग-अलग तरह के टास्क के लिए बहुत अच्छे नतीजे मिलते हैं. साथ ही, यह तेज़ और ज़्यादा किफ़ायती है. मुश्किल समस्याओं के लिए, high लेवल पर मॉडल ज़्यादा गहराई से सोचता है.
| कोशिश का लेवल | कब इस्तेमाल करें |
|---|---|
minimal |
जवाब देने की स्पीड के लिए ऑप्टिमाइज़ किया गया. चैट जैसे इस्तेमाल के उदाहरण, सटीक जानकारी वाले तुरंत जवाब, आसान टूल कॉल. |
low |
कोड और एजेंटिक टास्क के लिए, जिनमें कम समय लगता है और कम चरणों में पूरे किए जा सकते हैं. यह विश्लेषण और लिखने से जुड़े उन टास्क के लिए भी अच्छा काम करता है जिनमें कुछ सोचने की ज़रूरत होती है. |
medium (डिफ़ॉल्ट) |
ज़्यादातर टास्क के लिए सबसे अच्छी क्वालिटी. मुश्किल कोड और एजेंटिक इस्तेमाल के उदाहरणों के लिए सुझाव दिया जाता है. |
high |
मॉडल की सोचने और टूल इस्तेमाल करने की क्षमता को बढ़ाता है. मुश्किल रीज़निंग, मुश्किल गणित, और सबसे मुश्किल कोड या एजेंट टास्क के लिए सबसे अच्छा है. ज़्यादा सोचने और फ़ंक्शन कॉल की अनुमति देता है. |
डिफ़ॉल्ट सेटिंग को बदलने के लिए, अपने कॉन्फ़िगरेशन में thinking_level सेट करें:
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.5-flash",
input="Prove that the square root of 2 is irrational.",
generation_config={"thinking_level": "high"},
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
async function main() {
const interaction = await client.interactions.create({
model: "gemini-3.5-flash",
input: "Prove that the square root of 2 is irrational.",
generationConfig: { thinkingLevel: "high" },
});
console.log(interaction.output_text);
}
main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"input": "Prove that the square root of 2 is irrational.",
"generation_config": {"thinking_level": "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, और जवाबों की संख्या पहले किए गए कॉल से मैच होनी चाहिए. - मल्टीमोडल फ़ंक्शन के जवाब: मल्टीमोडल कॉन्टेंट को फ़ंक्शन के जवाब में शामिल करें, न कि उसके बाहर.
- फ़ंक्शन के जवाबों में इनलाइन निर्देश: इन्हें फ़ंक्शन के जवाब के टेक्स्ट में जोड़ें, न कि अलग-अलग हिस्सों के तौर पर.
- टूल कॉल की संख्या कम करें: एजेंटिक वर्कफ़्लो में टूल कॉल की संख्या कम करने के लिए, सोचने के निचले लेवल का इस्तेमाल करें या सिस्टम के निर्देशों के साथ एक्सपेरिमेंट करें.
अपना कोड अपडेट करने का तरीका जानने के लिए, नीचे दिए गए सेक्शन देखें.
सैंपलिंग पैरामीटर (अब इनका इस्तेमाल करने का सुझाव नहीं दिया जाता)
अब Gemini 3.x के सभी मॉडल के लिए, temperature, top_p, और top_k का इस्तेमाल करने का सुझाव नहीं दिया जाता. Gemini 3 की रीज़निंग क्षमताएं, डिफ़ॉल्ट सेटिंग के लिए ऑप्टिमाइज़ की गई हैं. सभी अनुरोधों से इन पैरामीटर को हटाएं.
# ⚠️ Remove these parameters (not recommended)
generation_config = {
"temperature": 0.7,
"top_p": 0.9,
"top_k": 40,
}
डिटरमिनिज़म पक्का करने के लिए, हमारा सुझाव है कि अपने इस्तेमाल के उदाहरण के लिए, साफ़ तौर पर नियम तय करने वाला सिस्टम निर्देश तय करें.
thinking_budget (अब इसका इस्तेमाल करने का सुझाव नहीं दिया जाता)
अब Gemini 3.x के सभी मॉडल के लिए, thinking_budget पैरामीटर का इस्तेमाल करने का सुझाव नहीं दिया जाता. इसके बजाय, thinking_level स्ट्रिंग एनम का इस्तेमाल करें.
# ⚠️ Before (not recommended)
generation_config = {
"thinking": {"thinking_budget": 7500},
}
# ✅ After
generation_config = {
"thinking": {"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 call_id and name in the function_result
final_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
tools=[my_tool],
input=[{
"type": "function_result",
"name": fc_step.name,
"call_id": fc_step.id,
"result": [{"type": "text", "text": json.dumps(result)}],
}],
)
JavaScript
// ✅ Include matching call_id and name in the function_result
const finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
tools: [myTool],
input: [{
type: "function_result",
name: fcStep.name,
call_id: fcStep.id,
result: [{ type: "text", text: JSON.stringify(result) }],
}],
});
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"previous_interaction_id": "<INTERACTION_ID>",
"tools": [...],
"input": [{
"type": "function_result",
"name": "my_function",
"call_id": "<CALL_ID>",
"result": [{"type": "text", "text": "..."}]
}]
}'
मल्टीमोडल फ़ंक्शन के जवाब
हम अक्सर देखते हैं कि क्लाइंट, फ़ंक्शन के जवाब के बाहर इमेज उपलब्ध कराते हैं. इससे मॉडल का व्यवहार उम्मीद के मुताबिक नहीं होता.उदाहरण के लिए, रीज़निंग लीक हो सकती है. साथ ही, आउटपुट की क्वालिटी कम हो सकती है. इसके बजाय, मल्टीमोडल फ़ंक्शन के जवाबों के एपीआई दस्तावेज़ों में दिए गए सुझाव का पालन करें. साथ ही, मॉडल को भेजे जाने वाले फ़ंक्शन के जवाब के हिस्सों में मल्टीमोडल कॉन्टेंट शामिल करें. मॉडल, ज़्यादा जानकारी वाला जवाब देने के लिए, अगले राउंड में इस मल्टीमोडल कॉन्टेंट को प्रोसेस कर सकता है.
Python
# ✅ Include multimodal content in the function response
final_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
input=[
{
"type": "function_result",
"name": tool_call.name,
"call_id": tool_call.id,
"result": [
{"type": "text", "text": "instrument.jpg"},
{
"type": "image",
"mime_type": "image/jpeg",
"data": base64_image_data,
},
],
}
],
)
JavaScript
// ✅ Include multimodal content in the function response
const finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
input: [{
type: "function_result",
name: toolCall.name,
call_id: toolCall.id,
result: [
{ type: "text", text: "instrument.jpg" },
{
type: "image",
mime_type: "image/jpeg",
data: base64ImageData,
},
],
}],
});
फ़ंक्शन के जवाबों में इनलाइन निर्देश
हम अक्सर देखते हैं कि क्लाइंट, फ़ंक्शन के जवाबों के साथ-साथ, बाद के 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_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
tools=[my_tool],
input=[{
"type": "function_result",
"name": fc_step.name,
"call_id": fc_step.id,
"result": [{"type": "text", "text": result_text}],
}],
)
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 finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
tools: [myTool],
input: [{
type: "function_result",
name: fcStep.name,
call_id: fcStep.id,
result: [{ type: "text", text: resultText }],
}],
});
टूल कॉल की संख्या कम करना
अगर आपको टूल कॉल का ज़्यादा इस्तेमाल करने की समस्या आ रही है, तो इन्हें कम करने के लिए दो तकनीकों का इस्तेमाल किया जा सकता है:
सोचने के लेवल को कम करके शुरू करें (
medium,low, याminimal): सोचने के ऊंचे लेवल पर, मॉडल को एक्सप्लोर करने और पुष्टि करने के लिए ज़्यादा टूल इस्तेमाल करने के लिए बढ़ावा मिलता है. इसलिए, लेवल कम करने से टूल कॉल की संख्या कम हो सकती है.सिस्टम निर्देश जोड़ें: अगर सोचने के लेवल को अडजस्ट करने के बाद भी, ज़्यादा इस्तेमाल की समस्या बनी रहती है, तो ऐसा प्रॉम्प्ट इस्तेमाल करें जो टूल के इस्तेमाल को सीमित करता हो. उदाहरण के लिए:
You have a limited action budget of <n> tool calls. Use them efficiently.
माइग्रेशन की चेकलिस्ट
हमारा सुझाव है कि आप google-genai SDK टूल को v2.0.0 या उसके बाद के वर्शन पर अपडेट करें. इस वर्शन में, Interactions API में नुकसान पहुंचा सकने वाले बदलाव किए गए हैं. ज़्यादा जानकारी के लिए,
नुकसान पहुंचा सकने वाले बदलावों के लिए माइग्रेशन गाइड देखें.
Gemini 3 Flash के प्रीव्यू से माइग्रेट करना
- मॉडल का नाम अपडेट करें:
gemini-3-flash-preview→gemini-3.5-flash - कीमत की समीक्षा करें. Gemini 3.5 Flash, Gemini 3 Flash के प्रीव्यू से ज़्यादा महंगा है. ज़्यादा जानकारी के लिए, कीमत तय करने से जुड़ा पेज देखें.
- अपने कॉन्फ़िगरेशन से
temperature,top_p,top_kहटाएं. अब इनका इस्तेमाल करने का सुझाव नहीं दिया जाता. thinking_budgetकी जगह,thinking_levelका इस्तेमाल करें.FunctionResponseके सभी हिस्सों में,idऔर मैच करने वालाnameजोड़ें.- अपने प्रॉम्प्ट की जांच करें. कोशिश का डिफ़ॉल्ट लेवल,
highसे बदलकरmediumकर दिया गया है. इसलिए, क्वालिटी, स्पीड, और लागत की पुष्टि करें. - सोचने की प्रोसेस को सेव करने की सुविधा, अब डिफ़ॉल्ट रूप से चालू है. रीज़निंग कॉन्टेक्स्ट, राउंड के हिसाब से आगे बढ़ता है. इससे परफ़ॉर्मेंस बेहतर होती है, लेकिन टोकन का इस्तेमाल बढ़ सकता है.
- टूल कॉल की संख्या कम करें: सोचने के लेवल को कम करके शुरू करें (
medium,low, याminimal). अगर ज़्यादा इस्तेमाल की समस्या बनी रहती है, तो टूल के इस्तेमाल को सीमित करने के लिए, सिस्टम निर्देश जोड़ें. - फ़िलहाल, Gemini 3.5 Flash में कंप्यूटर के इस्तेमाल की सुविधा उपलब्ध नहीं है. कंप्यूटर के इस्तेमाल से जुड़े वर्कलोड के लिए, Gemini 3 Flash के प्रीव्यू का इस्तेमाल जारी रखें.
Gemini 2.5 से माइग्रेट करना
ऊपर दी गई जानकारी के अलावा, यह भी देखें:
- प्रॉम्प्ट को आसान बनाएं. अगर आपने रीज़निंग को मजबूर करने के लिए, चेन-ऑफ़-थॉट प्रॉम्प्ट इंजीनियरिंग का इस्तेमाल किया है, तो इसके बजाय आसान प्रॉम्प्ट के साथ
thinking_level: "medium"या"high"आज़माएं. - PDF और मीडिया के वर्कलोड की जांच करें. अगर आपने घने दस्तावेज़ को पार्स करने के लिए, किसी खास व्यवहार पर भरोसा किया है, तो सटीक जानकारी पाने के लिए,
media_resolution_highसेटिंग की जांच करें. Gemini 3 के डिफ़ॉल्ट पर माइग्रेट करने से, PDF के लिए टोकन का इस्तेमाल बढ़ सकता है. हालांकि, वीडियो के लिए यह कम हो सकता है. अगर अनुरोध, कॉन्टेक्स्ट विंडो से ज़्यादा हैं, तो साफ़ तौर परmedia_resolutionकम करें. ज़्यादा जानकारी के लिए, मीडिया रिज़ॉल्यूशन के दस्तावेज़ देखें. - एक साथ कई टूल का इस्तेमाल करें. एक ही अनुरोध में, Google Search, यूआरएल कॉन्टेक्स्ट, कोड एक्ज़ीक्यूशन, और कस्टम फ़ंक्शन का इस्तेमाल किया जा सकता है.
- अगर मल्टीमोडल फ़ंक्शन के जवाबों का इस्तेमाल किया जा रहा है, तो मल्टीमोडल कॉन्टेंट को फ़ंक्शन के जवाब के हिस्सों में शामिल करें, न कि उनके साथ.
- अगर फ़ंक्शन के जवाबों के साथ इनलाइन निर्देशों का इस्तेमाल किया जा रहा है, तो उन्हें दो नई लाइन से अलग करके, फ़ंक्शन के जवाब के टेक्स्ट में जोड़ें, न कि अलग-अलग हिस्सों के तौर पर.
- Gemini 3.x में, इमेज सेगमेंटेशन की सुविधा उपलब्ध नहीं है. सेगमेंटेशन के वर्कलोड के लिए, Gemini 2.5 Flash का इस्तेमाल जारी रखें. इसमें सोचने की सुविधा बंद होनी चाहिए. इसके अलावा, Gemini Robotics-ER 1.6 का इस्तेमाल भी किया जा सकता है.
Gemini 3 फ़ैमिली की सुविधाएं
Gemini 3.5 Flash में, Gemini 3 फ़ैमिली की सभी क्षमताएं मौजूद हैं. हालांकि, इसमें कंप्यूटर के इस्तेमाल की सुविधा उपलब्ध नहीं है. Gemini 3 में जोड़ी गई वे सुविधाएं जो आगे भी उपलब्ध रहेंगी:
- सोचने की प्रोसेस: एपीआई कॉल के दौरान, एन्क्रिप्टेड रीज़निंग कॉन्टेक्स्ट सेव किया जाता है. Interactions API में यह सुविधा अपने-आप काम करती है. GenerateContent में यह सुविधा, डिफ़ॉल्ट रूप से काम करती है.
- टूल की मदद से स्ट्रक्चर्ड आउटपुट: JSON मोड को Search, यूआरएल कॉन्टेक्स्ट, कोड एक्ज़ीक्यूशन, फ़ंक्शन कॉल जैसे बिल्ट-इन टूल के साथ मिलाएं.
- मल्टीमोडल फ़ंक्शन के जवाब: फ़ंक्शन कॉल के नतीजों में इमेज, ऑडियो, और अन्य मीडिया लौटाएं.
- इमेज के साथ कोड एक्ज़ीक्यूशन: इमेज को प्रोसेस और जनरेट करने वाले कोड को एक्ज़ीक्यूट करें.
- एक साथ कई टूल का इस्तेमाल: एक ही अनुरोध में, बिल्ट-इन टूल और कस्टम फ़ंक्शन कॉल का इस्तेमाल करें.
अगले चरण
- Gemini 3 डेवलपर गाइड में, Gemini 3 फ़ैमिली के बारे में ज़्यादा पढ़ें
- प्रॉम्प्ट इंजीनियरिंग गाइड में, प्रॉम्प्ट डिज़ाइन की रणनीतियों के बारे में ज़्यादा जानें.
- Gemini 3 Cookbook का इस्तेमाल शुरू करें
- Gemini API के ऑप्टिमाइज़ेशन और इन्फ़रेंस के बारे में जानें