Vicuna 模型学习与实战

1 环境搭建

构建python环境
conda create -n vicuna python=3.8    # 创建新环境
source activate vicuna                       # 激活环境
安装 FastChat
pip install fschat
从 github 下载 FastChat repository 安装
  1. clone repository,然后 加入 FastChat folder
git clone https://github.com/lm-sys/FastChat.git
cd FastChat

PS : FastChat commit version : 55051ad0f23fef5eeecbda14a2e3e128ffcb2a98

2 Vicuna Weights 生成

官方提供 的 Vicuna Weights 生成方式

我们将 Vicuna Weights 作为 delta weights 发布,以符合LLaMA模型许可证。您可以将我们的delta添加到 原始 LLaMA Weights 中,以获得 Vicuna Weights 。说明:

按照 此处 的说明,以 huggingface format 获取原始 LLaMA Weights;
使用以下脚本通过应用我们的delta来获得 Vicuna weights 。他们会自动从我们的 Hugging Face account 下载 Vicuna Weights 。

  • 注:权重v1.1 仅与 transformers>=4.28.0 和 fschat>=0.2.0 兼容。请相应地更新您的 本地package 。如果您按照上面的命令进行新的安装,那么您应该得到所有正确的版本。
本项目所使用的的 Vicuna Weights 生成方式
2.1下载 Vicuna Weight

当前版本的MiniGPT-4是建立在v0版本的 Vicuna-13B 之上的。请参考我们的说明来准备 Vicuna weights。最终的权重将在结构类似于以下的单个文件夹中:

  • 注:Vicuna是一个开源的基于llama的LLM,其性能接近ChatGPT。我们目前使用的是v0版本的Vicuna-13B。
    git lfs install
    git clone https://huggingface.co/lmsys/vicuna-13b-delta-v1.1  # more powerful, need at least 24G gpu memory
    # or
    git clone https://huggingface.co/lmsys/vicuna-7b-delta-v1.1  # smaller, need 12G gpu memory
  • 请注意,这不是直接的 working weight ,而是LLAMA-13B的 working weight 与 original weight 的差值。(由于LLAMA的规则,我们无法分配LLAMA的 weight 。)
2.2 下载 原始LLAMA-7B或LLAMA-13B权重

然后,您需要按照HuggingFace提供的原始权重 或 从互联网上获取 HuggingFace格式的原始LLAMA-7B或LLAMA-13B 权重

  • 注:这里 直接 从 HuggingFace 下载 已转化为 HuggingFace格式的原始LLAMA-7B或LLAMA-13B 权重
 git lfs install
 git clone https://huggingface.co/decapoda-research/llama-13b-hf  # more powerful, need at least 24G gpu memory
 # or
 git clone https://huggingface.co/decapoda-research/llama-7b-hf  # smaller, need 12G gpu memory
2.3 构建真正的 working weight

当这两个 weight 备好后,我们可以使用Vicuna团队的工具来创建真正的 working weight 。

执行如下命令创建最终 working weight

python -m fastchat.model.apply_delta --base /path/to/llama-13bOR7b-hf/  --target /path/to/save/working/vicuna/weight/  --delta /path/to/vicuna-13bOR7b-delta-v1.1/ --low-cpu-mem
  • base-model-path:下载好的llama-13b模型的地址
  • delta-path:下载好的vicuna-13b模型的地址:
  • target-model-path:想要输出的最终的vicuna-13b的地址

运行Vicuna模型

python -m fastchat.serve.cli --model-path ./vicuna-7b-weight --style rich  --num-gpus 2
### Vicuna 模型权重文件下载 为了获取 Vicuna 模型的权重文件,需通过 Hugging Face 平台完成下载操作。对于需要认证才能访问的模型版本,如 LLaMA 或其衍生模型,在下载过程中加入 Hugging Face 的 Access Token 是必要的[^2]。 具体来说,如果采用命令行工具 `wget` 进行下载,则可以在请求头中附加授权信息来提供此令牌: ```bash wget --header="Authorization: Bearer <your_hf_token>" <model_download_url> ``` 而当利用 Git 克隆仓库的方式时,于提示输入密码处填入该 Access Token 即可继续下载流程。 一旦成功下载所需模型及其配置文件之后,应将其放置到项目的特定目录下以便后续调用。例如,按照说明文档指示,应当把下载得到的Hugging Face模型权重以及Token相关文件存放在项目里的 `models` 文件夹之中[^1]。 考虑到不同规模的 Vicuna 模型对硬件资源的需求差异较大,确保本地环境满足最低要求也非常重要。比如运行仅基于 CPU 而不依赖 GPU 的情况下,Vicuna-7B 至少需要约 30 GB 的 RAM;而对于更大的 Vicuna-13B 版本而言,则可能消耗高达 60 GB 左右的内存空间[^3]。 #### 示例 Python 启动代码片段 (针对 CPU) ```python import fastchat if __name__ == "__main__": model_path = "/path/to/your/local/models/vicuna-13b-delta-v1.1-llama-merged" device = "cpu" # 使用 FastChat 库启动 CLI 接口服务并指定加载路径设备参数 fastchat.serve.cli.main(model_path=model_path, device=device) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值