linux環(huán)境部署清華大學(xué)大模型最新版 chatglm2-6b 圖文教程
準(zhǔn)備工作:
# 下載項目源代碼 git clone https://github.com/THUDM/ChatGLM2-6B # 切換到項目根目錄 cd ChatGLM2-6B # 安裝依賴 pip install -r requirements.txt # 安裝web依賴 pip install gradio
如果安裝出現(xiàn)問題,可嘗試手動分別安裝torch
1 # 1第一步安裝虛擬環(huán)境并激活環(huán)境
conda create -n ChatGLM2 python=3.10.6 conda activate ChatGLM2
2 nvidia-smi查看cuda版本,12.0

3 安裝torch第一種方式
pytorch官網(wǎng):https://pytorch.org/






經(jīng)過多次嘗試,發(fā)現(xiàn)conda裝,真的很快,真香。前幾次嘗試用pip裝torch都會出現(xiàn)timeout的錯誤,這個跟服務(wù)器有關(guān)系,視情況而定。

# 安裝依賴 pip install -r requirements.txt

二、準(zhǔn)備工作。安裝依賴包的同時,也可以先手動下載模型包:

1、工程文件準(zhǔn)備
整個工程需要從兩個遠(yuǎn)程倉庫克隆,一個是 github 上的源碼,一個是 HuggingFace 上的模型。
對于源碼,由于總體積較小,因此可直接從網(wǎng)頁下載 zip 包后解壓,也可使用 git 命令(電腦需要提前裝好 git )克隆至本地文件夾中:
git clone https://github.com/THUDM/ChatGLM2-6B
對于模型,由于存在7個體積較大的 checkpoint 文件,若直接 clone 可能耗時過久或網(wǎng)絡(luò)連接不夠穩(wěn)定,可以采用大、小文件分別下載的方式。其中大文件可從 清華云 手動下載,小文件主要為模型實現(xiàn)文件,數(shù)量不多且體積較?。ㄋ闵?tokenizer.model 一共11個文件),可采用兩種方式下載,一種是在 HuggingFace 頁面手動一個一個下載,另一種是利用 GIT_LFS_SKIP_SMUDGE 參數(shù)跳過大文件一次性克隆整個工程(電腦需要提前裝好 Git LFS):
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm2-6b
最后再將前面手動下載好的大文件拷入替換,構(gòu)成完整的模型。
需要注意的坑:
1)該命令在 powershell 中會報錯,提示不認(rèn)識 GIT_LFS_SKIP_SMUDGE 命令,放在 git bash 終端中則可順利執(zhí)行; 2)被該命令跳過的“大文件”不僅有 7 個 .bin 文件,還包括 1.02MB 的 tokenizer.model。
模型文件理論上可存放于任意位置,參考官方演示視頻將其平行于源碼文件夾,即整個工程文件的目錄結(jié)構(gòu)如下:

根據(jù)目錄結(jié)構(gòu),修改源碼目錄下的 web_demo.py 文件,將兩處 THUDM/chatglm2-6b 替換為 model :
tokenizer = AutoTokenizer.from_pretrained("model", trust_remote_code=True)
model = AutoModel.from_pretrained("model", trust_remote_code=True).cuda()
如果想使用命令行與模型交互,則需要修改 cli_demo.py。web_demo2.py 同理 。
三、運行模型
文件夾層面 cd 至web_demo.py文件夾,環(huán)境層面激活 chatglm2-6b,然后執(zhí)行:
python web_demo.py
運行完之后就會彈出該頁面:
需要注意的坑:
1)使用 web_demo 時不能開 VPN,否則會彈出 Expecting value: line 1 column 1 (char 0)錯誤;
2)如使用 web_demo2,則需要按官網(wǎng)提示額外安裝 streamlit 和 streamlit-chat,且啟動命令為
streamlit run web_demo2.py 。
四、體驗
推理速度相比上一代有明顯的提升,但性能提升感知不強(qiáng)。期待團(tuán)隊未來推出13B、30B、65B等更大規(guī)模的模型。
注:筆者測試期間,第三方庫的安裝會因為網(wǎng)絡(luò)原因出現(xiàn)一些問題,此時可以使用國內(nèi)鏡像來解決,例如,筆者在安裝時使用的是阿里云鏡像
pip install torchvision -i https://mirrors.aliyun.com/pypi/simple
- macbook安裝環(huán)境chatglm2-6b的詳細(xì)過程
- ChatGLM-6B+LangChain環(huán)境部署與使用實戰(zhàn)
- 基于本地知識的問答機(jī)器人langchain-ChatGLM 大語言模型實現(xiàn)方法詳解
- ChatGPT平替-?ChatGLM多用戶并行訪問部署過程
- ChatGPT平替-ChatGLM環(huán)境搭建與部署運行效果
- ChatGLM?集成LangChain工具詳解
- 基于prompt?tuning?v2訓(xùn)練好一個垂直領(lǐng)域的chatglm-6b
- 最簡化ChatGLM2-6b小白部署教程【windows系統(tǒng),16G內(nèi)存即可,對顯卡無要求,CPU運行】
相關(guān)文章
Django修改app名稱和數(shù)據(jù)表遷移方案實現(xiàn)
這篇文章主要介紹了Django修改app名稱和數(shù)據(jù)表遷移方案實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
python mysql 字段與關(guān)鍵字沖突的解決方式
這篇文章主要介紹了python mysql 字段與關(guān)鍵字沖突的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
使用Python第三方庫xlrd讀取Excel中的數(shù)據(jù)的流程步驟
這篇文章主要給大家介紹了使用Python第三方庫xlrd讀取Excel中的數(shù)據(jù)的流程步驟,文中通過代碼示例給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-12-12
Python實現(xiàn)手寫一個類似django的web框架示例
這篇文章主要介紹了Python實現(xiàn)手寫一個類似django的web框架,結(jié)合具體實例形式分析了Python自定義簡單控制器、URL路由、視圖模型等功能,實現(xiàn)類似Django框架的web應(yīng)用相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
python中copy()與deepcopy()的區(qū)別小結(jié)
接觸python有一段時間了,一直沒有系統(tǒng)的學(xué)習(xí)過,也對copy,deepcoy傻傻的分不清,故抽出時間來理一下。 下面這篇文章主要給大家介紹了關(guān)于python中copy()與deepcopy()的區(qū)別的相關(guān)資料,需要的朋友可以參考下2018-08-08
python 基于opencv實現(xiàn)圖像增強(qiáng)
這篇文章主要介紹了python 基于opencv實現(xiàn)圖像增強(qiáng)的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12
python-web根據(jù)元素屬性進(jìn)行定位的方法
這篇文章主要介紹了python-web根據(jù)元素屬性進(jìn)行定位的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12
Python+PyQt5+MySQL實現(xiàn)天氣管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Python+PyQt5+MySQL實現(xiàn)天氣管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-06-06
Python實現(xiàn)視頻目標(biāo)檢測與軌跡跟蹤流程詳解
通過閱讀相關(guān)文獻(xiàn)及測試,找到了一種基于多模板匹配的改進(jìn)方法,可以對遙感視頻衛(wèi)星中的移動目標(biāo)進(jìn)行探測,并繪制其軌跡。根據(jù)實驗結(jié)果發(fā)現(xiàn),可以比較有效的對運動目標(biāo)進(jìn)行跟蹤2023-01-01

