| इस पेज पर दिए गए उदाहरणों में यह माना गया है कि आपने शुरू करें: Apple के Foundation Models फ़्रेमवर्क के ज़रिए, Gemini API को ऐक्सेस करना लेख में दिए गए निर्देशों को पूरा कर लिया है. |
किसी मॉडल से अनुरोध करते समय, कुछ कॉन्फ़िगरेशन सेटिंग भेजी जा सकती हैं. इससे यह कंट्रोल किया जा सकता है कि मॉडल, जवाब कैसे जनरेट करेगा. हर Gemini मॉडल के लिए, कॉन्फ़िगरेशन के अलग-अलग विकल्प उपलब्ध होते हैं.
सेटिंग के आधार पर, कॉन्फ़िगरेशन को geminiLanguageModel या LanguageModelSession की अवधि के लिए बनाए रखा जाता है. अगर आपको किसी दूसरे कॉन्फ़िगरेशन का इस्तेमाल करना है, तो उस कॉन्फ़िगरेशन के साथ कोई नया मॉडल या सेशन बनाएं.
इस पेज पर, कॉन्फ़िगरेशन के इन विकल्पों के बारे में बताया गया है:
- सिस्टम के निर्देश
- थिंकिंग (इसे "रीज़निंग" भी कहा जाता है)
- जनरेट की गई इमेज का आउटपुट
- सामान्य कॉन्फ़िगरेशन
सिस्टम के निर्देश तय करना
सिस्टम के निर्देश , "प्रिएंबल" की तरह होते हैं. इन्हें मॉडल को असली उपयोगकर्ता से कोई और निर्देश मिलने से पहले जोड़ा जाता है. इससे, अपनी खास ज़रूरतों और इस्तेमाल के उदाहरणों के हिसाब से, मॉडल के व्यवहार को कंट्रोल किया जा सकता है.
LanguageModelSession पर सिस्टम के निर्देश तय करने के लिए:
// ...
// Make sure you initialize your chosen Gemini API backend service
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")
// Specify the system instructions as part of creating the session
let session = LanguageModelSession(
model: model,
instructions: "You are a cat. Your name is Neko."
)
// ...
थिंकिंग (इसे "रीज़निंग" भी कहा जाता है) कॉन्फ़िगर करना
यह कॉन्फ़िगर किया जा सकता है कि गहराई से विचार (इसे गहराई से विश्लेषण भी कहा जाता है) की कितनी मात्रा में एक Gemini मॉडल अपना जवाब जनरेट करने के लिए कर सकता है. थिंकिंग के बारे में ज़्यादा जानकारी, सबसे सही तरीके, और इस्तेमाल के उदाहरण जानने के लिए, थिंकिंग के बारे में सामान्य जानकारी वाली गाइड देखें.
Apple, थिंकिंग लेवल के बजाय रीज़निंग लेवल का इस्तेमाल करता है. LanguageModelSession के ज़रिए, हर अनुरोध पर ContextOptions में reasoningLevel सेट किया जाता है:
// ...
// Make sure you initialize your chosen Gemini API backend service.
let model = FirebaseAI.firebaseAI().geminiLanguageModel(name: "GEMINI_MODEL_NAME")
let session = LanguageModelSession(model: model)
// Specify the reasoning level when generating a response.
// Possible reasoningLevels: .light, .moderate, .deep, .custom("minimal").
let response = try await session.respond(
to: "Write a story about a magic backpack.",
contextOptions: ContextOptions(reasoningLevel: .REASONING_LEVEL)
)
// ...
थिंकिंग लेवल की इस्तेमाल की जा सकने वाली वैल्यू
निम्न पर ध्यान दें:
- Gemini 3.x मॉडल हमेशा थिंकिंग का इस्तेमाल करते हैं. इन मॉडल के लिए, थिंकिंग को बंद या चालू नहीं किया जा सकता.
- Gemini 3.x मॉडल हमेशा डाइनैमिक थिंकिंग का इस्तेमाल करते हैं. मॉडल यह तय करता है कि कॉन्फ़िगर की गई रकम तक, वह कब और कितनी थिंकिंग करेगा.
यहां दी गई टेबल में, Gemini के हर Gemini मॉडल के लिए सेट किए जा सकने वाले थिंकिंग लेवल (reasoningLevel) के बारे में बताया गया है. ध्यान दें कि अगर किसी Gemini वैल्यू
(MINIMAL, LOW, MEDIUM, HIGH) का इस्तेमाल किया जाता है, तो वह अपने-आप
Apple की उस वैल्यू से मैप हो जाएगी.
Apple: .custom("minimal")Gemini: MINIMAL
|
Apple: .lightGemini: LOW
|
Apple: .moderateGemini: MEDIUM
|
Apple: .deepGemini: HIGH
|
|
|---|---|---|---|---|
|
मॉडल, कम से कम टोकन का इस्तेमाल करता है. इसमें थिंकिंग नहीं होती कम मुश्किल वाले टास्क |
मॉडल, कम टोकन का इस्तेमाल करता है. इससे लेटेंसी और लागत कम होती है आसान टास्क और ज़्यादा थ्रूपुट वाले टास्क |
मॉडल, बैलेंस अप्रोच का इस्तेमाल करता है मीडियम मुश्किल वाले टास्क |
मॉडल, ज़्यादा से ज़्यादा लेवल तक टोकन का इस्तेमाल करता है मुश्किल प्रॉम्प्ट जिनके लिए गहराई से विश्लेषण की ज़रूरत होती है |
|
Gemini 3.x Progemini-3.1-pro-preview
|
(डिफ़ॉल्ट) | |||
Gemini 3.x Flashgemini-3.7-flashgemini-3.6-flashgemini-3.5-flash
|
gemini-3.7-flash |
(डिफ़ॉल्ट) | ||
Gemini 3.x Flash‑Litegemini-3.5-flash-litegemini-3.1-flash-lite
|
(डिफ़ॉल्ट) | |||
Gemini 3.x Pro Imagegemini-3-pro-image("Nano Banana Pro") |
(डिफ़ॉल्ट) | |||
Gemini 3.x Flash Imagegemini-3.1-flash-image("Nano Banana 2") |
(डिफ़ॉल्ट) | |||
Gemini 3.x Flash‑Lite Imagegemini-3.1-flash-lite-image("Nano Banana 2 Lite") |
(डिफ़ॉल्ट) |
1 gemini-3.7-flash , MINIMAL थिंकिंग लेवल के साथ काम नहीं
करता. अगर थिंकिंग लेवल को
MINIMAL पर सेट किया जाता है, तो अनुरोध फ़ेल हो जाएगा और 400
गड़बड़ी दिखेगी.