Skip to main content

Generate Embedding

Generate Embedding 是用於將文字內容轉換為向量表示的 processor。

基本用法

執行 Generate Embedding 時,會使用指定的 Embedding Model 將輸入文字轉換為數值向量,這些向量可用於語意搜尋、相似度計算、文件分類等需要向量化處理的場景。生成的向量會以浮點數陣列形式儲存到指定變數中供後續 processor 使用。

配置參數

Name

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

Description

用於補充此 processor 的用途,提升工作流程的可讀性。

Properties

Embedding Model(必填)

選擇要使用的 Embedding Model 資源名稱。需要先建立 Embedding Model 資源,支援各種預訓練的 Embedding 模型,如 OpenAI text-embedding 系列等。

Input(必填)

要轉換為向量的輸入內容。支援 Literal、Expression、Template、Template (Advance) 等設定類型,詳細說明請參考:Expression 介紹 - 取值方式

Result Field(必填)

向量化結果要儲存的變數名稱,查詢結果(浮點數陣列)會儲存到此變數名稱對應的 context payload 欄位中。

連接關係

Success

當成功生成文字向量時,工作流程會從此連接點繼續執行。向量化結果會以浮點數陣列形式儲存到 Result Field 指定的變數名稱中,該變數可供後續 processor 使用。

Failure

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

使用範例

文字向量化


將使用者輸入的文字轉換為向量表示。Input 使用 Expression prevMessage 取得使用者的文字內容,然後使用 Embedding Model 進行向量化處理。

知識庫預處理


為知識庫文件生成向量表示,用於後續的語意搜尋。從外部 API 取得文件內容後,使用 Generate Embedding 轉換為向量,再透過 SQL processor 將向量儲存到向量資料庫中。

相似度計算準備


為相似度計算準備向量表示。Update Context 設定要比較的文字內容,Generate Embedding 將文字轉換為向量,然後使用 Execute Script 計算與其他向量的相似度。

動態內容向量化


對 AI 生成的內容進行向量化處理。LLM Completion 產生文字內容後,Generate Embedding 將內容轉換為向量表示,然後透過 Router 檢查向量品質或進行後續處理。

注意事項

  1. 確保選擇的 Embedding Model 支援輸入文字的語言類型。

  2. 不同的 Embedding Model 會產生不同維度的向量,確保後續處理邏輯相容。

  3. 長文字可能需要分段處理,注意模型的輸入長度限制。

  4. 建議連接 Failure 分支,處理模型呼叫或向量化失敗的情況。

  5. 生成的向量通常用於相似度計算,需要與相同模型生成的向量進行比較才有意義。

  6. Embedding Model 呼叫會產生費用,合理控制使用頻率。