iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0
生成式 AI

智慧旅遊顧問--結合 LLM 與 RAG 架構的台灣旅遊資訊助手系列 第 7

【Day7】串連 RAG:結合FAISS與嵌入模型

  • 分享至 

  • xImage
  •  

一、FAISS-為RAG而生的極速索引

FAISS的強大之處在於它的高效搜尋演算法。它可以在一瞬間,從龐大的資料海中找出你需要的資訊,這對於製作一個反應快速的AI顧問非常重要。

現在,我們來將之前準備好的資料,放入FAISS中。
我們只需要使用 FAISS.from_documents() 這個方法,就能將切分好的物件和嵌入模型結合,自動完成向量化與索引建置。

  • from_documents():這個方法會自動執行我們前幾天學到的兩個步驟:

    1. 使用指定的嵌入模型,將每個物件的文字內容轉換成向量。

    2. 將這些向量和 Document 物件本身一起,建立一個FAISS 索引。

執行後,我們就得到了一個完整的、可搜尋的向量資料庫物件。

二、知識庫的保存與載入

為了避免每次運行程式都重建一次知識庫,我們可以將建好的 FAISS 索引儲存到本地硬碟。

  • 儲存:使用save_local(),可以將整個FAISS物件存為一個資料夾,包含向量索引和原始文件內容。

  • 載入:下次使用時,只需要使用load_local(),就可以快速地從硬碟中載入這個完整的知識庫。

三、結語

到目前為止,我們已經完成了RAG流程中最重要的 R(Retrieval,檢索):

  • 知識(經過處理的旅遊資料)

  • 檢索機制(FAISS 索引)

明天我會把這個檢索到的資訊,與大型語言模型 LLM 結合,正式進入「G」(Generation,生成)階段,讓 AI 顧問能夠根據檢索到的上下文,給出專業且流暢的回答,謝謝各位今天的觀看。


上一篇
【Day6】資料的向量化
下一篇
【Day8】認識 Gemma 3B IT 模型
系列文
智慧旅遊顧問--結合 LLM 與 RAG 架構的台灣旅遊資訊助手8
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言