Nâng cấp tính năng tìm kiếm trên trang web: Đưa ra câu trả lời theo ngữ cảnh bằng AI tạo sinh

AI tạo sinh đề cập đến việc sử dụng trí tuệ nhân tạo để tạo ra nội dung mới như văn bản, hình ảnh, âm nhạc, âm thanh, và video. AI tạo sinh dựa vào mô hình học máy (ML) để tìm hiểu mẫu và mối quan hệ trong một tập dữ liệu nội dung do con người tạo ra.

Công nghệ này đã cho thấy những khả năng đáng kinh ngạc, thông qua các ứng dụng như Gemini. Có thể bạn thắc mắc làm cách nào để triển khai các công cụ AI tạo sinh vào các sản phẩm trên web?

Một trường hợp sử dụng phổ biến là cung cấp cho người dùng một giao diện dễ sử dụng hơn để đặt câu hỏi về nội dung của trang web. Bạn có thể cải thiện đáng kể kết quả tìm kiếm của người dùng, với sự trợ giúp của công nghệ học máy.

Bạn có thể tạo một giao diện để người dùng viết câu hỏi, sau đó được gửi đến một mô hình ngôn ngữ lớn (LLM), chẳng hạn như Gemini, rồi hiện câu trả lời cho người dùng.

Giả sử trang web này có tính năng như vậy. Người dùng muốn biết API nào được đưa vào Interop 2024 rồi nhập cụm từ tìm kiếm sau đây:

What are the features included in Interop 24?

Rất tiếc, kết quả có thể sẽ không chính xác vì một vài lý do sau:

  • Người dùng đã cung cấp ít ngữ cảnh cho LLM cho câu hỏi, do đó, LLM dễ trả về câu trả lời sai hoặc ảo tưởng hơn.
  • LLM có thể được huấn luyện trước khi Interop 2024 được tạo ra hoặc các tính năng của mô hình này đã quyết định nên không biết về thông tin đó.

Mặc dù các LLM tìm được thông tin mới hơn, nhưng việc huấn luyện cho các LLM tập dữ liệu vốn đã lỗi thời. Việc duy trì kết quả mới có thể cực kỳ tốn thời gian và chi phí.

Dùng kỹ thuật câu lệnh

Kỹ thuật câu lệnh là một tập hợp các kỹ thuật giúp tạo ra kết quả tốt nhất từ một LLM.

Một kỹ thuật là cung cấp thêm ngữ cảnh trong câu lệnh, giúp LLM (mô hình ngôn ngữ lớn) có nhiều khả năng sẽ đưa ra nội dung liên quan đến bối cảnh.

Tiếp tục với ví dụ về khả năng tương tác, bước đầu tiên của chúng tôi là cung cấp nội dung bài viết làm ngữ cảnh. Sau đó, hãy thêm câu hỏi làm đầu vào cho LLM (mô hình ngôn ngữ lớn) để trả lời. Ví dụ:

Context:
Following on from the success of Interop 2022 and Interop 2023, we
are excited about the opportunity to collaborate once again with
all key browser vendors and other relevant stakeholders...
(trimmed to fit in this article)

Input:
What are the features included in Interop 2024?

Bạn có thể mong đợi Gemini đưa ra nội dung như sau:

The features included in Interop 24 are Accessibility, CSS Nesting, Custom
Properties, Declarative Shadow DOM, font-size-adjust, HTTPS URLs for
WebSocket, IndexedDB, Layout, Pointer and Mouse Events, Popover, Relative
Color Syntax, requestVideoFrameCallback, Scrollbar Styling, @starting-style
and, transition-behavior, Text Directionality, text-wrap: balance,URL

Câu trả lời này có thể tốt hơn nhiều so với câu lệnh không có ngữ cảnh, vì câu trả lời dựa trên ngữ cảnh được cung cấp.

Mở rộng quy mô cùng RAG

Ví dụ: thay vì trả lời một câu hỏi về một bài viết, chúng tôi muốn LLM trả lời thêm câu hỏi về web.dev, bằng cách sử dụng bất kỳ bài viết nào làm ngữ cảnh bổ sung. Mặc dù điều này có thể khả thi với các trang web nhỏ hơn, với điều kiện là Cửa sổ ngữ cảnh 1 triệu mã thông báo của Gemini 1.5, các câu lệnh lớn hơn sẽ chậm hơntốn nhiều chi phí hơn.

Độ dài đầu vào và đầu ra của các LLM được đo lường và tính phí bằng mã thông báo, để thể hiện một chuỗi ký tự chung trong một nội dung nhập văn bản. Chiến lược phát hành đĩa đơn thường sẽ lớn hơn số từ. Là một Ví dụ: đầu vào trong ví dụ đầu tiên có 775 từ, được biểu thị bằng 1097 mã thông báo. Các LLM khác nhau có thể tính mã thông báo theo cách khác nhau và hầu hết đều cung cấp mã thông báo một API hoặc một điểm cuối để tính số lượng mã thông báo cho việc nhập văn bản.

Một giải pháp là cung cấp các bài viết liên quan đến câu lệnh LLM. Việc cần làm này sẽ cho hai phần:

  1. Thêm nội dung của những bài viết hàng đầu làm ngữ cảnh khi nhắc LLM (mô hình ngôn ngữ lớn).
  2. Tìm kiếm nội dung cho các bài viết liên quan đến "Những tính năng được bao gồm trong những tính năng nào Khả năng tương tác năm 2024?".

Chúng tôi muốn kết quả của Gemini trả về nội dung dựa trên các bài viết sau:

Dữ liệu đầu vào sẽ có dạng như sau:

Context:
Article 1:
Over the past two years... (trimmed)

Article 2:
At the end of last year Interop 2023 wrapped up. This effort... (trimmed)

Article 3:
Following on from the success of Interop 2022... (trimmed)

Input:
What are the features included in Interop 2024?

Ngữ cảnh này cho ra kết quả dự kiến.

* Accessibility * CSS Nesting * Custom Properties
* Declarative Shadow DOM * font-size-adjust
* HTTPS URLs for WebSocket * IndexedDB * Layout
* Pointer and Mouse Events * Popover * Relative Color Syntax
* requestVideoFrameCallback * Scrollbar Styling
* @starting-style and transition-behavior * Text Directionality
* text-wrap: balance * URL

Đối với những người đã quen thuộc với các kỹ thuật AI, phương pháp này sử dụng RAG, một phương pháp phổ biến để tăng khả năng nhận được câu trả lời thực tế từ các công cụ AI tạo sinh.

Mặc dù kỹ thuật RAG có thể hoạt động hiệu quả với phương thức tìm kiếm toàn bộ văn bản thông thường, nhưng những hạn chế của phương pháp này.

  • Tính năng tìm kiếm toàn bộ văn bản giúp AI tìm thấy các từ khoá khớp chính xác. Tuy nhiên, các LLM không thể để xác định ý nghĩa dự định đằng sau truy vấn của người dùng. Điều này có thể dẫn đến dữ liệu đầu ra không đầy đủ hoặc không chính xác.
  • Có thể xảy ra vấn đề khi các từ có nhiều nghĩa hoặc cụm từ tìm kiếm sử dụng từ đồng nghĩa. Ví dụ: "ngân hàng" (tổ chức tài chính so với bờ sông) có thể dẫn đến vào các kết quả không liên quan.
  • Tìm kiếm toàn bộ văn bản có thể cho ra kết quả tình cờ có chứa từ khoá nhưng không phù hợp với mục tiêu của người dùng.

Tìm kiếm theo ngữ nghĩa là một kỹ thuật để cải thiện độ chính xác của tìm kiếm bằng cách tập trung vào các khía cạnh chính sau:

  • Ý định của người tìm kiếm: Cố gắng tìm hiểu lý do tại sao người dùng tìm kiếm điều gì đó. Họ đang cố gắng tìm kiếm hoặc đạt được điều gì?
  • Ý nghĩa theo ngữ cảnh: Giải thích từ và cụm từ theo mối quan hệ với văn bản xung quanh, cũng như các yếu tố khác như vị trí hoặc cụm từ tìm kiếm của người dùng nhật ký.
  • Mối quan hệ giữa các khái niệm: Tìm kiếm theo ngữ nghĩa sử dụng sơ đồ tri thức (phần lớn mạng của các đối tượng có liên quan) và xử lý ngôn ngữ tự nhiên để hiểu cách từ ngữ và ý tưởng được kết nối với nhau.

Do đó, khi bạn xây dựng công cụ có tìm kiếm theo ngữ nghĩa, đầu ra tìm kiếm sẽ dựa vào dựa trên mục đích chung của cụm từ tìm kiếm thay vì từ khoá. Tức là một công cụ có thể xác định các tài liệu có liên quan, ngay cả khi không có từ khoá chính xác. Chiến dịch này có thể cũng tránh các kết quả có hiện diện từ đó nhưng có nghĩa khác.

Hiện tại, bạn có thể triển khai hai công cụ tìm kiếm triển khai tính năng tìm kiếm theo ngữ nghĩa: Vertex AI SearchAlgolia AI Search.

Vẽ câu trả lời từ nội dung đã xuất bản

Bạn đã tìm hiểu cách sử dụng kỹ thuật câu lệnh để bật LLM cung cấp câu trả lời liên quan đến nội dung mà hệ thống chưa bao giờ xem được bằng cách thêm ngữ cảnh vào câu lệnh. Và bạn đã đã học cách mở rộng phương pháp tiếp cận này từ từng bài viết riêng lẻ sang toàn bộ tập hợp báo cáo bằng cách sử dụng Thế hệ tăng cường truy xuất (RAG) kỹ thuật. Bạn đã hiểu được cách tính năng tìm kiếm theo ngữ nghĩa có thể giúp cải thiện hơn nữa kết quả cho người dùng giúp bạn triển khai RAG hiệu quả hơn vào sản phẩm.

Đây là một vấn đề đã biết mà các công cụ AI tạo sinh có thể "ảo giác" điều này khiến chúng ở mức tốt nhất, đôi khi không đáng tin cậy hoặc tệ nhất là chủ động gây hại cho doanh nghiệp của bạn. Với những kỹ thuật này, cả người dùng và nhà phát triển đều có thể cải thiện độ tin cậy và có thể là xây dựng lòng tin vào kết quả từ các ứng dụng này.