第六步:实验环境准备
AutoDL 的服务器是在国内,如果需要从它访问国外的网站,可以执行下面的命令:
source /etc/network_turbo
实验环境所需的python依赖包已安装好,后续需要将实验所需的预训练模型权重从huggingface或modelscope下载到本地
拉取qwen2-7b的权重
cd /root/autodl-tmp/
git clone https://www.modelscope.cn/qwen/Qwen2-7B-Instruct.git
cd Qwen2-7B-Instruct
# 清除掉.git目录,避免数据盘空间不足
rm -rf .git
glm4-9b在modelscope中有托管(要使用特定版本,最新的checkpoint有问题,会导致显存溢出),可以使用git-lfs来同步到本地数据盘(耐心等待十几分钟)
cd /root/autodl-tmp
git lfs install
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/ZhipuAI/glm-4-9b-chat.git
cd glm-4-9b-chat
git checkout eeb4a6d04dd8aa25a6c46edd0837792f8bc64e3a
git lfs fetch --include="tokenizer.model"
git lfs checkout tokenizer.model
git lfs fetch --include="*.safetensors"
git lfs checkout *.safetensors
# 清理掉.git目录减少数据盘空间占用
rm -rf .git
注意: 要给glm4-9b的modeling_chatglm.py文件打个补丁修改一下才能在较新版本的transformers库中使用
sed -i '815s/.*/ cache_name, cache = self._extract_past_from_model_output(outputs)/; 816s/.*/ model_kwargs[cache_name] = cache/; 817d' /root/autodl-tmp/glm-4-9b-chat/modeling_chatglm.py
同理可拉取llama3.1-8b的权重
cd /root/autodl-tmp/
git clone https://www.modelscope.cn/LLM-Research/meta-llama-3.1-8b-instruct.git
cd meta-llama-3.1-8b-instruct
# 清除掉.git目录,避免数据盘空间不足
rm -rf .git
注意: 如果出现数据盘容量不足的问题时,可以删除预训练模型目录中的.git目录,当然最好是付费扩容数据盘,价格也很便宜的
finetune的代码托管在github上,大家可以去同步拉取(也欢迎大家来star噢),地址是 https://github.com/agiclass/fine-tuning-lab
代码在 v8 分支上。从github拉取finetune代码,如网络不稳定导致拉取失败,可以手动重复尝试
cd /root/autodl-tmp/
# 如果网络不畅通可以使用ghproxy来代理从github同步代码
# 或从实验室中拿到的已打包好的代码包然后手动传到autodl服务器上
git clone https://mirror.ghproxy.com/https://github.com/agiclass/fine-tuning-lab -b v8
然后到web demo的目录加载并运行模型
cd /root/autodl-tmp/fine-tuning-lab/web_demo/
bash qwen2_lora.sh
## 其他的也是同理
# bash glm4_qlora.sh
# bash llama3_qlora.sh
出现下面截图表示web服务启动成功
欢迎来撩 : 汇总all