1. نظرة عامة
أبحاث براءات الاختراع واسعة ومعقدة. تعتبر مهمة البحث في الملخصات الفنية التي لا حصر لها للعثور على الابتكارات ذات الصلة مهمة شاقة. غالبًا ما تكون عمليات البحث التقليدية المعتمدة على الكلمات الرئيسية غير دقيقة وتستغرق وقتًا طويلاً. الملخصات طويلة وتقنية، مما يجعل من الصعب استيعاب الفكرة الأساسية بسرعة. وهذا قد يؤدي إلى فقدان الباحثين لبراءات اختراع رئيسية أو إهدار الوقت في نتائج غير ذات صلة.
تكمن الطريقة السرية وراء هذه الثورة في بحث Vector. بدلاً من الاعتماد على مطابقة الكلمات الرئيسية البسيطة، يحول بحث المتجه النص إلى تمثيلات رقمية (تضمينات). ويسمح لنا ذلك بالبحث بناءً على معنى طلب البحث، وليس فقط الكلمات المحدَّدة المستخدَمة. في عالم البحث عن الأدب، يُعد هذا نقطة تحوّل. تخيل العثور على براءة اختراع عن "جهاز مراقبة معدل ضربات القلب القابل للارتداء" حتى لو لم يتم استخدام العبارة نفسها في المستند.
التحدي: من المتوقّع أن تقدّم عمليات البحث عن المؤلفات الحديثة إجابات فورية واقتراحات ذكية تتوافق مع الخيارات المفضَّلة لديهم. وغالبًا ما لا توفر طرق البحث التقليدية هذا المستوى من التخصيص.
الحل: يعالج تطبيق المحادثات المستند إلى المعرفة هذا التحدي مباشرةً. ويستفيد هذا البرنامج من قاعدة المعرفة الغنية المستمدة من مجموعة بيانات براءات الاختراع لفهم نيّة العملاء والاستجابة بذكاء وتقديم نتائج ذات صلة للغاية.
ما الذي ستقوم ببنائه
كجزء من هذا التمرين المعملي (الجزء 2)، سوف:
- إنشاء وكيل في Vertex AI Agent Builder
- دمج أداة AlloyDB مع الوكيل
المتطلبات
2. البنية
تدفق البيانات: لنلقِ نظرة فاحصة على كيفية انتقال البيانات عبر نظامنا:
نقل البيانات:
يتم تحميل بيانات براءات الاختراع في AlloyDB.
محرك الإحصاءات:
سنستخدم AlloyDB كمحرّك الإحصاءات لإجراء ما يلي:
- استخراج السياق: يحلِّل المحرّك البيانات المخزَّنة في AlloyDB لفهم مجموعة بيانات براءات الاختراع.
- تضمين العناصر: يتم إنشاء عمليات التضمين (تمثيلات رياضية للنص) لكل من طلب بحث المستخدم والمعلومات المخزّنة في AlloyDB.
- البحث المتجه: يجري المحرك عملية بحث عن التشابه، حيث يقارن طلب البحث المضمّن بالتضمينات في ملخصات براءات الاختراع. ويحدد هذا "الجار الأقرب" الأكثر صلة على السياق الذي يبحث عنه المستخدم.
إنشاء الردود:
يتم تنظيم الاستجابات التي تم التحقّق من صحتها في مصفوفة JSON، ويتم تجميع المحرّك بأكمله في دالة تشغيل سحابية بدون خادم يتم استدعاءها من أداة إنشاء الوكيل.
سبق أن تم تناول الخطوات المذكورة أعلاه في الجزء الأول من التمرين.
ناقشنا التفاصيل الفنية لإنشاء محرك تحليلات يستند إلى المعرفة والذي يشغّل مساعد البحث الذكي لبراءات الاختراع. لنتعرّف الآن على كيفية الاستفادة من إبداع أداة Agent Builder لإضفاء الحيوية على هذا المحرّك من خلال واجهة محادثة. تأكد من تجهيز عنوان URL لنقطة النهاية قبل بدء الجزء 2. في ما يلي الخطوة التي نتناولها في هذا التمرين المعملي:
التفاعل الحواري:
تقدِّم أداة Agent Builder الردود على المستخدمين بتنسيق لغة طبيعية، ما يسهِّل المحادثة المتبادلة.
3- قبل البدء
إنشاء مشروع
- في Google Cloud Console، ضمن صفحة أداة اختيار المشاريع، اختَر مشروعًا على Google Cloud أو أنشئه.
- تأكَّد من تفعيل الفوترة لمشروعك على السحابة الإلكترونية. تعرَّف على كيفية التحقّق مما إذا كانت الفوترة مفعَّلة في مشروع .
- ستستخدم Cloud Shell، وهي بيئة سطر أوامر تعمل في Google Cloud ويتم تحميلها مسبقًا مع bq. انقر على "تفعيل Cloud Shell" في أعلى وحدة التحكّم في Google Cloud.
- بعد الربط بخدمة Cloud Shell، يمكنك التحقّق من أنّه تمت مصادقتك من قبل وأنّ المشروع مضبوط على رقم تعريف المشروع باستخدام الأمر التالي:
gcloud auth list
- شغّل الأمر التالي في Cloud Shell للتأكد من معرفة الأمر gcloud بمشروعك.
gcloud config list project
- إذا لم يتم ضبط مشروعك، استخدِم الأمر التالي لضبطه:
gcloud config set project <YOUR_PROJECT_ID>
- تفعيل واجهات برمجة التطبيقات المطلوبة يتوفّر بديل للأمر gcloud من خلال وحدة التحكّم من خلال البحث عن كل منتج أو استخدام هذا الرابط.
وفي حال عدم تضمين أيّ واجهة برمجة تطبيقات، يمكنك تفعيلها دائمًا خلال عملية التنفيذ.
يمكنك الرجوع إلى المستندات حول أوامر gcloud واستخدامها.
ملاحظة مهمة: تأكد أيضًا من إكمال الجزء 1 من التمرين المعملي لإكمال هذا.
4. إنشاء وكيل
لمحة عن أداة إنشاء الوكلاء
Agent Builder هي أداة فعالة وبسيطة تتيح لنا إنشاء وكلاء المحادثة بسرعة وكفاءة. تبسّط هذه المنصة عملية تصميم مسارات الحوار ودمج قواعد المعرفة والاتصال بواجهات برمجة التطبيقات الخارجية. في حالتنا، سنستخدم أداة Agent Builder للاتصال بسلاسة بنقطة نهاية Cloud Function التي صممناها في الجزء 1، ما يتيح لمساعد البحث عن براءات الاختراع الوصول إلى قاعدة معلومات براءات الاختراع التابعة لنا والاستجابة لطلبات المستخدمين بذكاء.
تأكَّد من أنّJava Cloud Run Function الذي تم إنشاؤه في الجزء الأول يعرض ملف JSON ARRAY بدلاً من نص عادي.
إنشاء الوكيل
لنبدأ بإنشاء هذا الوكيل الجديد للإجابة عن أسئلة المستخدمين بشأن منتجات الملابس.
- ابدأ بتسجيل الدخول إلى منصّة أداة إنشاء الوكلاء. إذا طُلب منك تفعيل واجهة برمجة التطبيقات، انقر على متابعة وتفعيل واجهة برمجة التطبيقات.
- انقر على "CREATE APP" (إنشاء تطبيق) واعطاء وكيلك اسمًا وصفيًا (على سبيل المثال، "مساعد البحث عن براءات الاختراع").
- انقر على "نوع التطبيق" "وكيل".
- . أدخِل اسمًا وصفيًا لوكيلك، مثل "مساعد بحث براءات الاختراع" وضبط المنطقة على 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.
- احفظه في هذه المرحلة واترك التعليمات فارغة في الوقت الحالي.
- ثم انقر فوق "أدوات" من قائمة التنقل وانقر فوق "CREATE" (إنشاء).
إدخال اسم الأداة: أداة البحث عن براءات الاختراع
النوع: 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 بتنسيق YAML:
وهذا هو الجزء الذي نستخدم فيه نقطة نهاية الخلفية لتشغيل الوكيل. انسخ مواصفات OpenAPI التالية واستبدل العنصر النائب لعنوان URL (المحاط بين قوسين معقوفين) بنقطة نهاية 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:
هذه هي نتيجة JSON الأولية من دالة السحابة الإلكترونية التي تعالج بحث التشابه في AlloyDB. هذا كل شيء! تم اتخاذ كل الخطوات اللازمة مع الوكيل.
6- النشر والدمج
بعد أن تصبح راضيًا عن الوكيل، يمكنك نشره بسهولة على قنوات مختلفة باستخدام عمليات الدمج التي توفّرها أداة إنشاء الوكلاء. ويمكنك تضمينه في موقعك الإلكتروني أو دمجه مع منصات المراسلة الرائجة أو حتى إنشاء تطبيق مخصّص للأجهزة الجوّالة. يمكننا أيضًا استخدام واجهة برمجة التطبيقات Agent Builder API مباشرةً في تطبيقات عميل الويب، والتي تناولناها في هذه المدوّنة.
7. تَنظيم
لتجنُّب تحصيل رسوم من حسابك على Google Cloud مقابل الموارد المُستخدَمة في هذه المشاركة، يُرجى اتّباع الخطوات التالية:
8. تهانينا
تهانينا! ومن خلال دمج قوة محرك التحليلات المخصص مع الواجهة البسيطة لـ Agent Builder، تم إنشاء مساعد ذكي للبحث في المؤلفات الإخبارية. من خلال الجمع بين إمكانات AlloyDB وVertex AI وVector Search، حققنا قفزة عملاقة في جعل عمليات البحث السياقية والمتّجه سهلة الوصول وفعّالة ومستندة إلى المعنى الفعلي وفعالة.