AI 與 LLM檢索Performance 與 Scale 方案

RAG 知識助理

針對您自己的文件回答問題,分塊、中繼資料篩選、混合向量與關鍵字搜尋,以及快取的重新排序分數,全都在同一個引擎中。

種分塊策略
3
向量 + BM25 搜尋
混合
個額外的向量資料庫
0
步驟 1 / 5
定義管線

每個段落一個區塊。請使用您嵌入模型的維度(以 3 維讓範例保持簡短)。

範例工作階段playing
# 定義管線
hotkv> RAG.CREATE faq 3 STRATEGY paragraph
OK

以真實 HotKV 指令與範例回覆呈現的動畫導覽。點擊任一步驟即可跳到該步驟。 指令與回覆維持英文,與您在 HotKV 中輸入及看到的完全一致。

問題

檢索管線通常意味著向量資料庫、關鍵字索引、分塊作業、重新排序器,以及它們之間的黏合程式碼。每個元件都是另一項要運行、保護並與文件保持同步的服務,而重新排序器往往是最慢也最昂貴的一步。

HotKV 如何處理

HotKV 把這條管線放進原本就在服務您應用程式的引擎。定義管線、匯入文件、然後搜尋。分塊、文件中繼資料,以及結合向量相似度與 BM25 關鍵字評分的混合搜尋,全都在伺服器端執行,而重新排序快取會保留 cross-encoder 的分數,因此重複的查詢與段落配對絕不會被評分兩次。

逐步說明

逐個指令看看發生了什麼事

  1. 01

    定義管線

    每個段落一個區塊。請使用您嵌入模型的維度(以 3 維讓範例保持簡短)。

    RAG.CREATE faq 3 STRATEGY paragraph
  2. 02

    匯入文件

    每份文件都在伺服器端分塊,並連同其中繼資料與每個區塊一個向量一起儲存。

    RAG.INGEST faq doc:1 "To reset your password, click Forgot password on the login screen.\n\nBilling questions go to the billing team." META source help-center VECTORS 0.9,0.1,0.0 0.0,0.2,0.9
  3. 03

    混合搜尋

    在一次查詢中結合向量相似度與關鍵字相關性,並限制在單一來源。

    RAG.SEARCH faq "how do I reset my password" K 2 ALPHA 0.5 VECTOR 0.88,0.12,0.01 FILTER source help-center
  4. 04

    重新排序,但只做一次

    cross-encoder 的分數會依查詢與區塊快取在以 RERANK.CREATE 建立的命名空間中,因此熱門查詢不必再次付出重新排序的成本。

    RERANK.GET faq_scores "reset password|doc:1:0"
  5. 05

    回答,並檢查管線

    最佳的區塊會作為內容交給模型,因此回答出自說明中心,而不是憑空猜測。RAG.STATS 會顯示管線中保存的內容。

    RAG.STATS faq
適用之處

真實世界的情境

說明中心助理

文章與已解決的工單會連同產品與語言作為中繼資料一起匯入。每個回答都以正確產品的文件為依據。

法律與政策搜尋

合約與政策依段落切分,讓檢索到的段落是完整的條款,而關鍵字評分能抓到條款編號等精確詞彙。

工程知識

操作手冊、設計文件與事後檢討,都能讓值班助理依語意搜尋。

內建

您能獲得什麼

引擎內建的分塊

固定大小、句子或段落分塊。固定大小的區塊可由您指定大小與重疊量。

RAG.CREATE

混合搜尋

在一次查詢中結合向量相似度與 BM25 關鍵字評分,並以 ALPHA 設定兩者的比重。

RAG.SEARCH

中繼資料篩選

匯入時附加鍵值對,搜尋時以它們篩選。

RAG.INGESTFILTER

重新排序快取

保留查詢與段落配對的 cross-encoder 分數,讓重複的查詢不必再付費。

RERANK.GETRERANK.SET

常見問題

HotKV 會建立嵌入嗎?

不會。您使用自己偏好的模型產生嵌入,並在匯入時以 VECTORS、搜尋時以 VECTOR 傳入。

不使用向量也能搜尋嗎?

可以。RAG.SEARCH 接受查詢文字進行關鍵字評分,而 VECTOR 選項則加入向量相似度。ALPHA 設定兩種分數如何混合。

哪些方案包含它?

RAG 管線與重新排序快取屬於 Performance 與 Scale 方案。

相關使用情境

在您自己的工作負載上試試看

HotKV 支援 Redis 協定,因此您可以將現有的用戶端指向它,並執行這些相同的指令。