1. Tổng quan
Việc nghiên cứu về bằng sáng chế rất rộng lớn và phức tạp. Sàng lọc qua vô số thông tin tóm tắt về kỹ thuật để tìm ra các sáng kiến phù hợp là một công việc khó khăn. Các tìm kiếm truyền thống dựa trên từ khoá thường không chính xác và tốn thời gian. Tóm tắt dài dòng và mang tính kỹ thuật, khiến người đọc khó nắm bắt nhanh ý tưởng cốt lõi. Điều này có thể khiến các nhà nghiên cứu bỏ lỡ các bằng sáng chế quan trọng hoặc lãng phí thời gian cho các kết quả không liên quan.
Bí quyết đằng sau cuộc cách mạng này nằm trong Vector Search. Thay vì dựa vào việc so khớp từ khoá đơn giản, tìm kiếm vectơ biến văn bản thành các biểu diễn bằng số (các thành phần nhúng). Điều này cho phép chúng tôi tìm kiếm dựa trên ý nghĩa của cụm từ tìm kiếm, chứ không chỉ dựa trên các từ cụ thể được sử dụng. Trong lĩnh vực tìm kiếm tài liệu, đây là một bước ngoặt. Hãy tưởng tượng bạn tìm thấy một bằng sáng chế cho "thiết bị đo nhịp tim đeo" ngay cả khi cụm từ chính xác không được sử dụng trong tài liệu.
Thách thức: Các nội dung tìm kiếm về văn học hiện đại cần cung cấp câu trả lời tức thì và nội dung đề xuất thông minh phù hợp với lựa chọn ưu tiên riêng của người dùng. Các phương pháp tìm kiếm truyền thống thường không cung cấp được mức độ cá nhân hóa này.
Giải pháp: Ứng dụng trò chuyện dựa trên kiến thức của chúng tôi giải quyết trực tiếp thách thức này. Công cụ này tận dụng một cơ sở tri thức phong phú bắt nguồn từ tập dữ liệu bằng sáng chế của bạn để hiểu ý định của khách hàng, phản hồi một cách thông minh và cung cấp kết quả cực kỳ phù hợp.
Sản phẩm bạn sẽ tạo ra
Trong phần này của lớp học lập trình (Phần 2), bạn sẽ:
- Tạo tác nhân Trình tạo tác nhân Vertex AI
- Tích hợp công cụ AlloyDB với tác nhân
Yêu cầu
2. Kiến trúc
Luồng dữ liệu: Hãy xem xét kỹ hơn cách dữ liệu di chuyển qua hệ thống của chúng tôi:
Quy trình truyền dẫn:
Dữ liệu về bằng sáng chế được tải vào AlloyDB.
Công cụ phân tích:
Chúng tôi sẽ sử dụng AlloyDB làm công cụ phân tích để thực hiện những việc dưới đây:
- Trích xuất ngữ cảnh: Công cụ này phân tích dữ liệu được lưu trữ trong AlloyDB để hiểu tập dữ liệu về bằng sáng chế.
- Tạo lượt nhúng: Các lượt nhúng (biểu diễn toán học của văn bản) được tạo cho cả truy vấn của người dùng và thông tin được lưu trữ trong AlloyDB.
- Tìm kiếm vectơ: Công cụ thực hiện một lượt tìm kiếm tương tự, so sánh truy vấn được nhúng với các mục nhúng của bản tóm tắt bằng sáng chế. Điều này giúp xác định "người hàng xóm gần nhất" phù hợp nhất với ngữ cảnh mà người dùng đang tìm kiếm.
Tạo phản hồi:
Các phản hồi đã xác thực được cấu trúc thành một mảng JSON và toàn bộ công cụ được đóng gói thành một Hàm Cloud Run không máy chủ được gọi qua Agent Builder.
Các bước trên đã được đề cập trong phần 1 của phòng thí nghiệm.
Chúng ta đã thảo luận về các chi tiết kỹ thuật của việc tạo ra một công cụ phân tích dựa trên kiến thức nhằm hỗ trợ cho trợ lý tìm kiếm bằng sáng chế thông minh của chúng tôi. Bây giờ, hãy khám phá cách chúng tôi tận dụng sự kỳ diệu của Agent Builder để triển khai công cụ này trong giao diện trò chuyện. Đảm bảo bạn chuẩn bị sẵn URL điểm cuối trước khi bắt đầu phần 2. Bước tiếp theo dưới đây là nội dung chúng ta sẽ đề cập trong phòng thí nghiệm này:
Tương tác trò chuyện:
Trình tạo tác nhân trình bày các câu trả lời cho người dùng ở định dạng ngôn ngữ tự nhiên, tạo điều kiện cho cuộc trò chuyện qua lại.
3. Trước khi bắt đầu
Tạo một dự án
- Trong Google Cloud Console, trên trang bộ chọn dự án, hãy chọn hoặc tạo một dự án trên Google Cloud.
- Đảm bảo rằng bạn đã bật tính năng thanh toán cho dự án trên Google Cloud. Tìm hiểu cách kiểm tra xem tính năng thanh toán có được bật trên một dự án hay không .
- Bạn sẽ sử dụng Cloud Shell, một môi trường dòng lệnh chạy trong Google Cloud và được tải sẵn bq. Nhấp vào Kích hoạt Cloud Shell ở đầu bảng điều khiển Google Cloud.
- Sau khi kết nối với Cloud Shell, bạn cần kiểm tra để chắc chắn rằng mình đã được xác thực và dự án được đặt thành mã dự án bằng lệnh sau đây:
gcloud auth list
- Chạy lệnh sau trong Cloud Shell để xác nhận rằng lệnh gcloud biết về dự án của bạn.
gcloud config list project
- Nếu dự án của bạn chưa được thiết lập, hãy sử dụng lệnh sau để thiết lập:
gcloud config set project <YOUR_PROJECT_ID>
- Bật các API bắt buộc. Bạn có thể sử dụng bảng điều khiển để tìm kiếm từng sản phẩm hoặc sử dụng đường liên kết này thay cho lệnh gcloud.
Nếu thiếu bất kỳ API nào, bạn luôn có thể bật API đó trong quá trình triển khai.
Tham khảo tài liệu về các lệnh và cách sử dụng gcloud.
Lưu ý quan trọng: Ngoài ra, hãy đảm bảo bạn đã hoàn thành PHẦN 1 của lớp học để hoàn thành phần này.
4. Tạo tác nhân
Giới thiệu về Agent Builder
Trình tạo tác nhân là một công cụ mạnh mẽ, ít mã giúp chúng ta tạo tác nhân trò chuyện một cách nhanh chóng và hiệu quả. Công cụ này giúp đơn giản hoá quy trình thiết kế luồng hộp thoại, tích hợp cơ sở kiến thức và kết nối với các API bên ngoài. Trong trường hợp này, chúng ta sẽ sử dụng Agent Builder để kết nối liền mạch với điểm cuối Hàm đám mây mà chúng ta đã xây dựng trong Phần 1, cho phép trợ lý tìm kiếm bằng sáng chế của chúng ta tiếp cận cơ sở kiến thức về bằng sáng chế và phản hồi truy vấn của người dùng một cách thông minh.
Đảm bảo bạn đã tạo Hàm Java Cloud Run trong Phần 1 trả về tệp ARRAY JSON thay vì văn bản thuần tuý.
Tạo tác nhân
Hãy bắt đầu bằng việc tạo nhân viên hỗ trợ mới này để trả lời các câu hỏi của người dùng về sản phẩm may mặc.
- Bắt đầu bằng cách đăng nhập vào nền tảng Trình tạo đại lý. Nếu bạn được nhắc kích hoạt API, hãy nhấp vào TIẾP TỤC VÀ KÍCH HOẠT API.
- Nhấp vào "TẠO ỨNG DỤNG" rồi đặt tên mô tả cho tác nhân (ví dụ: "Trợ lý tìm kiếm bằng sáng chế").
- Nhấp vào Loại ứng dụng "Agent" (Ứng dụng).
- . Đặt tên mô tả cho tác nhân như "Trợ lý tìm kiếm bằng sáng chế" và đặt khu vực là us-central1
- Nhập thông tin chi tiết cho nhân viên hỗ trợ:
- Thay đổi Tên người đại diện thành "Người đại diện tìm kiếm bằng sáng chế".
- Thêm "Mục tiêu" bên dưới:
You are a professional intelligent patent search agent! Your job is to help the customer find patents matching the context of their search text.
- Hãy lưu bản hướng dẫn tại thời điểm này và để trống phần hướng dẫn.
- Sau đó, hãy nhấp vào Công cụ trên trình đơn điều hướng rồi nhấp vào TẠO.
Nhập tên công cụ: Công cụ tìm kiếm bằng sáng chế
Loại: OpenAPI
Nhập nội dung mô tả công cụ:
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.
Nhập giản đồ — OpenAPI ở định dạng YAML:
Đây là phần chúng ta đang sử dụng điểm cuối phụ trợ để cung cấp năng lượng cho tác nhân. Sao chép thông số kỹ thuật OpenAPI bên dưới và thay thế phần giữ chỗ URL (trong dấu ngoặc góc) bằng điểm cuối của Hàm đám mây:
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.
Giữ nguyên các cấu hình khác về giá trị mặc định và nhấp vào "Lưu".
- Tại thời điểm này, hãy quay lại Nhân viên hỗ trợ vì chúng ta muốn thêm "Công cụ" cấu hình cho "Hướng dẫn" của nhân viên hỗ trợ. Thêm nội dung bên dưới vào phần giữ chỗ hướng dẫn (Hãy nhớ rằng khoảng thụt lề rất quan trọng trong việc xác định luồng):
- 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.
Đảm bảo công cụ "Công cụ tìm kiếm bằng sáng chế" được chọn trong "Công cụ có sẵn" rồi lưu lại nhân viên hỗ trợ.
5. Kiểm tra nhân viên hỗ trợ
Trên ngăn bên phải, bạn sẽ thấy phần Xem trước tác nhân cho phép bạn kiểm thử tác nhân.
Như bạn có thể thấy trong ảnh chụp màn hình bên dưới, tôi đã chào hỏi với tư cách là một người dùng và bắt đầu cuộc trò chuyện bằng một yêu cầu về "Bằng sáng chế trùng khớp cho mọi ý tưởng về thiết bị theo dõi thể dục":
Đây là phản hồi JSON:
Đây là kết quả JSON thô từ Hàm đám mây xử lý Tìm kiếm tương tự AlloyDB. Vậy là xong! Bây giờ, chúng ta đã hoàn tất với nhân viên hỗ trợ.
6. Triển khai và tích hợp
Khi đã hài lòng với nhân viên hỗ trợ của mình, bạn có thể dễ dàng triển khai nhân viên hỗ trợ đó cho nhiều kênh bằng cách sử dụng các công cụ tích hợp của Agent Builder. Bạn có thể nhúng đường liên kết của trang web vào trang web của mình, tích hợp với các nền tảng nhắn tin phổ biến hoặc thậm chí là tạo một ứng dụng di động chuyên dụng. Chúng ta cũng có thể trực tiếp sử dụng Agent Builder API trong các ứng dụng web. Chúng ta đã đề cập đến vấn đề này trong blog này.
7. Dọn dẹp
Để tránh bị tính phí cho tài khoản Google Cloud của bạn đối với các tài nguyên được sử dụng trong bài đăng này, hãy làm theo các bước sau:
- Trong bảng điều khiển Google Cloud, hãy chuyển đến phần Quản lý
- trang tài nguyên.
- Trong danh sách dự án, hãy chọn dự án mà bạn muốn xoá, sau đó nhấp vào Delete (Xoá).
- Trong hộp thoại, hãy nhập mã dự án, sau đó nhấp vào Shut down (Tắt) để xoá dự án.
8. Xin chúc mừng
Xin chúc mừng! Bằng cách tích hợp sức mạnh của công cụ phân tích được tạo tuỳ chỉnh với giao diện trực quan của Trình tạo tác nhân, chúng tôi đã tạo ra một trợ lý tìm kiếm tài liệu thông minh để giúp việc tìm kiếm tài liệu trở nên dễ dàng, hiệu quả và thực sự mang lại ý nghĩa. Bằng cách kết hợp các tính năng của AlloyDB, Vertex AI và Tìm kiếm vectơ, chúng tôi đã tiến một bước dài trong việc giúp các tính năng tìm kiếm theo ngữ cảnh và vectơ trở nên dễ tiếp cận, hiệu quả, thực sự mang lại ý nghĩa và có tính chất tác nhân!