AlloyDB और Vertex AI Agent Builder की मदद से पेटेंट सर्च असिस्टेंट - पार्ट 2

1. खास जानकारी

पेटेंट रिसर्च का दायरा बहुत बड़ा है और यह मुश्किल भी है. काम के इनोवेशन ढूंढने के लिए, कई तकनीकी ऐब्स्ट्रैक्ट को बारीकी से पढ़ना एक मुश्किल काम है. कीवर्ड के आधार पर की जाने वाली पारंपरिक खोजें अक्सर गलत होती हैं और इनमें समय भी ज़्यादा लगता है. जवाब बहुत लंबे और तकनीकी होते हैं. इसलिए, मुख्य आइडिया को तुरंत समझना मुश्किल होता है. इस वजह से, शोधकर्ताओं को ज़रूरी पेटेंट नहीं मिल पाते या वे काम के न होने वाले नतीजों पर समय बर्बाद करते हैं.

इस क्रांति के पीछे का मुख्य कारण, वेक्टर सर्च है. वेक्टर सर्च, कीवर्ड मैचिंग पर भरोसा करने के बजाय, टेक्स्ट को संख्यात्मक प्रजेंटेशन (एम्बेडिंग) में बदल देती है. इससे हमें क्वेरी में इस्तेमाल किए गए शब्दों के बजाय, क्वेरी के मतलब के आधार पर खोज करने में मदद मिलती है. साहित्य से जुड़ी खोजों के लिए, यह एक गेम-चेंजर है. मान लीजिए कि आपको "धड़कन की दर मापने वाले पहनने योग्य डिवाइस" के लिए पेटेंट मिलता है, भले ही दस्तावेज़ में इस वाक्यांश का इस्तेमाल न किया गया हो.

चुनौती: साहित्य से जुड़ी आधुनिक खोजों से, लोगों को तुरंत जवाब और उनकी पसंद के हिसाब से बेहतर सुझाव मिलने चाहिए. खोज के पुराने तरीकों से, अक्सर इस तरह के मनमुताबिक नतीजे नहीं मिलते.

समाधान: हमारा चैट ऐप्लिकेशन, इस चुनौती का सामना करने में आपकी मदद करता है. यह आपके पेटेंट डेटासेट से मिली जानकारी का इस्तेमाल करके, खरीदार के इरादे को समझता है. साथ ही, स्मार्ट तरीके से जवाब देता है और काम के नतीजे दिखाता है.

आपको क्या बनाना है

इस लैब (भाग 2) में, आपको ये काम करने होंगे:

  1. Vertex AI Agent Builder एजेंट बनाना
  2. AlloyDB टूल को एजेंट के साथ इंटिग्रेट करना

ज़रूरी शर्तें

  • कोई ब्राउज़र, जैसे कि Chrome या Firefox
  • बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट.

2. आर्किटेक्चर

डेटा फ़्लो: आइए, इस बारे में ज़्यादा जानें कि हमारे सिस्टम में डेटा कैसे ट्रांसफ़र होता है:

डेटा डालना:

पेटेंट का डेटा, AlloyDB में लोड किया जाता है.

Analytics Engine:

हम AlloyDB का इस्तेमाल, आंकड़ों के विश्लेषण वाले इंजन के तौर पर करेंगे. इससे ये काम किए जा सकेंगे:

  1. संदर्भ के हिसाब से जानकारी निकालना: इंजन, AlloyDB में सेव किए गए डेटा का विश्लेषण करता है, ताकि पेटेंट के डेटासेट को समझा जा सके.
  2. एम्बेडिंग बनाना: उपयोगकर्ता की क्वेरी और AlloyDB में सेव की गई जानकारी, दोनों के लिए एम्बेडिंग (टेक्स्ट का गणितीय प्रतिनिधित्व) जनरेट की जाती हैं.
  3. वेक्टर सर्च: यह इंजन, मिलती-जुलती खोज करता है. इसके लिए, यह क्वेरी एम्बेडिंग की तुलना पेटेंट के ऐब्स्ट्रैक्ट की एम्बेडिंग से करता है. इससे, उपयोगकर्ता की खोज के संदर्भ में सबसे ज़्यादा काम के "सबसे नज़दीकी पड़ोसी" की पहचान की जाती है.

जवाब जनरेट करने की सुविधा:

पुष्टि किए गए जवाबों को JSON ऐरे में स्ट्रक्चर किया जाता है. साथ ही, पूरे इंजन को सर्वरलेस Cloud Run फ़ंक्शन में पैकेज किया जाता है. इसे Agent Builder से शुरू किया जाता है.

ऊपर दिए गए चरण, लैब के पहले हिस्से में पहले ही शामिल किए जा चुके हैं.

हमने एक ऐसे Analytics इंजन को बनाने की तकनीकी जानकारी के बारे में बताया जो हमारी स्मार्ट पेटेंट सर्च असिस्टेंट को बेहतर बनाता है. अब, आइए जानते हैं कि हम एजेंट बिल्डर की मदद से, इस इंजन को बातचीत वाले इंटरफ़ेस में कैसे लाते हैं. पक्का करें कि आपके पास दूसरे हिस्से को शुरू करने से पहले, एंडपॉइंट यूआरएल तैयार हो. इस लैब में, हम इस अगले चरण के बारे में जानेंगे:

बातचीत वाला इंटरैक्शन:

Agent Builder, उपयोगकर्ता को सामान्य भाषा में जवाब देता है, जिससे बातचीत को आगे बढ़ाया जा सकता है.

3. शुरू करने से पहले

प्रोजेक्ट बनाना

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
  2. पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें .
  3. आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है. इसमें bq पहले से लोड होता है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.

Cloud Shell बटन की इमेज चालू करें

  1. Cloud Shell से कनेक्ट होने के बाद, यह देखने के लिए कि आपकी पुष्टि हो चुकी है और प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट किया गया है, इस कमांड का इस्तेमाल करें:
gcloud auth list
  1. यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यह कमांड चलाएं.
gcloud config list project
  1. अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
  1. ज़रूरी एपीआई चालू करें. gcloud कमांड के बजाय, कंसोल का इस्तेमाल करके भी ऐसा किया जा सकता है. इसके लिए, हर प्रॉडक्ट को खोजें या इस लिंक का इस्तेमाल करें.

अगर कोई एपीआई छूट जाता है, तो उसे लागू करने के दौरान कभी भी चालू किया जा सकता है.

gcloud कमांड और उनके इस्तेमाल के बारे में जानने के लिए, दस्तावेज़ देखें.

अहम जानकारी: इसे पूरा करने के लिए, पक्का करें कि आपने लैब का पहला हिस्सा पूरा कर लिया हो.

4. एजेंट बनाना

पेश है Agent Builder

Agent Builder एक पावरफ़ुल टूल है, जो कम कोड के साथ काम करता है. इसकी मदद से, हम बातचीत करने वाले एजेंट को तेज़ी से और बेहतर तरीके से बना सकते हैं. इससे डायलॉग फ़्लो डिज़ाइन करने, नॉलेज बेस इंटिग्रेट करने, और बाहरी एपीआई से कनेक्ट करने की प्रोसेस आसान हो जाती है. इस मामले में, हम Agent Builder का इस्तेमाल करके, पहले हिस्से में बनाए गए Cloud Function एंडपॉइंट से आसानी से कनेक्ट करेंगे. इससे, पेटेंट खोजने में मदद करने वाला हमारा असिस्टेंट, पेटेंट के बारे में जानकारी देने वाले हमारे डेटाबेस को ऐक्सेस कर पाएगा. साथ ही, उपयोगकर्ता की क्वेरी के जवाब समझदारी से दे पाएगा.

पक्का करें कि आपके पास पहले हिस्से में बनाया गया Java Cloud Run फ़ंक्शन हो, जो सादे टेक्स्ट के बजाय JSON ARRAY दिखाता हो.

एजेंट बनाना

आइए, कपड़ों के प्रॉडक्ट के बारे में लोगों के सवालों के जवाब देने के लिए, यह नया एजेंट बनाना शुरू करें.

  1. सबसे पहले, Agent Builder प्लैटफ़ॉर्म में लॉग इन करें. अगर आपको एपीआई चालू करने के लिए कहा जाता है, तो जारी रखें और एपीआई चालू करें पर क्लिक करें.
  2. "ऐप्लिकेशन बनाएं" पर क्लिक करें और अपने एजेंट को ऐसा नाम दें जिससे उसके बारे में पता चले. उदाहरण के लिए, "पेटेंट खोजने में मदद करने वाला एजेंट".
  3. ऐप्लिकेशन टाइप "एजेंट" पर क्लिक करें.

462bb48664e9a14e.png

  1. . अपने एजेंट को जानकारी देने वाला नाम दें, जैसे कि "पेटेंट खोजने में मदद करने वाला एजेंट" और क्षेत्र को us-central1 के तौर पर सेट करें
  2. एजेंट की जानकारी डालें:
  3. एजेंट का नाम बदलकर "पेटेंट खोजने वाला एजेंट" करो.
  4. नीचे दिया गया "लक्ष्य" जोड़ें:
You are a professional intelligent patent search agent! Your job is to help the customer find patents matching the context of their search text.

38f7d77d5ed0cb2a.png

  1. इसे अभी सेव करें और निर्देशों को फ़िलहाल खाली छोड़ दें.
  2. इसके बाद, नेविगेशन मेन्यू में जाकर टूल पर क्लिक करें और बनाएं पर क्लिक करें.

38f7d77d5ed0cb2a.png

टूल का नाम डालें: पेटेंट सर्च टूल

टाइप: 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.

वाईएएमएल फ़ॉर्मैट में OpenAPI स्कीमा डालें:

इस हिस्से में, हम एजेंट को बेहतर बनाने के लिए बैकएंड एंडपॉइंट का इस्तेमाल कर रहे हैं. नीचे दिए गए OpenAPI स्पेसिफ़िकेशन को कॉपी करें. इसके बाद, यूआरएल प्लेसहोल्डर को बदलें (ऐंगल ब्रैकेट में दिया गया) और उसकी जगह अपना Cloud Functions एंडपॉइंट डालें:

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.

अन्य कॉन्फ़िगरेशन को उनकी डिफ़ॉल्ट वैल्यू पर छोड़ दें और "सेव करें" पर क्लिक करें.

  1. इस पॉइंट पर एजेंट पर वापस जाएं, क्योंकि हमें एजेंट के "निर्देश" में "टूल" कॉन्फ़िगरेशन जोड़ना है. नीचे दिए गए निर्देशों को निर्देशों के प्लेसहोल्डर में जोड़ें. ध्यान रखें कि इंडेंट, फ़्लो तय करने के लिए ज़रूरी होते हैं:
- 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. एजेंट को टेस्ट करना

दाईं ओर के पैनल में, आपको 'एजेंट की झलक देखें' सेक्शन दिखेगा. इसकी मदद से, अपने एजेंट को टेस्ट किया जा सकता है.

नीचे दिए गए स्क्रीनशॉट में देखा जा सकता है कि मैंने उपयोगकर्ता के तौर पर चैट शुरू की है. साथ ही, "किसी भी फ़िटनेस ट्रैकर के आइडिया से मिलता-जुलता पेटेंट" के बारे में पूछा है:

e4ffaa48b5c1f012.png

यह JSON रिस्पॉन्स है:

b0ee0af57ba63943.png

यह Cloud फ़ंक्शन से मिला रॉ JSON नतीजा है. यह फ़ंक्शन, AlloyDB Similarity Search को प्रोसेस करता है. हो गया! अब हम एजेंट से कनेक्ट हो गए हैं.

6. परिनियोजन और इंटिग्रेशन

जब आपको लगे कि आपका एजेंट तैयार है, तो Agent Builder के इंटिग्रेशन का इस्तेमाल करके, उसे अलग-अलग चैनलों पर आसानी से डिप्लॉय किया जा सकता है. इसे अपनी वेबसाइट पर एम्बेड किया जा सकता है. साथ ही, मैसेजिंग की सुविधा देने वाले लोकप्रिय प्लैटफ़ॉर्म के साथ इंटिग्रेट किया जा सकता है. इसके अलावा, इसके लिए एक मोबाइल ऐप्लिकेशन भी बनाया जा सकता है. हम Agent Builder API को सीधे तौर पर अपने वेब क्लाइंट ऐप्लिकेशन में भी इस्तेमाल कर सकते हैं. इसके बारे में हमने इस ब्लॉग में बताया है.

7. व्यवस्थित करें

इस पोस्ट में इस्तेमाल की गई संसाधनों के लिए, अपने Google Cloud खाते से शुल्क न लिए जाने के लिए, यह तरीका अपनाएं:

  1. Google Cloud Console में, मैनेज करें
  2. संसाधन पेज पर जाएं.
  3. प्रोजेक्ट की सूची में, वह प्रोजेक्ट चुनें जिसे आपको मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.
  4. डायलॉग बॉक्स में, प्रोजेक्ट आईडी टाइप करें. इसके बाद, प्रोजेक्ट मिटाने के लिए बंद करें पर क्लिक करें.

8. बधाई हो

बधाई हो! हमने अपने कस्टम-बिल्ट Analytics इंजन को Agent Builder के आसान इंटरफ़ेस के साथ इंटिग्रेट किया है. इससे हमने एक ऐसी इंटेलिजेंट लिटरेचर सर्च असिस्टेंट बनाई है जो लिटरेचर सर्च को सुलभ, असरदार, और वाकई मतलब वाली बनाती है. AlloyDB, Vertex AI, और Vector Search की क्षमताओं को मिलाकर, हमने कॉन्टेक्स्ट और वेक्टर सर्च को ऐक्सेस करने में एक बड़ा बदलाव किया है. अब ये सुविधाएं ज़्यादा असरदार, बेहतर, और एजेंटिक एआई की मदद से काम करती हैं!