文章目录
1.Qwen模型简介
(引自https://www.modelscope.cn/models/qwen/Qwen1.5-0.5B-Chat-GGUF/summary、https://blog.csdn.net/df19900725/article/details/136051040)
Qwen1.5(通义千问1.5)是阿里云最近推出的开源大型语言模型系列,包含多个规模,从0.5B到72B,满足不同的计算需求(本文介绍0.5b),是Qwen2的beta版,是一个基于Transformer架构的仅解码器语言模型,预训练于大量数据上。与之前发布的Qwen相比,改进包括:
- 有6个不同参数模型版本(0.5B, 1.8B, 4B, 7B, 14B 和 72B),最小的仅5亿参数,最大的有720亿参数;
- 聊天优化版本的模型相比较第一代模型有明显的进步,其中720亿参数的Qwen1.5-72B在MT-Bench得分仅次于GPT-4;
- 基座版本和聊天版本在多语言方面的能力得到增强,包括中英文在内,共支持12种语言(如日语、俄语、法语西班牙语等);
- 所有版本模型最高支持32K的长上下文输入;
- 支持系统提示,可以完成Roleplay;
- 生态完善,发布即支持vLLM、SGLang等推理加速框架;
- 支持不同的量化框架;
- 月活1亿以下直接商用授权,月活1亿以上商用需要获取授权;
2.Qwen1.5-0.5B模型部署
接下来我们开始规模为0.5B的Qwen1.5模型部署
2.1模型下载:创建一个python文件并运行
python代码如下所示:
from modelscope.hub.file_download import model_file_download
model_dir = model_file_download(model_id='qwen/Qwen1.5-0.5B-Chat-GGUF',file_path='qwen1_5-0_5b-chat-q5_k_m.gguf',
revision='master',cache_dir='/mnt/workspace')
(别忘了将’/mnt/workspace’改为对应路径)
在命令行中运行代码
python <文件名>.py
2.2下载llama.cpp:使用git克隆llama.cpp项目并编译
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make -j
2.3使用如下代码加载并执行模型
./main -m /mnt/workspace/qwen/Qwen1.5-0.5B-Chat-GGUF/qwen1_5-0_5b-chat-q5_k_m.gguf -n 512 --color -i -cml
2.4执行成功如下图所示:
至此,你已经部署好了qwen1.5-0.5b,可以在窗口进行对话。
3.基于OpenVINO的模型量化实践(Qwen2.0)
3.1配置环境并安装依赖的包:
首先去github下载所需的文件,链接如下:
https://github.com/OpenVINO-dev-contest/Qwen2.openvino
创建目录并在该目录下创建两个.py文件和一个.txt文件
并将代码复制进对应的文件
接着
创建Python虚拟环境:
python -m venv qwenVenv
source qwenVenv/bin/activate
安装依赖的包:
pip install wheel setuptools
pip install -r requirements.txt
(在终端中一行一行执行即可)
成功后如下图所示:
3.2下载模型
export HF_ENDPOINT=https://hf-mirror.com
huggingface-cli download --resume-download --local-dir-use-symlinks False Qwen/Qwen1.5-0.5B-Chat --
local-dir {your_path}/Qwen1.5-0.5B-Chat
(同样在终端中运行)
成功后如下图所示:
3.3转换模型与加载模型:
在这里需使用第1步创建的两个.py文件
python3 convert.py --model_id Qwen/Qwen1.5-0.5B-Chat --precision int4 --output {your_path}/Qwen1.5-0.5B-Chat-ov
python3 chat.py --model_path {your_path}/Qwen1.5-0.5B-Chat-ov --max_sequence_length 4096 --device CPU
转换和加载成功如下图所示:
3.4模型部署完毕
至此,Qwen2.0也部署完毕,可进行对话,如下图:
4.总结
此次LLM实验是本人部署大模型的初体验,Qwen1.5和2.0以及其他开源模型的亲身部署与使用过程,加深了我对大模型的理解和认识,通过接触模型库,从本质上见证了语言模型的核心,同时也加强了对linux系统的使用熟练度,相信大家也有丰富收获。