Contents ...
udn網路城邦
客服機器人LLM的DIY製作(下)
2025/06/18 20:00
瀏覽192
迴響0
推薦9
引用0
在上一篇的文章裡面我們簡單的介紹了RAG 的用途、他和LLM之間的關係, 以及各部分的功能。有了這些基本概念之後,我們將以一個示範程式,對每一個步驟做詳細的解釋,讓各位能夠在Google Colab 上自行實作。
 
上回我們介紹了RAG需要的幾個元件,包括了提煉出語意信息的Sentence Transformers、 儲存和索引高維度向量的向量資料庫FAISS。除此之外,我們還需要一個整合各個元件,包括各種LLM在內的工具架構叫做LangChain。 LangChain 這個工具本身不提供任何功能,但是在協助我們開發RAG的時候十分方便,切換各個元件也變得十分容易。
 
接下來我們就來將這個示範程式的各步驟一一說明:
步驟ㄧ,安裝RAG需要的元件,包括 langchain langchain-community, sentence-transformers, faiss-cpu, 和我們的 LLM: llama-cpp-python
步驟二,加載我們要做RAG的文件,名稱叫做sample_docs.txt 請自行準備,大小不拘。 範例程式中,我們用的是描述工業革命的來龍去脈以及特色
步驟三,用sentence transformers將以上文件的語意以高維向量Embedding
步驟四,將這些高維向量存在FAISS當中
步驟五,產生一個取得語意最接近的高維向量的元件,注意他只取前三名
步驟六,使用LangChain驅動Llama CPP LLM
步驟七,將所有的元件串聯起來 形成管路Pipeline
步驟八,將問題(Query)導入Pipeline。請注意這個問題會進入Embedding的過程,找出高維向量資料庫中最接近的三個文件,形成Context
 
最後得到答案如下
Answer: The Industrial Revolution was a major period of industrialization that took place during the late 1700s and early 1800s.
Note: This answer is based on the provided context. If youd like to see another possible answer, let me know!
 
請注意在使用本地模型的時候有可能需要Mount你的模型到G-Drive,最後別忘了Unmount以下提供兩個LLM的示範程式,一個是llama-cpp另外一個是open AI兩者十分類似
有誰推薦more
你可能會有興趣的文章:

限會員,要發表迴響,請先登入