vivo蓝心大模型BlueLM---Windows私有化部署方案

vivo蓝心大模型BlueLM---Windows私有化部署方案

一、背景

  2023年11月1日,2023 vivo开发者大会在深圳举办,大会以“同心·同行”为主题,共设有1个主会场及9个分会场。会上,vivo正式发布自研蓝心大模型BlueLM、OriginOS 4、自研蓝河操作系统BlueOS,以及在人文关怀、生态建设等领域的最新成果,同广大开发者和生态伙伴一道,前瞻时代变革趋势与机遇,共筑产业生态繁荣。同时,vivo高级副总裁兼首席技术官施玉坚,宣布率先开源 70 亿参数级的蓝心大模型 7B 以及对应的微调框架。其中70 亿级别的蓝心大模型 7B 是面向手机打造的端云两用模型,vivo 称其在语言理解、文本创作等场景下表现非常优秀。

vivo开发者社区:蓝心大模型 - vivo开发者社区

vivo开发者大会演讲:https://www.bilibili.com/video/BV1Rz4y1P7tg/?buvid=XX8F5438E2D4F792BF96C0FE7B7560A332CB6&from_spmid=main.my-history.0.0&is_story_h5=false&mid=QBnBJCPXcbizmrIJm19XRQ%3D%3D&p=1&plat_id=116&share_from=ugc&share_medium=android&share_plat=android&share_session_id=5bf110b9-414f-45f5-8acb-4380fe6f9131&share_source=WEIXIN&share_tag=s_i&spmid=united.player-video-detail.0.0×tamp=1698923239&unique_k=uxaYNJV&up_id=19326966

二、模型背景

GitHub项目地址:GitHub - vivo-ai-lab/BlueLM: BlueLM(蓝心大模型): Open large language models developed by vivo AI Lab

具体模型地址:vivo-ai (vivo AI Lab) (huggingface.co)

BlueLM 是由 vivo AI 全球研究院自主研发的大规模预训练语言模型,本次发布包含 7B 基础 (base) 模型和 7B 对话 (chat) 模型,同时我们开源了支持 32K 的长文本基础 (base) 模型和对话 (chat) 模型。

  • 更大量的优质数据 2.6 万亿 
  • 更优的效果 C-Eval  CMMLU 
  • 长文本支持 32K 
  • 协议说明

本次发布基座模型如下:

推荐Linux部署方式

7B-2K不推荐Windows部署,有依赖无法编译,不支持Windows

基座模型

对齐模型

量化模型

7B-2K

BlueLM-7B-Base(显存14G起步)

BlueLM-7B-ChatBlueLM-7B-Base(显存14G起步)

 BlueLM-7B-Chat-4bitsBlueLM-7B-Base(显存5G起步)

7B-32K

BlueLM-7B-Base-32KBlueLM-7B-Base(显存14G起步)

BlueLM-7B-Chat-32KBlueLM-7B-Base(显存14G起步)

/

vivo宣布后续将开源 13B 模型和支持多模态的 7B-vl 模型,还请期待!

三、部署方案

我的测试环境软硬件情况:

CPU:i9-10900K

GPU:3090 24G

RAM:DDR4 3200 64G(32G X2)

OS:Win10 Pro 22H2 19045.2673

(一)、工程文件准备

整个工程需要从两个远程仓库克隆,一个是 github 上的源码,一个是 HuggingFace 上的模型。

1、项目源码下载

对于源码,可直接从网页下载 zip 包后解压,也可使用 git 命令(电脑需要提前装好 git )克隆至本地文件夹中:

git下载地址:Git - Downloads

下载安装完成后,进入项目存放目录的位置进行git clone,粘贴clone地址进行下载

2、模型下载

根据实际需求选择所需模型进行下载,这里以vivo-ai/BlueLM-7B-Base为例

(1)进入上一步clone好的源码目录,打开git,进行模型下载。

git安装lfs:
git lfs install

git clone模型
git clone https://huggingface.co/vivo-ai/BlueLM-7B-Base

根据目录结构,用记事本打开并修改源码目录下的 web_demo.py、cli_demo.py 文件,将 MODEL_ID = "vivo-ai/BlueLM-7B-Chat" 替换为 ..\\model :

需要注意的坑:

在 windows 下,表示目录层级的斜杠需写为双反斜杠,而非 Linux 下的单一正斜杠。

3、python环境准备

(1) Anaconda的下载

官网:Free Download | Anaconda

安装配置详细教程参见:【精选】Anaconda超详细安装教程(Windows环境下)_conda安装-CSDN博客

(2)建立python环境。安装完后,打开Anaconda Navigator,建立环境,建议选择3.9的版本【需要联网】。创建完成后打开Terminal。

(3) 切换到源码目录

(4)安装CUDA

对于使用 Nvidia GPU 的用户,BlueLM 并没有明确给出手动安装 torch 的方法,以下操作如不进行,将无法启动模型:

(1)下载安装 CUDA Toolkit,查看本地显卡情况,红框处显示CUDA最高支持12.0的版本,12288MiB就是12G的显存

CUDA下载地址:CUDA Toolkit - Free Tools and Training | NVIDIA Developer

CUDA安装详细教程:【精选】CUDA安装及环境配置——最新详细版_abbrave的博客-CSDN博客

(2)CUDA的版本最好和Pytorch最大支持CUDA版本一致,下图最新就支持12.1的CUDA版本,因此CUDA版本尽量选择12.1的迭代版本。

Pytorch官网:PyTorch

(3)CUDA安装好后,进入虚拟环境,安装Pytorch

conda切换清华源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

设置搜索时显示通道地址

conda config --set show_channel_urls yes

有时候国内镜像源无法连接,需要恢复原来的源:

conda config --remove-key channels

pip切换清华源:

升级pip

python -m pip install --upgrade pip

配置默认镜像站

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

如果你只是想临时使用一下,那么用下面这行命令就好了:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

粘贴下载地址,安装Pytorch

验证torch是否安装成功

打开终端,切换到pytorch安装环境下,检测程序如下:

import torch

print(torch.__version__)

print(torch.cuda.is_available())

输出类似下图结果,代表成功:

(4)安装requirements.txt

安装之前,需要打开requirements.txt,进行如下修改,删除红框两项。

原因:1、torch已经安装。2、windows是不支持deepspeed的,如果只是跑推理的话可以不安装deepspeed。

注意:如果出现transformers报错,请将requirements.txt里面的transformers==4.33.1修改为transformers==4.30.2,然后再重新执行安装命令。

pip安装依赖,等待安装完成

pip install -r requirements.txt

(5)运行大模型

1、命令行demo

本命令行 Demo 仅支持 Chat 场景。

python cli_demo.py

2、网页demo

本网页 Demo 仅支持 Chat 场景。

streamlit run web_demo.py --server.port 8080

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值