温馨提示:这篇文章已超过459天没有更新,请注意相关的内容是否还可用!
摘要:Llama-7b-hf和vicuna-7b-delta-v0两个项目进行了合并,最终生成了全新的vicuna-7b-v0版本。这一合并旨在整合两个项目的优势,提供更全面、更优化的功能和服务。合并后的新版本有望为用户带来更好的体验,同时推动项目的进一步发展。
最近我在使用Pandagpt时选择了vicuna-7b-v0模型,在此之前我曾经部署过vicuna-7b-v3,两者之间存在显著的差异,主要是因为transforms和fastchat版本的更新导致许多地方不匹配,因此在使用过程中出现了一些错误,为了记录这些经验和教训,我写下这篇文章。
配置环境
根据fastchat官方建议,需要配置Python环境,我使用conda创建了一个名为fastchat的环境,并指定Python版本为3.9(官方建议Python版本要>=3.8)。
切换到fastchat环境后,需要安装特定版本的torch、torchvision和torchaudio,命令如下:
pip install torch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1
二、安装fastchat和transformers库
需要安装fastchat和transformers库,我使用pip安装了fschat 0.1.10版本(官方建议vicuna-7b-delta-v0对应的fastchat版本低于0.1.10),然后安装了transformers库。
三、合并权重并生成vicuna-7b-v0模型
为了生成vicuna-7b-v0模型,我使用了fastchat提供的命令行工具进行权重合并,这个过程需要指定base模型、目标模型(合并权重后生成的vicuna-7b-v0模型路径)和delta模型(从huggingface下载的vicuna-7b-delta-v0路径),这个过程需要消耗大量的RAM(约30G),因此请务必合理评估系统环境。
命令行输出示例:
(fastchat) root@dl-230904040428gxb-pod-jupyter-7599dcdb54-qjppf:~# python -m fastchat.model.apply_delta --base /root/LLaMA-7B-hf/llama-7b-hf --target /root/vicuna-7b-v0 --delta /root/vicuna-7b-delta-v0 Loading the base model from /root/LLaMA-7B-hf/llama-7b-hf Loading checkpoint shards: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 33/33 [02:12...]
在合并权重的过程中,还需要注意目标模型的保存路径以及命令行输出的信息,以确保过程顺利进行。
还没有评论,来说两句吧...