1. खास जानकारी
MCP Toolbox for Databases, Google का एक ओपन सोर्स सर्वर है. इसकी मदद से, डेटाबेस के साथ इंटरैक्ट करने के लिए Gen AI टूल आसानी से बनाए जा सकते हैं. यह आपको टूल को आसानी से, तेज़ी से, और ज़्यादा सुरक्षित तरीके से डेवलप करने की सुविधा देता है. इसके लिए, यह कनेक्शन पूलिंग, पुष्टि करने की प्रोसेस वगैरह जैसी मुश्किलों को मैनेज करता है. इसकी मदद से, जनरेटिव एआई टूल बनाए जा सकते हैं. इनकी मदद से, आपके एजेंट आपके डेटाबेस में मौजूद डेटा को ऐक्सेस कर सकते हैं. टूलबॉक्स में ये सुविधाएं मिलती हैं:
आसान डेवलपमेंट: अपने एजेंट में टूल को 10 से भी कम लाइनों के कोड में इंटिग्रेट करें. साथ ही, एक से ज़्यादा एजेंट या फ़्रेमवर्क के बीच टूल का फिर से इस्तेमाल करें और टूल के नए वर्शन को आसानी से डिप्लॉय करें.
बेहतर परफ़ॉर्मेंस: कनेक्शन पूलिंग, पुष्टि करने की प्रोसेस वगैरह जैसे सबसे सही तरीके.
बेहतर सुरक्षा: आपके डेटा को ज़्यादा सुरक्षित तरीके से ऐक्सेस करने के लिए, इंटिग्रेटेड ऑथराइज़ेशन.
एंड-टू-एंड ऑब्ज़र्वेबिलिटी: इसमें बॉक्स से बाहर की मेट्रिक और ट्रेसिंग की सुविधा मिलती है. साथ ही, OpenTelemetry के लिए पहले से मौजूद सहायता भी मिलती है.
टूलबॉक्स, आपके ऐप्लिकेशन के ऑर्केस्ट्रेशन फ़्रेमवर्क और आपके डेटाबेस के बीच मौजूद होता है. यह एक कंट्रोल प्लेन उपलब्ध कराता है, जिसका इस्तेमाल टूल में बदलाव करने, उन्हें डिस्ट्रिब्यूट करने या उन्हें शुरू करने के लिए किया जाता है. यह आपके टूल को मैनेज करने की प्रोसेस को आसान बनाता है. इसके लिए, यह आपको टूल को सेव और अपडेट करने के लिए एक जगह उपलब्ध कराता है. इससे एजेंट और ऐप्लिकेशन के बीच टूल शेयर किए जा सकते हैं. साथ ही, ऐप्लिकेशन को फिर से डिप्लॉय किए बिना उन टूल को अपडेट किया जा सकता है.
आपको क्या बनाना है
इस लैब के तहत, आपको एक ऐसा ऐप्लिकेशन बनाना होगा जो किसी टूल का इस्तेमाल करके, डेटाबेस (AlloyDB) से जुड़ी आसान क्वेरी को पूरा कर सके. इस क्वेरी को आपके एजेंट या जनरेटिव एआई ऐप्लिकेशन से शुरू किया जा सकता है. इसके लिए, आपको
- डेटाबेस के लिए MCP Toolbox इंस्टॉल करना
- Toolbox सर्वर पर, AlloyDB में कोई टास्क पूरा करने के लिए डिज़ाइन किया गया टूल सेट अप करें
- Cloud Run पर, डेटाबेस के लिए MCP टूलबॉक्स डिप्लॉय करना
- डिप्लॉय किए गए Cloud Run एंडपॉइंट के साथ टूल की जांच करना
- टूलबॉक्स को चालू करने के लिए, Cloud Run फ़ंक्शन बनाना
ज़रूरी शर्तें
2. शुरू करने से पहले
प्रोजेक्ट बनाना
- Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
- पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें.
- आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.

- Cloud Shell से कनेक्ट होने के बाद, यह देखने के लिए कि आपकी पुष्टि हो चुकी है या नहीं और प्रोजेक्ट को सही प्रोजेक्ट आईडी पर सेट किया गया है या नहीं, यहां दिए गए कमांड का इस्तेमाल करें:
gcloud auth list
- यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यह कमांड चलाएं.
gcloud config list project
- अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
- Cloud Shell टर्मिनल में, यहां दिए गए निर्देशों को एक-एक करके चलाकर, ज़रूरी एपीआई चालू करें:
नीचे दिए गए कोड को चलाने के लिए, एक ही कमांड का इस्तेमाल किया जा सकता है. हालांकि, अगर आप ट्रायल खाते के उपयोगकर्ता हैं, तो हो सकता है कि आपको इन सुविधाओं को एक साथ चालू करने में कोटा से जुड़ी समस्याएं आएं. इसलिए, हर निर्देश को एक लाइन में अलग से दिखाया जाता है.
gcloud services enable alloydb.googleapis.com
gcloud services enable compute.googleapis.com
gcloud services enable cloudresourcemanager.googleapis.com
gcloud services enable servicenetworking.googleapis.com
gcloud services enable run.googleapis.com
gcloud services enable cloudbuild.googleapis.com
gcloud services enable cloudfunctions.googleapis.com
gcloud services enable aiplatform.googleapis.com
gcloud कमांड का विकल्प, हर प्रॉडक्ट को खोजकर या इस लिंक का इस्तेमाल करके कंसोल के ज़रिए उपलब्ध है.
अगर कोई एपीआई छूट जाता है, तो उसे लागू करने के दौरान कभी भी चालू किया जा सकता है.
gcloud कमांड और उनके इस्तेमाल के बारे में जानने के लिए, दस्तावेज़ देखें.
3. डेटाबेस सेटअप करना
इस लैब में, हम खुदरा कारोबार से जुड़े डेटा को सेव करने के लिए, डेटाबेस के तौर पर AlloyDB का इस्तेमाल करेंगे. यह सभी संसाधनों को सेव करने के लिए, क्लस्टर का इस्तेमाल करता है. जैसे, डेटाबेस और लॉग. हर क्लस्टर में एक प्राइमरी इंस्टेंस होता है, जो डेटा का ऐक्सेस पॉइंट उपलब्ध कराता है. टेबल में असल डेटा होगा.
आइए, एक AlloyDB क्लस्टर, इंस्टेंस, और टेबल बनाएं. इसमें ई-कॉमर्स डेटासेट लोड किया जाएगा.
क्लस्टर और इंस्टेंस बनाना
- Cloud Console में AlloyDB पेज पर जाएं.
Cloud Console में ज़्यादातर पेजों को आसानी से ढूंढने के लिए, कंसोल के खोज बार का इस्तेमाल करके उन्हें खोजें.
- उस पेज पर जाकर, क्लस्टर बनाएं चुनें:

- आपको नीचे दी गई इमेज जैसी स्क्रीन दिखेगी. नीचे दी गई वैल्यू का इस्तेमाल करके, क्लस्टर और इंस्टेंस बनाएं. अगर आपको रिपॉज़िटरी से ऐप्लिकेशन कोड क्लोन करना है, तो पक्का करें कि वैल्यू मैच करती हों:
- क्लस्टर आईडी: "
vector-cluster" - password: "
alloydb" - PostgreSQL 15 के साथ काम करता है
- देश/इलाका: "
us-central1" - नेटवर्किंग: "
default"

- डिफ़ॉल्ट नेटवर्क चुनने पर, आपको नीचे दी गई इमेज जैसी स्क्रीन दिखेगी. कनेक्शन सेट अप करें को चुनें.

- इसके बाद, "अपने-आप असाइन की गई आईपी रेंज का इस्तेमाल करें" को चुनें और जारी रखें पर क्लिक करें. जानकारी देखने के बाद, कनेक्शन बनाएं को चुनें.

- नेटवर्क सेट अप हो जाने के बाद, क्लस्टर बनाना जारी रखा जा सकता है. नीचे दिए गए तरीके से क्लस्टर सेट अप करने के लिए, CREATE CLUSTER पर क्लिक करें:

पक्का करें कि आपने इंस्टेंस आईडी को "
vector-instance"
.
ध्यान दें कि क्लस्टर बनने में करीब 10 मिनट लगेंगे. प्रोसेस पूरी होने के बाद, आपको एक स्क्रीन दिखेगी. इसमें, आपके बनाए गए क्लस्टर की खास जानकारी दिखेगी.
4. डेटा डालना
अब स्टोर के बारे में जानकारी देने वाली टेबल जोड़ें. AlloyDB पर जाएं. इसके बाद, प्राइमरी क्लस्टर और फिर AlloyDB Studio चुनें:

आपको इंस्टेंस बनने तक इंतज़ार करना पड़ सकता है. जब यह प्रोसेस पूरी हो जाए, तो क्लस्टर बनाते समय बनाए गए क्रेडेंशियल का इस्तेमाल करके AlloyDB में साइन इन करें. PostgreSQL में पुष्टि करने के लिए, इस डेटा का इस्तेमाल करें:
- उपयोगकर्ता नाम : "
postgres" - डेटाबेस : "
postgres" - पासवर्ड : "
alloydb"
AlloyDB Studio में पुष्टि हो जाने के बाद, एडिटर में SQL कमांड डाली जा सकती हैं. आखिरी विंडो के दाईं ओर मौजूद प्लस आइकॉन का इस्तेमाल करके, एक से ज़्यादा एडिटर विंडो जोड़ी जा सकती हैं.

ज़रूरत के मुताबिक, 'चलाएं', 'फ़ॉर्मैट करें', और 'मिटाएं' विकल्पों का इस्तेमाल करके, एडिटर विंडो में AlloyDB के लिए कमांड डाली जा सकती हैं.
एक्सटेंशन चालू करना
इस ऐप्लिकेशन को बनाने के लिए, हम pgvector और google_ml_integration एक्सटेंशन का इस्तेमाल करेंगे. pgvector एक्सटेंशन की मदद से, वेक्टर एम्बेडिंग को सेव किया जा सकता है और उन्हें खोजा जा सकता है. google_ml_integration एक्सटेंशन, ऐसे फ़ंक्शन उपलब्ध कराता है जिनका इस्तेमाल करके, Vertex AI के अनुमान लगाने वाले एंडपॉइंट को ऐक्सेस किया जा सकता है. इससे एसक्यूएल में अनुमान मिलते हैं. इन एक्सटेंशन को चालू करें. इसके लिए, ये DDL चलाएं:
CREATE EXTENSION IF NOT EXISTS google_ml_integration CASCADE;
CREATE EXTENSION IF NOT EXISTS vector;
अगर आपको अपने डेटाबेस पर चालू किए गए एक्सटेंशन देखने हैं, तो यह एसक्यूएल कमांड चलाएं:
select extname, extversion from pg_extension;
टेबल बनाना
नीचे दिए गए डीडीएल स्टेटमेंट का इस्तेमाल करके, एक टेबल बनाएं:
CREATE TABLE toys ( id VARCHAR(25), name VARCHAR(25), description VARCHAR(20000), quantity INT, price FLOAT, image_url VARCHAR(200), text_embeddings vector(768)) ;
ऊपर दिए गए निर्देश को चलाने के बाद, आपको डेटाबेस में टेबल दिखनी चाहिए.
डेटा डालना
इस लैब के लिए, हमारे पास इस SQL फ़ाइल में करीब 72 रिकॉर्ड का टेस्ट डेटा है. इसमें id, name, description, quantity, price, image_url फ़ील्ड शामिल होते हैं. अन्य फ़ील्ड को लैब में बाद में भरा जाएगा.
वहां से लाइनों/इंसर्ट स्टेटमेंट को कॉपी करें. इसके बाद, उन लाइनों को एडिटर के खाली टैब में चिपकाएं और 'चलाएं' को चुनें.
टेबल का कॉन्टेंट देखने के लिए, एक्सप्लोरर सेक्शन को तब तक बड़ा करें, जब तक आपको कपड़ों के नाम वाली टेबल न दिख जाए. टेबल से क्वेरी करने का विकल्प देखने के लिए, तीन बिंदु (⋮) चुनें. SELECT स्टेटमेंट, नए एडिटर टैब में खुलेगा.

अनुमति दें
उपयोगकर्ता postgres को embedding फ़ंक्शन पर कार्रवाई करने के अधिकार देने के लिए, नीचे दिया गया स्टेटमेंट चलाएं:
GRANT EXECUTE ON FUNCTION embedding TO postgres;
AlloyDB सेवा खाते को Vertex AI User की भूमिका असाइन करना
Cloud Shell टर्मिनल पर जाएं और यह कमांड डालें:
PROJECT_ID=$(gcloud config get-value project)
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member="serviceAccount:service-$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)")@gcp-sa-alloydb.iam.gserviceaccount.com" \
--role="roles/aiplatform.user"
5. कॉन्टेक्स्ट के लिए एंबेडिंग बनाना
कंप्यूटर के लिए, टेक्स्ट को प्रोसेस करने की तुलना में नंबरों को प्रोसेस करना ज़्यादा आसान होता है. एम्बेडिंग सिस्टम, टेक्स्ट को फ़्लोटिंग पॉइंट नंबर की सीरीज़ में बदलता है. इसे वेक्टर एम्बेडिंग कहा जाता है. यह टेक्स्ट को इस तरह से दिखाता है कि इससे कोई फ़र्क़ नहीं पड़ता कि टेक्स्ट को किस तरह से लिखा गया है, किस भाषा का इस्तेमाल किया गया है वगैरह.
उदाहरण के लिए, समुद्र के किनारे मौजूद किसी जगह को "पानी के किनारे", "समुद्र के सामने", "कमरे से समुद्र तक पैदल जाएं", "sur la mer", "на берегу океана" वगैरह कहा जा सकता है. ये सभी शब्द अलग-अलग दिखते हैं, लेकिन इनका सिमैंटिक मतलब या मशीन लर्निंग की शब्दावली में, इनके एम्बेडिंग एक-दूसरे के बहुत करीब होने चाहिए.
डेटा और कॉन्टेक्स्ट तैयार होने के बाद, हम एसक्यूएल चलाएंगे, ताकि प्रॉडक्ट के ब्यौरे की एम्बेडिंग को फ़ील्ड embedding में टेबल में जोड़ा जा सके. आपके पास कई तरह के एम्बेडिंग मॉडल इस्तेमाल करने का विकल्प होता है. हम Vertex AI से text-embedding-005 का इस्तेमाल कर रहे हैं. पक्का करें कि पूरे प्रोजेक्ट में एक ही एम्बेडिंग मॉडल का इस्तेमाल किया गया हो!
ध्यान दें: अगर Google Cloud का कोई पुराना प्रोजेक्ट इस्तेमाल किया जा रहा है, तो आपको टेक्स्ट एम्बेड करने वाले मॉडल के पुराने वर्शन का इस्तेमाल जारी रखना पड़ सकता है. जैसे, textembedding-gecko.
AlloyDB Studio टैब पर वापस जाएं और यह डीएमएल टाइप करें:
UPDATE toys set text_embeddings = embedding( 'text-embedding-005', description);
कुछ एम्बेड देखने के लिए, toys टेबल को फिर से देखें. बदलाव देखने के लिए, SELECT स्टेटमेंट को फिर से चलाना न भूलें.
SELECT id, name, description, price, quantity, image_url, text_embeddings FROM toys;
इससे टॉय के ब्यौरे के लिए, एम्बेडिंग वेक्टर मिलना चाहिए. यह फ़्लोट की एक ऐरे की तरह दिखता है. इसे यहां दिखाया गया है:

ध्यान दें: फ़्री टियर के तहत बनाए गए नए Google Cloud प्रोजेक्ट को, एम्बेडिंग मॉडल के लिए हर सेकंड में एम्बेडिंग के अनुरोधों की संख्या से जुड़ी समस्याएं आ सकती हैं. हमारा सुझाव है कि आईडी के लिए फ़िल्टर क्वेरी का इस्तेमाल करें. इसके बाद, एम्बेडिंग जनरेट करते समय, एक से पांच रिकॉर्ड और इसी तरह के अन्य रिकॉर्ड चुनें.
6. वेक्टर सर्च करना
अब टेबल, डेटा, और एम्बेडिंग तैयार हैं. इसलिए, उपयोगकर्ता के खोज टेक्स्ट के लिए रीयल टाइम वेक्टर सर्च करते हैं.
मान लें कि उपयोगकर्ता ने पूछा:
"I want a white plush teddy bear toy with a floral pattern."
इसके लिए, यहां दी गई क्वेरी चलाकर मैच देखे जा सकते हैं:
select * from toys
ORDER BY text_embeddings <=> CAST(embedding('text-embedding-005', 'I want a white plush teddy bear toy with a floral pattern') as vector(768))
LIMIT 5;
आइए, इस क्वेरी के बारे में ज़्यादा जानें:
इस क्वेरी में,
- उपयोगकर्ता ने यह खोज क्वेरी डाली है: "
I want a white plush teddy bear toy with a floral pattern." - हम इसे
embedding()तरीके से एम्बेडिंग में बदल रहे हैं. इसके लिए,text-embedding-005मॉडल का इस्तेमाल किया जा रहा है. यह चरण पिछले चरण जैसा ही है. पिछले चरण में, हमने टेबल में मौजूद सभी आइटम पर एम्बेड करने की सुविधा लागू की थी. - "
<=>" का मतलब, कोसाइन सिमिलैरिटी दूरी के तरीके का इस्तेमाल करना है. pgvector के दस्तावेज़ में, समानता मापने के सभी तरीके देखे जा सकते हैं. - हम एम्बेड करने के तरीके के नतीजे को वेक्टर टाइप में बदल रहे हैं, ताकि यह डेटाबेस में सेव किए गए वेक्टर के साथ काम कर सके.
- LIMIT 5 का मतलब है कि हमें खोजे गए टेक्स्ट के लिए, पांच सबसे मिलते-जुलते टेक्स्ट निकालने हैं.
नतीजा ऐसा दिखता है:

नतीजों में देखा जा सकता है कि खोज के लिए इस्तेमाल किए गए टेक्स्ट से मिलते-जुलते नतीजे मिले हैं. नतीजों में बदलाव देखने के लिए, टेक्स्ट बदलकर देखें.
7. टूलबॉक्स के साथ इंटरैक्ट करने के लिए AlloyDB को तैयार करना
Toolbox को सेट अप करने से पहले, आइए हम अपने AlloyDB इंस्टेंस में सार्वजनिक आईपी कनेक्टिविटी चालू करें, ताकि नया टूल डेटाबेस को ऐक्सेस कर सके.
- अपने AlloyDB इंस्टेंस पर जाएं. इसके बाद, बदलाव करें पर क्लिक करें और प्राइमरी इंस्टेंस में बदलाव करें पेज पर जाएं.
- सार्वजनिक आईपी कनेक्टिविटी सेक्शन पर जाएं. इसके बाद, 'सार्वजनिक आईपी चालू करें' चेकबॉक्स को चुनें और अपनी Cloud Shell मशीन का आईपी पता डालें.
- Cloud Shell मशीन का आईपी पाने के लिए, Cloud Shell टर्मिनल पर जाएं और ifconfig डालें. नतीजे में, eth0 inet पते का पता लगाएं और आखिरी दो अंकों को 0.0 से बदलें. साथ ही, मास्क का साइज़ ‘/16' रखें. उदाहरण के लिए, यह "XX.XX.0.0/16" की तरह दिखेगा. इसमें XX संख्याएं हैं.
- इस आईपी पते को, 'बदलाव करें' इंस्टेंस पेज के, अधिकृत बाहरी नेटवर्क "नेटवर्क" टेक्स्ट बॉक्स में चिपकाएं.

- बदलाव करने के बाद, इंस्टेंस अपडेट करें पर क्लिक करें.
इस प्रोसेस को पूरा होने में कुछ मिनट लगेंगे.
8. डेटाबेस इंस्टॉल करने के लिए MCP टूलबॉक्स
- टूल की जानकारी सेव करने के लिए, एक प्रोजेक्ट फ़ोल्डर बनाया जा सकता है. इस मामले में, हम खिलौने की दुकान के डेटा पर काम कर रहे हैं. इसलिए, "toystore" नाम का फ़ोल्डर बनाते हैं और इसमें जाते हैं. Cloud Shell टर्मिनल पर जाएं. पक्का करें कि आपका प्रोजेक्ट चुना गया हो और टर्मिनल के प्रॉम्प्ट में दिख रहा हो. अपने Cloud Shell टर्मिनल में यह कमांड चलाएं:
mkdir toystore
cd toystore
- अपने नए फ़ोल्डर में टूलबॉक्स को डाउनलोड और इंस्टॉल करने के लिए, यहां दिया गया कमांड चलाएं:
# see releases page for other versions
export VERSION=0.1.0
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox
- Cloud Shell Editor पर टॉगल करें. अभी बनाए गए फ़ोल्डर "toystore" को बड़ा करें और tools.yaml नाम की एक नई फ़ाइल बनाएं. यहां दिए गए कॉन्टेंट को कॉपी करें. YOUR_PROJECT_ID की जगह अपना प्रोजेक्ट आईडी डालें. साथ ही, यह देखें कि कनेक्शन की अन्य जानकारी सही है या नहीं.
sources:
alloydb-toys:
kind: "alloydb-postgres"
project: "YOUR_PROJECT_ID"
region: "us-central1"
cluster: "vector-cluster"
instance: "vector-instance"
database: "postgres"
user: "postgres"
password: "alloydb"
tools:
get-toy-price:
kind: postgres-sql
source: alloydb-toys
description: Get the price of a toy based on a description.
parameters:
- name: description
type: string
description: A description of the toy to search for.
statement: |
SELECT price FROM toys
ORDER BY text_embeddings <=> CAST(embedding('text-embedding-005', $1) AS vector(768))
LIMIT 1;
इस टूल में, हम सिर्फ़ उपयोगकर्ता के खोज टेक्स्ट (कस्टम खिलौने का ब्यौरा) से मिलते-जुलते नतीजे ढूंढ रहे हैं और उसकी कीमत दिखा रहे हैं. इसे बदलकर, सबसे ज़्यादा मिलते-जुलते पांच खिलौनों की औसत कीमत भी पता लगाई जा सकती है:
select avg(price) from ( SELECT price FROM toys ORDER BY text_embeddings <=> CAST(embedding(‘text-embedding-005', $1) AS vector(768)) LIMIT 5 ) as price;
आपने टूल डेफ़िनिशन सेट कर दी है!
tools.yaml को कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, यह दस्तावेज़ पढ़ें.
- Cloud Shell टर्मिनल पर टॉगल करें और अपने टूल के कॉन्फ़िगरेशन के साथ टूलबॉक्स सर्वर शुरू करने के लिए, यह निर्देश डालें:
./toolbox --tools_file "tools.yaml"
- अब अगर क्लाउड पर वेब प्रीव्यू मोड में सर्वर खोला जाता है, तो आपको टूलबॉक्स सर्वर चालू दिखेगा. साथ ही, आपको
get-toy-price.नाम का नया टूल भी दिखेगा
9. डेटाबेस के लिए MCP टूलबॉक्स का Cloud Run डिप्लॉयमेंट
आइए, इसे Cloud Run पर डिप्लॉय करें, ताकि आप इस टूल का इस्तेमाल कर सकें.
- इस पेज पर दिए गए निर्देशों का एक-एक करके पालन करें. ऐसा तब तक करें, जब तक आप "Cloud Run पर डिप्लॉय करें" सेक्शन के तीसरे पॉइंट में दी गई
gcloud run deploy toolboxकमांड तक न पहुंच जाएं. आपको पहले विकल्प की ज़रूरत है, न कि दूसरे विकल्प की. दूसरे विकल्प का इस्तेमाल तब किया जाता है, जब वीपीसी नेटवर्क के तरीके का इस्तेमाल किया जा रहा हो. - टूलबॉक्स सर्वर को सही तरीके से डिप्लॉय करने के बाद, आपको Cloud Run का डिप्लॉय किया गया एंडपॉइंट मिलेगा. इसे CURL कमांड के साथ टेस्ट करें.
अहम जानकारी:
पेज पर दिए गए निर्देशों का ध्यान से पालन करें और कोई भी निर्देश न छोड़ें.
अब आपके पास, अपने एजेंटिक ऐप्लिकेशन में नए टूल का इस्तेमाल करने का विकल्प उपलब्ध है!!!
10. अपने ऐप्लिकेशन को MCP Toolbox for Databases से कनेक्ट करना
इस हिस्से में, हम एक छोटा ऐप्लिकेशन बनाएंगे. इससे आपके टूल को टेस्ट किया जा सकेगा, ताकि यह पता चल सके कि वह ऐप्लिकेशन की ज़रूरतों के हिसाब से काम कर रहा है या नहीं. साथ ही, यह भी पता चल सकेगा कि वह जवाब दे पा रहा है या नहीं.
- Google Colab पर जाएं और नई नोटबुक खोलें.
- अपनी नोटबुक में यह कोड चलाएं
!pip install toolbox-core
from toolbox_core import ToolboxClient
# Replace with your Toolbox service's URL
toolbox = ToolboxClient("https://toolbox-*****-uc.a.run.app")
# This tool can be passed to your application!
tool = toolbox.load_tool("get-toy-price")
# If there are multiple tools
# These tools can be passed to your application!
# tools = await client.load_toolset("<<toolset_name>>")
# Invoke the tool with a search text to pass as the parameter
result = tool.invoke({"description": "white plush toy"})
# Print result
print(result)
- आपका जवाब कुछ इस तरह होना चाहिए:

यह टूल, Python ऐप्लिकेशन में साफ़ तौर पर इस्तेमाल किया जा रहा है. यह ऐप्लिकेशन, टूलकिट toolbox-langchain. का इस्तेमाल करता है
- अगर आपको इस टूल का इस्तेमाल करना है और इसे LangGraph इंटिग्रेट किए गए ऐप्लिकेशन में किसी एजेंट से बाइंड करना है, तो
langgraphटूलकिट की मदद से आसानी से ऐसा किया जा सकता है. - इसके लिए, कोड स्निपेट देखें.
11. इसे क्लाउड पर ले जाएं!!!
आइए, इस Python कोड स्निपेट को Cloud Run Functions में रैप करके, इसे बिना सर्वर के काम करने वाला बना दें!
- इसे Cloud Functions में पाने के लिए, कोड रिपो फ़ोल्डर से सोर्स कॉपी करें.
- Cloud Run Functions कंसोल पर जाएं और CREATE FUNCTION पर क्लिक करें.
- डेमो ऐप्लिकेशन के लिए, इसे बिना पुष्टि किए हुए रखें. साथ ही, अगले पेज पर Python 3.11 रनटाइम चुनें.
- पहले चरण में शेयर की गई सोर्स रेपो से
main.pyऔरrequirements.txtफ़ाइलें कॉपी करें. इसके बाद, उन्हें अपनी फ़ाइलों में चिपकाएं. - main.py में मौजूद सर्वर यूआरएल को अपने सर्वर यूआरएल से बदलें.
- फ़ंक्शन को डिप्लॉय करें. इसके बाद, आपको कीमत का अनुमान लगाने वाले टूल के लिए एक REST एंडपॉइंट मिल जाएगा. इसे खिलौनों की दुकान के वेब ऐप्लिकेशन में ऐक्सेस किया जा सकता है.
- आपका एंडपॉइंट ऐसा दिखना चाहिए:
https://us-central1-*****.cloudfunctions.net/toolbox-toys
- इसे सीधे तौर पर Cloud Functions कंसोल पर आज़माया जा सकता है. इसके लिए, TESTING टैब पर जाएं और अनुरोध के इनपुट के तौर पर यह डालें:
{
"search": "White plush toy"
}
- फ़ंक्शन की जांच करें पर क्लिक करें या Cloud Shell टर्मिनल में, अपनी पसंद का कोई भी विकल्प चलाएं. आपको "आउटपुट" टाइटल के नीचे दाईं ओर यह नतीजा दिखेगा:

12. बधाई हो
बधाई हो! आपने एक मज़बूत और मॉड्यूलर टूल बनाया है. यह टूल, डेटाबेस, प्लैटफ़ॉर्म, और जनरेटिव एआई ऑर्केस्ट्रेशन फ़्रेमवर्क के साथ इंटरैक्ट कर सकता है. इससे आपको एजेंटिक ऐप्लिकेशन बनाने में मदद मिलेगी.