टूल, Gemini मॉडल की क्षमताओं को बढ़ाते हैं. इससे वे दुनिया में कार्रवाई कर पाते हैं, रीयल-टाइम में जानकारी ऐक्सेस कर पाते हैं, और मुश्किल कंप्यूटेशनल टास्क पूरे कर पाते हैं. मॉडल, स्टैंडर्ड अनुरोध-जवाब इंटरैक्शन और Live API का इस्तेमाल करके, रीयल-टाइम स्ट्रीमिंग सेशन में टूल इस्तेमाल कर सकते हैं.
टूल, खास क्षमताएं होती हैं. जैसे, Google Search या कोड एक्ज़ीक्यूशन. इनका इस्तेमाल करके, मॉडल सवालों के जवाब दे सकता है. Gemini API में, पूरी तरह से मैनेज किए जाने वाले बिल्ट-इन टूल का एक सुइट उपलब्ध होता है. इसके अलावा, फ़ंक्शन कॉलिंग का इस्तेमाल करके, कस्टम टूल तय किए जा सकते हैं.
एक से ज़्यादा चरणों वाले, लक्ष्य-उन्मुख सिस्टम बनाने के लिए, एजेंट की खास जानकारी देखें.
पहले से मौजूद टूल
| टूल | ब्यौरा | उपयोग के उदाहरण |
|---|---|---|
| Google Search | जवाबों में, मौजूदा घटनाओं और वेब पर मौजूद तथ्यों के बारे में सटीक जानकारी शामिल करना, ताकि गलत जानकारी देने की समस्या कम हो. | हाल के इवेंट के बारे में सवालों के जवाब देना और अलग-अलग सोर्स से तथ्यों की पुष्टि करना. |
| Google Maps | जगह की जानकारी के हिसाब से काम करने वाली ऐसी Assistant बनाएं जो जगहें ढूंढ सके, दिशाओं के लिए निर्देश पा सके, और स्थानीय जानकारी दे सके. | एक से ज़्यादा स्टॉप वाली यात्रा की योजना बनाना और उपयोगकर्ता की शर्तों के आधार पर स्थानीय कारोबारों को ढूंढना. |
| कोड चलाने की सुविधा | मॉडल को गणित की समस्याओं को हल करने या डेटा को सटीक तरीके से प्रोसेस करने के लिए, Python कोड लिखने और चलाने की अनुमति दें. | जटिल गणितीय समीकरणों को हल करना, टेक्स्ट डेटा को सटीक तरीके से प्रोसेस और उसका विश्लेषण करना. |
| यूआरएल का कॉन्टेक्स्ट | मॉडल को किसी वेब पेज या दस्तावेज़ से कॉन्टेंट पढ़ने और उसका विश्लेषण करने का निर्देश दें. | किसी यूआरएल या दस्तावेज़ के आधार पर सवालों के जवाब देना और अलग-अलग वेब पेजों से जानकारी पाना. |
| कंप्यूटर का इस्तेमाल (प्रीव्यू) | Gemini को स्क्रीन देखने और वेब ब्राउज़र के यूज़र इंटरफ़ेस (क्लाइंट-साइड एक्ज़ीक्यूशन) के साथ इंटरैक्ट करने के लिए कार्रवाइयां जनरेट करने की अनुमति देता है. | वेब पर बार-बार किए जाने वाले वर्कफ़्लो को ऑटोमेट करना, वेब ऐप्लिकेशन के यूज़र इंटरफ़ेस की टेस्टिंग करना. |
| फ़ाइल खोजना | रिट्रीवल ऑगमेंटेड जनरेशन (आरएजी) को चालू करने के लिए, अपने दस्तावेज़ों को इंडेक्स करें और उनमें खोज करें. | तकनीकी मैन्युअल खोजना, मालिकाना हक वाले डेटा के आधार पर सवालों के जवाब देना. |
किसी टूल से जुड़ी लागत के बारे में जानकारी पाने के लिए, कीमत की जानकारी वाला पेज देखें.
टूल के इस्तेमाल की सुविधा कैसे काम करती है
टूल की मदद से मॉडल, बातचीत के दौरान कार्रवाइयों का अनुरोध कर सकता है. यह फ़्लो इस बात पर निर्भर करता है कि टूल, डिवाइस में पहले से मौजूद है (Google इसे मैनेज करता है) या कस्टम टूल है (इसे मैनेज करने का अधिकार आपके पास है).
पहले से मौजूद टूल फ़्लो
Google Search, Google Maps, यूआरएल का कॉन्टेक्स्ट, फ़ाइल खोजने की सुविधा, और कोड एक्ज़ीक्यूट करने जैसे बिल्ट-इन टूल के लिए, पूरी प्रोसेस एक ही एपीआई कॉल में होती है:
- आपने यह प्रॉम्प्ट भेजा: "GOOG के मौजूदा स्टॉक की कीमत का वर्गमूल क्या है?"
- Gemini यह तय करता है कि उसे टूल की ज़रूरत है या नहीं. इसके बाद, वह Google के सर्वर पर उन टूल को इस्तेमाल करता है. उदाहरण के लिए, शेयर की कीमत खोजता है. इसके बाद, वर्गमूल का हिसाब लगाने के लिए Python कोड चलाता है.
- Gemini, टूल से मिले नतीजों के आधार पर जवाब देता है.
कस्टम टूल फ़्लो (फ़ंक्शन कॉलिंग)
कस्टम टूल और कंप्यूटर के इस्तेमाल के लिए, आपका ऐप्लिकेशन ही प्रोसेस को पूरा करता है:
- आप फ़ंक्शन (टूल) के एलान के साथ एक प्रॉम्प्ट भेजते हैं.
- Gemini, किसी फ़ंक्शन को कॉल करने के लिए स्ट्रक्चर्ड JSON वापस भेज सकता है
(उदाहरण के लिए,
{"name": "get_order_status", "args": {"order_id": "123"}}), जो हमेशा एक यूनीकidके साथ होता है. - आपको अपने ऐप्लिकेशन या एनवायरमेंट में फ़ंक्शन को लागू करना होगा.
- आप, फ़ंक्शन कॉल के
idके साथ, फ़ंक्शन के नतीजे Gemini को वापस भेजते हैं. - Gemini, नतीजों का इस्तेमाल करके फ़ाइनल जवाब जनरेट करता है या किसी दूसरे टूल को कॉल करता है.
ज़्यादा जानकारी के लिए, फ़ंक्शन कॉल करने से जुड़ी गाइड देखें.
पहले से मौजूद और कस्टम टूल को एक साथ इस्तेमाल करने का फ़्लो
ऐसे अनुरोधों के लिए जिनमें बिल्ट-इन टूल और कस्टम टूल (फ़ंक्शन कॉल) का इस्तेमाल किया जाता है, मॉडल टूल कॉन्टेक्स्ट सर्कुलेशन का इस्तेमाल करता है. इससे अलग-अलग एनवायरमेंट में अनुरोधों को पूरा करने में मदद मिलती है:
- आपको एक प्रॉम्प्ट भेजना होगा. साथ ही, आपको यह एलान करना होगा कि आपको कौनसे बिल्ट-इन टूल और कस्टम फ़ंक्शन चालू करने हैं. इसके बाद, आपको एक फ़्लैग सेट करना होगा, ताकि कॉम्बिनेशन सपोर्ट चालू हो सके.
- Gemini में पहले से मौजूद टूल इस्तेमाल किए जाते हैं. साथ ही, अगर क्लाइंट-साइड फ़ंक्शन कॉल जनरेट होते हैं, तो Gemini उपयोगकर्ता को जवाब देता है. कौनसे फ़ंक्शन कॉल पहले जनरेट होंगे, यह प्रॉम्प्ट और मॉडल के फ़ैसले पर निर्भर करता है. यह फ़ंक्शन, इन चीज़ों के साथ जवाब भेजता है:
- टूल कॉल की पुष्टि करना
- टूल के जवाब के नतीजे. अगर मॉडल ने दो फ़ंक्शन कॉल जनरेट किए हैं, तो यह JSON के बाद दिख सकता है
- आपके फ़ंक्शन को कॉल करने के लिए स्ट्रक्चर्ड JSON
- कॉन्टेक्स्ट को बनाए रखने के लिए, एन्क्रिप्ट (सुरक्षित) किए गए थॉट सिग्नेचर
- आपको अपने ऐप्लिकेशन या एनवायरमेंट में फ़ंक्शन को लागू करना होगा.
- आपको Gemini के जवाब के सभी हिस्सों के साथ-साथ, फ़ंक्शन कॉल के नतीजे भी वापस भेजने होंगे.
- Gemini, सभी कॉन्टेक्स्ट को मिलाकर जवाब जनरेट करता है.
बिल्ट-इन और कस्टम टूल के कॉम्बिनेशन की सुविधा चालू करने का तरीका जानने के लिए, टूल कॉम्बिनेशन गाइड पढ़ें. साथ ही, कॉन्टेक्स्ट सर्कुलेशन के उदाहरण देखें.
स्ट्रक्चर्ड आउटपुट और फ़ंक्शन कॉलिंग के बीच अंतर
Gemini में, स्ट्रक्चर्ड आउटपुट जनरेट करने के लिए दो तरीके उपलब्ध हैं. जब मॉडल को आपके टूल या डेटा सिस्टम से कनेक्ट करके, कोई इंटरमीडिएट चरण पूरा करना हो, तब फ़ंक्शन कॉलिंग का इस्तेमाल करें. अगर आपको मॉडल के फ़ाइनल जवाब को किसी खास स्कीमा के मुताबिक बनाना है, तो स्ट्रक्चर्ड आउटपुट का इस्तेमाल करें. जैसे, कस्टम यूज़र इंटरफ़ेस (यूआई) रेंडर करने के लिए.
टूल की मदद से स्ट्रक्चर्ड आउटपुट जनरेट करना
स्ट्रक्चर्ड आउटपुट को बिल्ट-इन टूल के साथ जोड़ा जा सकता है. इससे यह पक्का किया जा सकता है कि बाहरी डेटा या कंप्यूटेशन पर आधारित मॉडल के जवाब, अब भी सख्त स्कीमा का पालन करते हों.
कोड के उदाहरणों के लिए, टूल की मदद से स्ट्रक्चर्ड आउटपुट जनरेट करना लेख पढ़ें.