日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

聊聊ChatGLM-6B部署与微调的深入理解

發(fā)布時(shí)間:2024/1/2 windows 48 coder
生活随笔 收集整理的這篇文章主要介紹了 聊聊ChatGLM-6B部署与微调的深入理解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

ChatGLM的部署,主要是兩個(gè)步驟:

  1. 在Github上下載chatglm的庫文件
  2. 在Hugging Face上下載模型參數(shù)與配置文件

ChatGLM包

從Github上看ChatGLM項(xiàng)目文件的結(jié)構(gòu)來看,僅僅是包含三種部署方式的py代碼與微調(diào)的py代碼

而相關(guān)的實(shí)現(xiàn)細(xì)節(jié),比如神經(jīng)網(wǎng)絡(luò)、激活函數(shù)、損失函數(shù)等具體的實(shí)現(xiàn),并不在該項(xiàng)目源碼中。
不管以哪種方式部署,最核心就是三句代碼,其作用是引入模型參數(shù),初始化transformers配置;以web部署的方式為例:

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

// 引入Gradio,實(shí)現(xiàn)web方式的使用

// 調(diào)用模型方法,開始進(jìn)行對(duì)話推理
xx = model.stream_chat(xxxx);

web的調(diào)用是基于Gradio;
api的調(diào)用是基于fastapi;
cli的調(diào)用是基于python解釋器;

微調(diào)

微調(diào)的解決方案一般是P-Tuning或LoRA;ChatGLM-6B是基于P-Tuning v2實(shí)現(xiàn)的微調(diào),P-Tuning v2是基于連續(xù)提示(continuous prompts)的思想。微調(diào)會(huì)生成新的模型參數(shù)文件,也稱為checkpoint文件。
微調(diào)時(shí)可以選擇全參數(shù)微調(diào)或是部分參數(shù)微調(diào),其流程是訓(xùn)練+推理。訓(xùn)練生成新的checkpoint文件(模型參數(shù));推理則是加載模型參數(shù)文件。
訓(xùn)練前,需要調(diào)整參數(shù),一般修改train.sh腳本文件就行。
推理時(shí),加載原模型文件與微調(diào)后生成的checkpoint文件。還是通過那三句代碼。
輸出的checkpoint文件如下:

checkpoint文件夾內(nèi)的文件如下:

transformers的聯(lián)系

目前的模型,都會(huì)對(duì)接到Hugging Face平臺(tái)的transformers庫中,通過transformers庫來管控大模型。所以在推理階段通過三句代碼就能調(diào)用AI模型。在微調(diào)階段,生成的checkpoint文件中,其結(jié)構(gòu)是Hugging Face平臺(tái)的文件結(jié)構(gòu),包含transformers的相關(guān)配置及初始化信息。

總結(jié)

總結(jié)

以上是生活随笔為你收集整理的聊聊ChatGLM-6B部署与微调的深入理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。