इस कोडलैब (कोड बनाना सीखने के लिए ट्यूटोरियल) के बारे में जानकारी
1. खास जानकारी
पेटेंट से जुड़ी रिसर्च काफ़ी लंबी और मुश्किल है. काम के इनोवेशन का पता लगाने के लिए, अनगिनत तकनीकी चीज़ों के बारे में जानना एक मुश्किल काम है. पारंपरिक कीवर्ड पर आधारित खोजें अक्सर गलत होती हैं और उनमें ज़्यादा समय लगता है. ऐब्स्ट्रैक्ट लंबे और तकनीकी होते हैं, जिनकी वजह से मूल आइडिया को जल्दी से समझना मुश्किल हो जाता है. इसकी वजह से हो सकता है कि शोधकर्ताओं के पास मुख्य पेटेंट न हों या वे ऐसे नतीजों पर अपना समय बर्बाद कर रहे हों जो काम के नहीं हैं.
इस क्रांति के पीछे का रहस्य वेक्टर खोज में है. आसान कीवर्ड मैचिंग पर निर्भर होने के बजाय, वेक्टर सर्च, टेक्स्ट को अंकों वाले निरूपणों (एम्बेडिंग) में बदल देता है. इससे हमें सिर्फ़ इस्तेमाल किए गए खास शब्दों के साथ-साथ, क्वेरी के मतलब के हिसाब से भी खोज करने में मदद मिलती है. साहित्य की दुनिया में, यह चीज़ बदल गई है. कल्पना करें कि आपको "पहने जाने वाले हृदय गति मॉनिटर" के लिए पेटेंट मिल गया है भले ही सटीक वाक्यांश का इस्तेमाल दस्तावेज़ में न किया गया हो.
चुनौती: आज के दौर में साहित्य से जुड़ी खोजों के लिए, लोगों को उनकी खास प्राथमिकताओं के हिसाब से तुरंत जवाब और बेहतर सुझाव देने की उम्मीद की जाती है. खोज के पारंपरिक तरीकों में, अक्सर इस तरह की सेटिंग को मनमुताबिक नहीं बनाया जा सकता.
समाधान: जानकारी पर आधारित हमारा चैट ऐप्लिकेशन, इस चुनौती का सामना करता है. यह आपके पेटेंट डेटासेट से हासिल किए गए रिच नॉलेज बेस का इस्तेमाल करता है. इससे ग्राहक की दिलचस्पी को समझा जा सकता है, समझदारी से जवाब दिया जा सकता है, और बहुत ज़्यादा काम के नतीजे दिए जा सकते हैं.
आपको क्या बनाना होगा
इस लैब (पार्ट 2) के हिस्से के तौर पर, आपको:
- Vertex AI Agent Builder एजेंट बनाएं
- AlloyDB टूल को एजेंट के साथ इंटिग्रेट करें
ज़रूरी शर्तें
2. आर्किटेक्चर
डेटा फ़्लो: आइए देखें कि हमारे सिस्टम में, डेटा कैसे ट्रांसफ़र होता है:
डेटा डालना:
पेटेंट डेटा को AlloyDB में लोड किया जाता है.
Analytics इंजन:
हम नीचे दिए गए काम करने के लिए, एनालिटिक्स इंजन के रूप में AlloyDB का इस्तेमाल करेंगे:
- कॉन्टेक्स्ट एक्सट्रैक्शन: इंजन, AlloyDB में सेव किए गए डेटा का विश्लेषण करता है. इससे पेटेंट के डेटासेट को समझने में मदद मिलती है.
- एम्बेड करना क्रिएशन: एम्बेडिंग (टेक्स्ट का गणितीय निरूपण) उपयोगकर्ता की क्वेरी और AlloyDB में संग्रहित जानकारी दोनों के लिए जनरेट किया जाता है.
- वेक्टर खोज: इंजन एक समानता वाली खोज करता है, जिसमें क्वेरी एम्बेड करने की तुलना पेटेंट एब्सट्रैक्ट के एम्बेड से की जाती है. यह सबसे प्रासंगिक "आस-पास के पड़ोसी" की पहचान करता है के हिसाब से विज्ञापन दिखाता है.
जवाब जनरेट करना:
पुष्टि किए गए जवाबों को JSON कलेक्शन में बांटा जाता है. साथ ही, पूरे इंजन को बिना सर्वर वाले Cloud Run फ़ंक्शन में पैकेज किया जाता है, जिसे Agent Builder से शुरू किया जाता है.
ऊपर बताए गए चरण पहले ही लैब के पार्ट 1 में शामिल हैं.
हमने, हमारे स्मार्ट पेटेंट सर्च असिस्टेंट को चलाने वाले, जानकारी पर आधारित ऐनलिटिक्स इंजन बनाने के बारे में तकनीकी जानकारी के बारे में चर्चा की. चलिए, अब यह देखते हैं कि हम Agent Builder की मदद से, बातचीत वाले इंटरफ़ेस में इस इंजन को कैसे लागू करते हैं. दूसरा चरण शुरू करने से पहले, पक्का करें कि आपके पास एंडपॉइंट यूआरएल तैयार है. यह अगला चरण है, जो हम इस लैब में कवर करते हैं:
बातचीत:
एजेंट बिल्डर, उपयोगकर्ताओं को आम भाषा के फ़ॉर्मैट में जवाब दिखाता है, ताकि उनके बीच बातचीत करना आसान हो जाए.
3. शुरू करने से पहले
प्रोजेक्ट बनाना
- Google Cloud Console में, प्रोजेक्ट सिलेक्टर पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
- पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग की सुविधा चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें .
- आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला एक कमांड-लाइन एनवायरमेंट है. यह पहले से लोड होकर, Google Cloud में आता है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell को चालू करें पर क्लिक करें.
- Cloud Shell से कनेक्ट करने के बाद, यह जांच लें कि आपकी पुष्टि पहले ही हो चुकी है. साथ ही, यह देखें कि प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल किया गया हो:
gcloud auth list
- Cloud Shell में यह कमांड चलाएं, ताकि यह पुष्टि की जा सके कि gcloud कमांड को आपके प्रोजेक्ट के बारे में जानकारी है.
gcloud config list project
- अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए नीचे दिया गया कमांड इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
- ज़रूरी एपीआई चालू करें. gcloud कमांड का विकल्प हर प्रॉडक्ट को खोजकर या इस लिंक का इस्तेमाल करके कंसोल के ज़रिए उपलब्ध कराया जाता है.
अगर कोई एपीआई छूट जाता है, तो लागू होने के दौरान उसे कभी भी चालू किया जा सकता है.
gcloud के लिए कमांड और इसके इस्तेमाल के बारे में जानने के लिए, दस्तावेज़ देखें.
अहम जानकारी: यह भी पक्का करें कि इसे पूरा करने के लिए, लैब का पहला पार्ट पूरा कर लिया गया हो.
4. एजेंट बनाना
पेश है एजेंट बिल्डर
Agent Builder एक बेहतरीन और कम कोड वाला टूल है. इसकी मदद से, हम फटाफट और बेहतर तरीके से बातचीत करने वाले एजेंट बना सकते हैं. इसकी मदद से, डायलॉग फ़्लो डिज़ाइन करने, नॉलेज बेस को इंटिग्रेट करने, और बाहरी एपीआई से कनेक्ट करने की प्रोसेस आसान हो जाती है. हमारे मामले में, हम एजेंट बिल्डर का इस्तेमाल करके, पार्ट 1 में बनाए गए Cloud Function एंडपॉइंट के साथ आसानी से कनेक्ट करेंगे. इससे हमारे पेटेंट सर्च असिस्टेंट को हमारे पेटेंट नॉलेज बेस को ऐक्सेस करने और उपयोगकर्ता की क्वेरी का बेहतर तरीके से जवाब देने में मदद मिलेगी.
पक्का करें कि आपने पहले हिस्से में बनाया गयाJava Cloud Run फ़ंक्शन , सामान्य टेक्स्ट के बजाय JSON ARRAY दिखाया है.
एजेंट को तैयार करना
आइए, इस नए एजेंट को बनाने की शुरुआत करते हैं, ताकि कपड़े वाले प्रॉडक्ट से जुड़े लोगों के सवालों के जवाब दिए जा सकें.
- Agent Builder प्लैटफ़ॉर्म पर लॉग इन करके शुरुआत करें. अगर आपसे एपीआई चालू करने के लिए कहा जाता है, तो 'जारी रखें' और 'एपीआई को चालू करें' पर क्लिक करें.
- "ऐप्लिकेशन बनाएं" पर क्लिक करें और अपने एजेंट को एक जानकारी देने वाला नाम दें (जैसे, "पेटेंट सर्च असिस्टेंट").
- ऐप्लिकेशन टाइप "एजेंट" पर क्लिक करें.
- को अपनाएं. अपने एजेंट को जानकारी देने वाला नाम दें, जैसे कि "Patent Search Assistant" और इलाके को us-central1 के तौर पर सेट करें
- एजेंट की जानकारी डालें:
- एजेंट का नाम बदलकर, "पेटेंट सर्च एजेंट" करें.
- नीचे दिया गया "लक्ष्य" जोड़ें:
You are a professional intelligent patent search agent! Your job is to help the customer find patents matching the context of their search text.
- इसे अभी सेव करें और निर्देशों को अभी के लिए खाली छोड़ दें.
- इसके बाद, नेविगेशन मेन्यू में 'टूल' पर क्लिक करें. इसके बाद, 'बनाएं' पर क्लिक करें.
टूल का नाम डालें: पेटेंट खोज टूल
टाइप: OpenAPI
टूल की जानकारी डालें:
This tool refers to the dataset in the backend as the context information for product inventory. It takes as input the user's search text summarized by the agent and matches with the most appropriate list of items and returns as an array of items.
स्कीमा डालें — YAML फ़ॉर्मैट में OpenAPI:
इस हिस्से में हम एजेंट को चलाने के लिए बैकएंड एंडपॉइंट का इस्तेमाल करते हैं. नीचे दिए गए OpenAPI स्पेसिफ़िकेशन को कॉपी करें और एंगल ब्रैकेट में दिए गए यूआरएल प्लेसहोल्डर को अपने Cloud Function एंडपॉइंट से बदलें:
openapi: 3.0.0
info:
title: Patent Search API
version: v1
servers:
- url: YOUR_CLOUDFUNCTION_ENDPOINT_URL
paths:
/patent-search:
post:
summary: Search for patents using a text query.
requestBody:
content:
application/json:
schema:
type: object
properties:
search:
type: string
description: The text query to search for patents.
example: A new Natural Language Processing related Machine Learning Model
responses:
'200':
description: Successful search response with a JSON array of matching patents.
content:
application/json:
schema:
type: array
items:
type: object
properties:
result:
type: string
description: Patent title.
'400':
description: Invalid request body.
'500':
description: Internal server error.
दूसरे कॉन्फ़िगरेशन को उनकी डिफ़ॉल्ट वैल्यू पर रहने दें और "सेव करें" पर क्लिक करें.
- अब एजेंट पर वापस जाएं, क्योंकि हमें "टूल" जोड़ना है कॉन्फ़िगरेशन को एजेंट के "निर्देश" पर सेट करना. नीचे दिए गए निर्देश प्लेसहोल्डर में, इंडेंट जोड़ें (ध्यान रखें कि फ़्लो तय करने के लिए, इंडेंट ज़रूरी हैं):
- Greet the users, then ask how you can help them today.
- Summarize the user's request and ask them to confirm that you understood correctly.
- If necessary, seek clarifying details.
- Use ${TOOL:Patent Search Tool} to help the user with their task.
- Return the response from the ${TOOL:Patent Search Tool} to the user in a well formed string.
- Thank the user for their business and say goodbye.
पक्का करें कि आपने "पेटेंट खोज टूल" टूल का इस्तेमाल किया हो को "उपलब्ध टूल" में चुना गया हो सेक्शन पर जा सकते हैं और फिर एजेंट को सेव कर सकते हैं.
5. एजेंट की जांच करें
दाईं ओर मौजूद पैनल में, आपको 'झलक दिखाने वाले एजेंट' सेक्शन दिखेगा. इसमें अपने एजेंट को टेस्ट किया जा सकता है.
जैसा कि आपको नीचे दिए गए स्क्रीनशॉट में दिख रहा है, मैंने एक उपयोगकर्ता के तौर पर आपका मैसेज भेजा है. साथ ही, "किसी भी फ़िटनेस ट्रैकर के आइडिया के लिए मिलते-जुलते पेटेंट" के अनुरोध के साथ चैट शुरू की:
यह JSON में दिया गया जवाब है:
यह Cloud Function से मिला JSON का रॉ नतीजा है जो AlloyDB समानता की खोज को प्रोसेस करता है. हो गया! अब हम एजेंट से संपर्क करने के लिए पूरी तरह से तैयार हैं.
6. डिप्लॉयमेंट और इंटिग्रेशन
जब आप एजेंट से संतुष्ट हो जाएं, तो एजेंट बिल्डर के इंटिग्रेशन का इस्तेमाल करके, एजेंट को आसानी से अलग-अलग चैनलों पर डिप्लॉय किया जा सकता है. इसे अपनी वेबसाइट में एम्बेड किया जा सकता है, लोकप्रिय मैसेज सेवा प्लैटफ़ॉर्म के साथ इंटिग्रेट किया जा सकता है या इसके लिए एक खास मोबाइल ऐप्लिकेशन भी बनाया जा सकता है. हम Agent Builder API का इस्तेमाल सीधे अपने वेब क्लाइंट ऐप्लिकेशन में भी कर सकते हैं. इसके बारे में, हमने इस ब्लॉग में बताया है.
7. व्यवस्थित करें
इस पोस्ट में इस्तेमाल किए गए संसाधनों के लिए, आपके Google Cloud खाते पर शुल्क न लगे, इसके लिए यह तरीका अपनाएं:
- Google Cloud Console में, मैनेज करें पर जाएं
- संसाधन पेज पर जाएं.
- प्रोजेक्ट की सूची में, वह प्रोजेक्ट चुनें जिसे मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.
- डायलॉग बॉक्स में, प्रोजेक्ट आईडी टाइप करें. इसके बाद, प्रोजेक्ट मिटाने के लिए, शट डाउन करें पर क्लिक करें.
8. बधाई हो
बधाई हो! ज़रूरत के हिसाब से तैयार किए गए आंकड़ों के इंजन और एजेंट बिल्डर के आसान इंटरफ़ेस की मदद से, हमने एक इंटेलिजेंट लिटरेचर सर्च असिस्टेंट बनाया है. इससे साहित्य की खोज को आसान, बेहतर, और सही मायनों में समझने में मदद मिलती है. AlloyDB, Vertex AI और वेक्टर खोज की क्षमताओं को मिलाकर, हमने प्रासंगिक और वेक्टर खोजों को ऐक्सेस करने लायक, कुशल, असल में अर्थों से प्रेरित और एजेंटी बनाने की दिशा में एक बड़ा कदम उठाया है!