最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Chatglm-本地部署(windows)-自己ai組合的第一步

2023-03-30 21:29 作者:不想起名字的雨狼  | 我要投稿

官方基于wsl的windows部署教程:


https://github.com/ZhangErling/ChatGLM-6B/blob/main/deployment_windows.md


本教程基于:


windows11


CUDA 12.1


Anaconda


Nvidia?


顯卡2080ti

開始:


查看當(dāng)前電腦的CUDA版本:


打開“命令提示符(CMD)”


輸入nvidia-smi

531.41為驅(qū)動版本,12.1為CUDA版本

下載所用文件:


下載Chatglm-6b項目(Github)


https://github.com/THUDM/ChatGLM-6B


百度網(wǎng)盤(無法使用github)


鏈接:https://pan.baidu.com/s/1fSfHv2Hk70o3Pxzp91lzeQ?


提取碼:q6qh

下載AnaConda(Windows):


https://www.anaconda.com (主頁)


https://repo.anaconda.com/archive/Anaconda3-2023.03-Windows-x86_64.exe


https://mirrors.bfsu.edu.cn/anaconda/(北京外國語大學(xué)開源軟件鏡像站)

下載pytorch文件(以防各種莫名其妙的pytorch報錯):


命令行方式:https://pytorch.org/get-started/locally/


Pytorch下載:


https://download.pytorch.org/whl/ (所有庫下載)


pytorch:


https://download.pytorch.org/whl/torch


cp:python版本(cp310=python3.10版本)


cu:cuda版本(cu118=cuda11.8版本)? ? ?使用顯卡


cu118可以適用于cuda12.1版本


cpu:cpu版本? ? 使用CPU


cpu版本適用于顯卡顯存不足6g的電腦


2.0.0為最新版本


Pytorch Audio


https://download.pytorch.org/whl/torchaudio


Pytorch Vision


https://download.pytorch.org/torchvision/

CUDA下載(CUDA Toolkit):

https://developer.nvidia.com/cuda-downloads


模型下載(本地部署使用,chatglm默認(rèn)為自動聯(lián)網(wǎng)下載):


百度網(wǎng)盤(無法使用huggingface,附屬文件要和模型一起使用)


鏈接:https://pan.baidu.com/s/1ScYBjh2XDU23D97EcQMDKQ?


提取碼:el57


huggingface.co版本下載:

模型下載位置:

這個當(dāng)中的所有文件都需要下載

這個當(dāng)中的所有文件都需要下載

https://huggingface.co/THUDM/chatglm-6b-int4-qe/tree/main(4G整合版,適用于電腦配置不高的人群)

4g整合版

https://huggingface.co/THUDM/chatglm-6b-int4/tree/main(5G整合版,適用于電腦配置不高的人群)

5整合版

https://huggingface.co/THUDM/chatglm-6b/tree/main? ? (普通版,8個模型需要下載至少兩個)

普通版

安裝軟件:


Anaconda:


安裝成功后,命令無效首先檢查環(huán)境變量


安裝時:配置環(huán)境變量


https://blog.csdn.net/in546/article/details/117400839(CSDN教程)


安裝后:配置環(huán)境變量


https://zhuanlan.zhihu.com/p/123188004(知乎教程)

更改conda源


找到文件(C:/用戶/(用戶名)/.condarc文件):


以下內(nèi)容復(fù)制粘貼到.condarc文件


channels:


? - defaults


show_channel_urls: true


default_channels:


? - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main


? - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r


? - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2


custom_channels:


? conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


? simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


保存并關(guān)閉文件

CUDA安裝:


安裝成功后,命令無效首先檢查環(huán)境變量


https://blog.csdn.net/qq_42951560/article/details/116131410(基于此CSDN教程)

配置環(huán)境變量:


key(鍵):PYTORCH_CUDA_ALLOC_CONF


value(值):max_split_size_mb:1000


此環(huán)境變量用于解決 “CUDA out of memory. Tried to allocate 20.00 MiB (GPU 0; 10.76 GiB total capacity; 4.29 GiB already allocated; 10.12 MiB free; 4.46 GiB reserved in total by PyTorch)” 此種錯誤,后續(xù)配置成功后出現(xiàn)錯誤可通過此種方式解決,1000可以修改為適合的任意數(shù)字



Chatglm配置:


在任意位置(可以是桌面)創(chuàng)建文件夾


例子:

C:\Users\用戶\Desktop\AI


解壓下載好的chatglm壓縮包到文件夾中


例子:

C:\Users\用戶\Desktop\AI\ChatGLM-6B-main


打開:Anaconda prompt

不是cmd,不是命令提示符?。?!
顯示這種才是對的


創(chuàng)建環(huán)境


輸入conda create -n 名字 想要安裝的包(=指定版本)


例子:

conda create -n chatglm python=3.10


然后輸入y,回車


創(chuàng)建成功后激活環(huán)境:


輸入conda activate 名字


例子:

conda activate chatglm

這樣才對


轉(zhuǎn)到chatglm項目文件夾


例子 :

cd C:\Users\用戶\Desktop\AI\ChatGLM-6B-main


接下來的操作路徑都為chatglm項目文件夾中


安裝軟件包:


安裝之前下載的pytorch系列包


輸入python -m pip install 包名(帶路徑)


假設(shè)我pytorch文件在C:\Users\用戶\Desktop\AI目錄下,


文件名稱:torch-2.0.0+cu118-cp310-cp310-win_amd64.whl


別復(fù)制文件名的時候忘了后綴

其他兩個pytorch系列文件同理


例子:

python -m pip install C:\Users\用戶\Desktop\AI\torch-2.0.0+cu118-cp310-cp310-win_amd64.whl


安裝完畢后輸入:


python -m pip install -r requirements.txt


python -m pip install gradio (啟動網(wǎng)頁版需要安裝)


全部安裝完成后就可以啟動(但是使用顯存默認(rèn)為13G,且并非使用本地模型)


網(wǎng)頁版


python web_demo.py


命令行版


python cli_demo.py


官方啟動(github文檔)


網(wǎng)頁版 Demo

首先安裝 Gradio:pip install gradio,然后運行倉庫中的 web_demo.py:


python web_demo.py


命令行 Demo

運行倉庫中 cli_demo.py:


python cli_demo.py


程序會在命令行中進(jìn)行交互式的對話,在命令行中輸入指示并回車即可生成回復(fù),輸入clear可以清空對話歷史,輸入stop終止程序。


API部署

首先需要安裝額外的依賴pip install fastapi uvicorn,然后運行倉庫中的api.py:


python api.py


默認(rèn)部署在本地的8000端口,通過POST方法進(jìn)行調(diào)用


curl -X POST "http://127.0.0.1:8000" \? ? ?-H 'Content-Type: application/json' \? ? ?-d '{"prompt": "你好", "history": []}'


得到的返回值為


{? "response":"你好??!我是人工智能助手 ChatGLM-6B,很高興見到你,歡迎問我任何問題。",? "history":[["你好","你好??!我是人工智能助手 ChatGLM-6B,很高興見到你,歡迎問我任何問題。"]],? "status":200,? "time":"2023-03-23 21:38:40"}



其余配置項:


模型量化

默認(rèn)情況下,模型以 FP16 精度加載,運行上述代碼需要大概 13GB 顯存。如果你的 GPU 顯存有限,可以嘗試以量化方式加載模型,使用方法如下:


# 按需修改,目前只支持 4/8 bit 量化model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().quantize(4).cuda()


打開web_demo.py或者cli_demo.py或者api.py文件(三個文件相同)


4:使用6GB顯存


8:使用10GB顯存


將下列代碼


AutoModel.from_pretrained("THUDM/chatglm6b", trust_remote_code=True).half().cuda()


改為


AutoModel.from_pretrained("THUDM/chatglm6b", trust_remote_code=True).half().quantize(4).cuda()



模型修改(聯(lián)網(wǎng)):


(8g模型)THUDM/chatglm-6b


model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().quantize(4).cuda()【使用6GB顯存】



(5g模型)THUDM/chatglm-6b-int4


model = AutoModel.from_pretrained("THUDM/chatglm-6b-int4", trust_remote_code=True).half().cuda()



(4.3g模型)THUDM/chatglm-6b-int4-qe


model = AutoModel.from_pretrained("THUDM/chatglm-6b-int4-qe", trust_remote_code=True).half().cuda()



CPU方式使用(需要大概 32GB 內(nèi)存):


model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).float()


內(nèi)存不足,可以直接加載量化后的模型:


from_pretrained("THUDM/chatglm-6b-int4")


from_pretrained("THUDM/chatglm-6b-int4-qe")





本地加載模型:


local_dir:你的模型文件夾的相對路徑


checkpoint_path:模型名稱【例子:"THUDM/chatglm-6b-int4"】




checkpoint_path = "THUDM/chatglm-6b"【可以更改模型】


local_dir = "./你的模型文件夾的相對路徑"




tokenizer = AutoTokenizer.from_pretrained(checkpoint_path, trust_remote_code=True)


model = AutoModel.from_pretrained(checkpoint_path, trust_remote_code=True)




model.save_pretrained(local_dir)


tokenizer.save_pretrained(local_dir)




保存到本地后, checkpoint_path 換成本地路徑就是直接加載


(也可以不使用上面代碼,將下載的模型解壓到你的模型文件夾的相對路徑中,上面代碼用于下載文件)


tokenizer = AutoTokenizer.from_pretrained(local_dir, trust_remote_code=True)


model = AutoModel.from_pretrained(local_dir, trust_remote_code=True)



問題:https://github.com/THUDM/ChatGLM-6B/issues

[BUG/Help]gcc編譯第一個kernel報錯,編譯第二個成功,但是無法加載so · Issue #229 · THUDM/ChatGLM-6B (github.com)


[Feature] <怎樣才能實現(xiàn)真.離線模式>?


?https://github.com/THUDM/ChatGLM-6B/issues/253


[BUG/Help] Windows 下 INT-4 量化模型無法加載


Chatglm-本地部署(windows)-自己ai組合的第一步的評論 (共 條)

分享到微博請遵守國家法律
周至县| 黄浦区| 安多县| 双辽市| 贵港市| 卫辉市| 南漳县| 宝丰县| 平度市| 永康市| 甘南县| 玉田县| 西安市| 临江市| 曲沃县| 灵川县| 南丰县| 绥滨县| 景东| 巴青县| 海伦市| 新闻| 会东县| 宁化县| 武安市| 德阳市| 肇东市| 尼玛县| 特克斯县| 江油市| 庆安县| 烟台市| 新宾| 招远市| 卓尼县| 来安县| 泸水县| 鄂伦春自治旗| 阿合奇县| 舞阳县| 革吉县|