记录在阿里云服务器上对ChatGLM3大模型的部署与微调

ChatGlm3-6B

git地址:GitHub - THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型
国内下载可以通过魔塔社区:魔搭社区

阿里云服务器(可试用白嫖一段时间):人工智能平台PAI-->交互式建模(DSW)-->环境配置(odelscope:1.16.0-pytorch2.3.0tensorflow2.16.1-gpu-py310-cu121-ubuntu22.04)

部署与启动

        1.下载大模型(预训练的大模型)

mkdir models
cd models
 
apt update
apt install git-lfs
 
# 克隆chatGLM3-6b大模型
git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git

        2.下载项目(代码库)

mkdir webcodes
cd webcodes
 
# 下载chatglm3-6b web_demo项目
git clone https://github.com/THUDM/ChatGLM3.git

# 安装依赖
pip install -r requirements.txt

        3.启动(先修改大模型路径)

MODEL_PATH=...

# 小黑窗启动命令
python cli_demo.py

        遇到的坑:看似启动成功,但是一对话就报错

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)

        解决办法:对/usr/local/lib/python3.10路径下的subprocess.py文件的第1031行进行修改

                        使用vim指令打开subprocess.py文件,进入编辑模式,修改后保存并退出。

# 进入文件所在目录
cd /usr/local/lib/python3.10

# 打开并修改subprocess.py文件
vim subprocess.py

# 修改第1301行
# 将 data = data.decode(encoding,errors)
# 修改为 data = data.decode(encoding='utf-8',errors='ignore')

再次启动,能正常对话。

loar微调

使用LLaMA-Factory进行微调

下载并运行LLaMA-Factory

# 克隆项目
git clone https://github.com/hiyouga/LLaMA-Factory.git

# 安装项目依赖
cd LLaMA-Factory
pip install -r requirements.txt

# 看的别人的教程还要进行以下安装,但是进行安装的时候提示已经满足,应该是requirements更新了,不用再自己额外安装别的东西。
pip install transformers_stream_generator bitsandbytes tiktoken auto-gptq optimum autoawq
pip install --upgrade tensorflow
pip uninstall flash-attn -y

# 运行     注意不要进入到src文件里直接 python webui.py, 会报错
CUDA_VISIBLE_DEVICES=0 USE_MODELSCOPE_HUB=1 python src/webui.py

看似运行成功,但是在选完数据集设置完参数之后开始训练又报错了:

/bin/sh: 1: llamafactory-cli: not found

不知道为什么会报这个错误,但是去逛官方社区里面看有没有人遇到相同问题,有人提出意见运行以下代码,重新安装依赖就好使了:

pip install -e.[metrics]

训练完成后会达到相应的对话效果,也可以将模型导出,修改MODEL_PATH=导出的地址后运行

至此对ChatGLM3的部署与微调工作已完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值