日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

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

發布時間:2024/1/2 56 coder
生活随笔 收集整理的這篇文章主要介紹了 聊聊ChatGLM-6B部署与微调的深入理解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ChatGLM的部署,主要是兩個步驟:

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

ChatGLM包

從Github上看ChatGLM項目文件的結構來看,僅僅是包含三種部署方式的py代碼與微調的py代碼

而相關的實現細節,比如神經網絡、激活函數、損失函數等具體的實現,并不在該項目源碼中。
不管以哪種方式部署,最核心就是三句代碼,其作用是引入模型參數,初始化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,實現web方式的使用

// 調用模型方法,開始進行對話推理
xx = model.stream_chat(xxxx);

web的調用是基于Gradio;
api的調用是基于fastapi;
cli的調用是基于python解釋器;

微調

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

checkpoint文件夾內的文件如下:

transformers的聯系

目前的模型,都會對接到Hugging Face平臺的transformers庫中,通過transformers庫來管控大模型。所以在推理階段通過三句代碼就能調用AI模型。在微調階段,生成的checkpoint文件中,其結構是Hugging Face平臺的文件結構,包含transformers的相關配置及初始化信息。

總結

總結

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

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。