跳至主要内容

Retrieve Knowledge Processor

Retrieve Knowledge Processor 用於從知識庫中檢索相關資料。

基本用法

Retrieve Knowledge Processor 用於透過自然語言查詢檢索知識庫中的相關內容。當工作流程執行到此節點時,會使用設定的查詢文字在指定的知識庫中進行語意搜尋,根據相似度閾值篩選結果,並將符合條件的資料以陣列形式儲存到指定變數中。適用於智能問答、文件檢索、內容推薦、客服支援等需要基於知識庫提供精準資訊的場景。

配置參數

Name

  • 顯示在畫布上的名稱,用於在工作流程中識別此 processor

Description

  • 用於補充此 processor 的用途,提升工作流程的可讀性與可維護性

Properties

Knowledge Bases(必填)

  • 說明:選擇要檢索的知識庫
  • 設定方式:從下拉選單選擇已建立的知識庫
  • 支援格式:可選擇多個知識庫進行跨庫檢索

Text Query(必填)

  • 說明:用於檢索的文字查詢內容
  • 設定類型
    • Literal:直接輸入固定查詢文字
    • Expression:使用 JavaScript 表達式動態產生查詢
    • Template:使用範本語法組合查詢內容
    • Template (Advance):進階範本模式

Similarity Threshold(必填)

  • 說明:相似度閾值,用於篩選檢索結果
  • 範圍:0~1 之間的數值
  • 規則:1 表示最相似,數值越小相似度要求越低
  • 建議值:一般設定在 0.1~0.7 之間

Max Results(必填)

  • 說明:最多回傳的結果數量
  • 用途:控制檢索結果的數量,避免回傳過多資料
  • 建議值:根據應用需求設定,一般為 5~20 筆

Result Field(必填)

  • 說明:檢索結果要儲存的變數名稱
  • 類型:檢索結果會以陣列形式儲存到此變數中
  • 預設值result

Filter Tags(選填)

  • 說明:用於篩選結果的標籤
  • 格式:以逗號分隔的標籤清單
  • 用途:可根據知識庫中的標籤進行額外篩選

Sample K(選填)

  • 說明:從索引資料及其增強資料中取樣的數量
  • 預設值:20
  • 用途:控制檢索過程中的取樣範圍

Path Exists(進階功能)

  • 說明:檢查指定 JSON 路徑的欄位是否存在
  • 格式:有效的 JSON Path 語法
  • 用途:用於過濾具有特定欄位結構的資料

Path Predicate(進階功能)

  • 說明:使用 JSON Path 述詞進行條件篩選
  • 格式:有效的 JSON Path 述詞(例如:$.category == "HR"
  • 邏輯:多個述詞之間使用 AND 邏輯連接
  • 用途:根據資料內容進行精確篩選

連接關係

Success

當成功檢索到結果時,工作流程會從此連接點繼續執行。Result Field 設定的變數名稱會成為新的可用變數。

Failure

當檢索過程發生錯誤時,工作流程會從此連接點繼續執行,並產生 prevError 變數儲存錯誤資訊。

使用範例

基本知識檢索

Retrieve Knowledge 設定:

  • Knowledge Bases:選擇 飯店KB
  • Text Query:選擇 Expression
searchQuery
  • Similarity Threshold0.4
  • Max Results5
  • Result Fieldfaqs

動態查詢檢索

Text Query 設定:

  • 設定類型:選擇 Expression
(() => {
return prevMessage;
})()

歷史對話檢索

Text Query 設定:

  • 設定類型:選擇 Template (Advance)
{{{ history historyStart -1 }}}

結果判斷處理

Router 條件:

(() => {
return faqs.nodes.length > 0;
})()

標籤篩選檢索

Filter Tags 設定:

FAQ,客服,會員

注意事項

  1. 知識庫準備:確保知識庫已正確建立並匯入相關文件資料

  2. 查詢品質:清晰具體的查詢文字有助於獲得更準確的檢索結果

  3. 相似度調整:根據知識庫內容和查詢需求調整 Similarity Threshold

  4. 結果數量:合理設定 Max Results,避免回傳過多不相關的結果

  5. 效能考量:大型知識庫檢索可能需要較長時間,適當設定參數以平衡準確性和效能

  6. 錯誤處理:建議連接 Failure 分支,處理知識庫連線或檢索錯誤