用於推斷的RAG鏈結
本文說明當使用者在在線設定中將要求提交至RAG應用程式時所發生的程式。 數據管線處理數據之後,就適合用於RAG應用程式。 在推斷時間叫用的數列或步驟鏈結通常稱為 RAG鏈結。
- (選擇性)用戶查詢前置處理: 在某些情況下,會預先處理用戶的查詢,使其更適合查詢向量資料庫。 這可以涉及在範本內格式化查詢、使用另一個模型重寫要求,或擷取關鍵詞以協助擷取。 此步驟的輸出是擷取查詢,將在後續擷取步驟中使用。
- 擷取: 若要從向量資料庫擷取支持資訊,擷取查詢會轉譯成內嵌使用在數據準備期間用來內嵌檔區塊的相同內嵌模型。 這些內嵌可讓您使用餘弦相似度等量值,比較擷取查詢與非結構化文字區塊之間的語意相似度。 接下來,區塊會從向量資料庫擷取,並根據它們與內嵌要求相似程度進行排名。 會傳回最上層 (最類似的) 結果。
- 提示增強: 將傳送至 LLM 的提示是藉由使用擷取的內容來增強使用者的查詢,以指示模型如何使用每個元件,通常是搭配其他指示來控制回應格式來形成。 在正確的提示範本上使用反覆運算的程式稱為 提示工程。
- LLM 產生: LLM 會採用增強式提示,其中包含使用者的查詢和擷取的支持數據作為輸入。 然後,它會產生以其他內容為基礎的回應。
- (選擇性)後續處理: LLM 的回應可進一步處理,以套用其他商業規則、新增引文,或根據預先定義的規則或條件約束來精簡產生的文字。
如同RAG應用程式數據管線,有許多衍生工程決策可能會影響RAG鏈結的品質。 例如,判斷步驟 2 中要擷取多少區塊,以及如何將它們與步驟 3 中的使用者查詢結合,可能會大幅影響模型產生質量回應的能力。
在整個鏈結中,可以套用各種護欄以確保符合企業原則。 這可能涉及篩選適當的要求、在存取數據源之前檢查用戶權力,以及將 con 帳篷模式 ration 技術套用至產生的回應。