升級網站搜尋功能:運用生成式 AI 取得內容解答

生成式 AI 指的是 能產生新內容,例如文字、圖片、音樂、音訊 和影片生成式 AI 仰賴機器學習 (ML) 模型 建立模型

這項技術透過許多應用程式 (例如 Gemini。您可能會好奇 生成式 AI 工具導入我的網路產品?

其中一項常見的用途是為使用者提供更優質的提問介面。 網站內容這有助於大幅改善使用者的搜尋結果品質 機器學習的強大後盾

您可以建立一個介面,讓使用者撰寫問題。 大型語言模型 (LLM) Gemini, 然後向使用者顯示答案。

假設這個網站具備這類功能。使用者想知道有哪些 API ,卻輸入下列查詢:

What are the features included in Interop 24?

但很遺憾,輸出內容可能有誤,原因如下:

  • 使用者只給了 LLM 的問題提供背景資訊,因此 LLM 較容易傳回錯誤答案或幻覺
  • 在推出 2024 年協同整合工具或相關功能之前,大型語言模型可能已完成訓練 因此不知道這些資訊

雖然大型語言模型可以尋找更多資訊,但進行 LLM 訓練 因為資料庫本身就是過時的維持最新成果極為重要 既耗時又昂貴

使用提示工程

提示工程 就是能從大型語言模型中取得最佳輸出內容的一組技巧。

其中一種技巧是在提示中提供額外背景資訊,讓 LLM 更有可能輸出與背景資訊相關的內容。

延續「協同整合」範例,第一步是提供完整的 視為背景資訊。然後將問題新增為 大型語言模型回答例如:

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?

Gemini 可能會輸出如下的內容:

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

比起未提供上下文的提示,這個答案可能更佳。 模型會根據上下文來預測

透過 RAG 向上擴充

例如,我們希望回答關於單一文章的問題 大型語言模型 (LLM) 能回答更多 web.dev 相關問題, 其他背景資訊。雖然小網站也適用這種做法,但 Gemini 1.5 的脈絡窗口,共有 100 萬個符記 較大型的提示較較慢,且執行費用較高

LLM 輸入和輸出長度以符記計算和收費 表示在文字輸入中找到的常見字元序列。 符記的數量通常會比字詞數量還多。身為 舉例來說,第一個範例的輸入內容含有 775 個字詞,以 1097 年表示 符記不同 LLM 計算符記的方式可能不同, 用於計算文字輸入符記數量的 API 或端點。

其中一種解決方式,是提供與 LLM 提示相關的文章。 指定兩個部分

  1. 向 LLM 提示時,新增熱門文章的內容做為背景資訊。
  2. 搜尋與「Google Play 提供哪些功能 互通性 2024?」

我們希望 Gemini 根據下列文章傳回內容:

輸入內容應如下所示:

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?

這個結構定義會產生預期的輸出內容。

* 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

對於熟悉 AI 技術的人,這種方法使用 RAG, ,提高生成式 AI 工具獲得實際答案的可能性。

雖然 RAG 技術可搭配一般全文搜尋使用, 只是一些方法的不足之處

  • 全文搜尋功能可協助 AI 找出完全相符的關鍵字。不過,LLM 判斷使用者查詢背後的預期含義。這會導致 輸出的內容不完整或不正確
  • 如果字詞有多種含義或查詢用字,可能就會發生問題 同義詞。例如「bank」(金融機構與 Riverbank) 能 不相關的結果
  • 全文搜尋可能會輸出實際包含這些關鍵字、 不符合使用者目標

語意搜尋 是提高搜尋準確度的技巧,重點在於著重以下幾個層面:

  • 搜尋者的意圖:嘗試瞭解使用者進行搜尋的原因 看似有點困難他們想要尋找或達成什麼目標?
  • 內容含意:Google 會解讀字詞或詞組 其他相關因素,例如使用者的所在位置或搜尋 。
  • 概念之間的關係:語意搜尋會使用知識圖 (大 相關實體的網路) 和自然語言處理 以及字詞與概念之間的關聯

因此,當您建構具有語意搜尋的工具時,搜尋輸出結果會 針對查詢的整體用途而非關鍵字也就是說 即使關鍵字不存在,也要找出相關文件。這項服務可以 也可以避免字詞出現,但含意不同的結果。

目前,您可以實作兩種使用語意搜尋的搜尋工具: Vertex AI Search Algolia AI Search

從已發布的內容中擷取答案

您已瞭解如何運用提示工程,讓 LLM 提供答案 或在提示中加入背景資訊您 學到如何將單一文章的應用範圍擴大至整個語料庫 使用 檢索增強生成 (RAG) 這是標準文字處理技術您已瞭解語意搜尋如何進一步為使用者改善搜尋結果 也建議你將 RAG 導入產品中

生成式 AI 工具的已知問題所以 或者可能不可靠,或者最糟的是,對 的商機。有了這些技巧,使用者和開發人員就能 並可能贏得這些應用程式的輸出內容