今天的主題是要介紹一個很常用的技能: 要如何把文件查訊後回答(先介紹分段)
首先,LangChain 是什麼?
一個 LLM 應用框架(流程框架),可串接:向量資料庫(如 Chroma)、LLM(OpenAI、Ollama)……等。
為什麼要和Chroma一起用?
因為是有根據資料庫才回答,不是胡亂回答
流程為: LangChain 把查詢的動作交給 Chroma,再由 LLM 回答查到的內容
為什麼要「分段」?
因為 GPT 等模型一次能處理的「文字量」(token)有限,太長會超出限制,而且分段後可以用向量比對找出「最相關的段」,不需要整份 PDF 全部送進模型,省成本、效能高
我們先來實作~~
這是範例pdf檔(取自於維基百科)
pip install langchain-community pypdf
引入PDF 載入器和”支援標點符號分段”的文字切割器
讀取檔案,然後每一頁存到 document
每段最多 200 字,(。!?, . 空格)作為切點
分好段落後印出來
這是我最後跑出來的畫面,沒有斷在奇怪的地方
明天繼續介紹~~