參考
手把手教你搭建本地知識庫問答AI機(jī)器人
LangChain-Chatchat:基于LangChain和ChatGLM2-6B構(gòu)建本地離線私有化知識庫
在家庭私有云上部署體驗語言模型chatglm3-6b,打造私人助理
手把手教大家在本地運行ChatGLM3-6B大模型(一)
概述
自從去年GPT模型火爆以來,降低了很多個人和企業(yè)進(jìn)入人工智能領(lǐng)域的門檻,對于大模型尤其是開源的大模型國內(nèi)應(yīng)該比較受關(guān)注和期待,畢竟高額的成本也能將不少人阻擋在門外,其次,大家都希望在產(chǎn)品中集成LLM的能力,結(jié)合業(yè)務(wù)來落地智能化應(yīng)用,提升產(chǎn)品的競爭力,最直接的應(yīng)用就是構(gòu)建知識庫。
下面匯總了一下之前介紹的有關(guān)構(gòu)建知識庫相關(guān)的文章和視頻,包含了開源和閉源多種不同的解決方案,從使用情況來看,因為都是開源產(chǎn)品,所以在架構(gòu)和功能完整性上可能都不夠全面,因為一直在持續(xù)的迭代過程。
如果是站在一個中小企業(yè)的角度,去選型一款比較符合企業(yè)構(gòu)建本地知識庫需求的產(chǎn)品來評估,從以下介紹的開源產(chǎn)品目前的實現(xiàn)效果和未來規(guī)劃目標(biāo)來看,個人覺得Quivr從設(shè)計上來講更加符合應(yīng)用需求,前提是增加企業(yè)已有文檔庫、數(shù)據(jù)庫納入知識庫的能力,擴(kuò)展Danswer提高的功能,完善并豐富對于開源或者閉源模型的支持(目前暫時支持較弱)尤其是對于中文支持不錯的國產(chǎn)模型比如ChatGLM2等,另外一種方案就是今天介紹的LangChain-Chatchat剛好可以與Quivr互補(bǔ),其對于模型的支持很豐富,但對于業(yè)務(wù)端的屬性支持較弱,只支持單個用戶單個知識庫,不能建立多個知識庫通過權(quán)限來隔離。
部署安裝
環(huán)境準(zhǔn)備
我使用的硬件和模型信息:
顯卡:一塊英偉達(dá)的A6000
LLM:開源的chatglm3-6b
向量模型:開源的jina-embedding-l-en-v1
向量數(shù)據(jù)庫:開源的milvus
原理和流程圖
一鍵啟動
一鍵啟動聊天機(jī)器人
安裝完成,輸入以下命令啟動
$ python startup.py -a
看到下面畫面后,表示正常啟動了
啟動WebAPI 服務(wù)
在線調(diào)用API服務(wù)的情況下,直接執(zhí)執(zhí)行 server/api.py 腳本啟動 API 服務(wù);
python server/api.py
啟動 API 服務(wù)后,可訪問 localhost:7861 或 {API 所在服務(wù)器 IP}:7861 FastAPI 自動生成的 docs 進(jìn)行接口查看與測試。
FastAPI docs 界面
啟動WebUI服務(wù)
在瀏覽器輸入聊天機(jī)器人地址:http://127.0.0.1:8561
Docker部署
如果想快速部署 LangChain-Chatchat 產(chǎn)品來體驗,可以選擇Docker一鍵部署的方式,比較簡單,只需要先安裝Docker 容器,在Unbuntu環(huán)境中如何安裝 Docker & Docker Compose,可以參考文章 《Quivr 基于GPT和開源LLMs構(gòu)建本地知識庫 (更新篇)》中的3.2節(jié)。這里不過多贅述。 Windows安裝Docker更簡單。
Docker鏡像使用的版本一般會稍微滯后一些,如果想快速體驗最新的版本按前面開發(fā)模式部署會更合適一點。
LangChain-Chatchat項目使用的 Docker 鏡像地址是:
http://registry.cn-beijing.aliyuncs.com/chatchat/chatchat:0.2.0
docker run -d --gpus all -p 80:8501 registry.cn-beijing.aliyuncs.com/chatchat/chatchat:0.2.0
- 該版本鏡像大小 33.9GB,使用 v0.2.0,以 nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04 為基礎(chǔ)鏡像
- 該版本內(nèi)置一個 embedding 模型:m3e-large,內(nèi)置 chatglm2-6b-32k
- 該版本目標(biāo)為方便一鍵部署使用,請確保您已經(jīng)在Linux發(fā)行版上安裝了NVIDIA驅(qū)動程序
- 請注意,您不需要在主機(jī)系統(tǒng)上安裝CUDA工具包,但需要安裝 NVIDIA Driver 以及 NVIDIA Container Toolkit,請參考安裝指南
- 首次拉取和啟動均需要一定時間,首次啟動時請參照下圖使用 docker logs -f 查看日志
- 如遇到啟動過程卡在 Waiting… 步驟,建議使用 docker exec -it bash 進(jìn)入 /logs/ 目錄查看對應(yīng)階段日志
知識庫管理
切換到知識庫管理后,可以查看和刪除已創(chuàng)建知識庫、新增知識庫,也可以對知識庫進(jìn)行文件增減。
新建知識庫:點擊“新建知識庫”,輸入知識庫名稱和簡介,選擇向量數(shù)據(jù)庫和模型,再點擊新建即可。
上傳文件到知識庫:選擇已創(chuàng)建知識庫,選擇上傳文件,點擊“添加文件到知識庫”
創(chuàng)建好知識庫后,可以切換菜單到“對話”,選擇對話模式為“知識庫問答”,并選擇要對話的知識庫,即可開啟和特定知識庫聊天。文章來源:http://www.zghlxwxcb.cn/news/detail-828400.html
常見問題
本地知識庫怎么微調(diào)?回答不準(zhǔn)確
知識庫不用微調(diào),不準(zhǔn)確需要分析定位原因,是數(shù)據(jù)本身問題還是ai問題,ai層面可以考慮增加問題改寫步驟(看我前兩天分享),換更好的大模型,向量切分方面的優(yōu)化等文章來源地址http://www.zghlxwxcb.cn/news/detail-828400.html
到了這里,關(guān)于AI-基于Langchain-Chatchat和chatglm3-6b部署私有本地知識庫的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!