FAISS的強大之處在於它的高效搜尋演算法。它可以在一瞬間,從龐大的資料海中找出你需要的資訊,這對於製作一個反應快速的AI顧問非常重要。
現在,我們來將之前準備好的資料,放入FAISS中。
我們只需要使用 FAISS.from_documents() 這個方法,就能將切分好的物件和嵌入模型結合,自動完成向量化與索引建置。
from_documents():這個方法會自動執行我們前幾天學到的兩個步驟:
使用指定的嵌入模型,將每個物件的文字內容轉換成向量。
將這些向量和 Document 物件本身一起,建立一個FAISS 索引。
執行後,我們就得到了一個完整的、可搜尋的向量資料庫物件。
為了避免每次運行程式都重建一次知識庫,我們可以將建好的 FAISS 索引儲存到本地硬碟。
儲存:使用save_local(),可以將整個FAISS物件存為一個資料夾,包含向量索引和原始文件內容。
載入:下次使用時,只需要使用load_local(),就可以快速地從硬碟中載入這個完整的知識庫。
到目前為止,我們已經完成了RAG流程中最重要的 R(Retrieval,檢索):
知識(經過處理的旅遊資料)
檢索機制(FAISS 索引)
明天我會把這個檢索到的資訊,與大型語言模型 LLM 結合,正式進入「G」(Generation,生成)階段,讓 AI 顧問能夠根據檢索到的上下文,給出專業且流暢的回答,謝謝各位今天的觀看。