最强开源Qwen2.5:本地部署 Ollma/vLLM 实测对比,邀你围观体验 ...

  金牌会员 | 2024-9-30 04:50:20 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 867|帖子 867|积分 2601

最近 Qwen2.5 特殊火,72B 模型性能逾越 Llama3.1 405B,稳居环球最强开源大模型。
既然这么强,咱必须给它整起来啊。
前两天禀享了:手机端跑大模型:Ollma/llama.cpp/vLLM 实测对比
Ollama 完胜 llama.cpp!怎样 vLLM 比较傲娇,在 arm 架构上搞不赢,还没能一睹它的芳容~
本日,刚好借 Qwen2.5 的东风,实测 Ollma//vLLM 本地部署大模型,到底该怎么选?
1. Qwen2.5 有哪些亮点

模型规模多元:分别为0.5/1.5/7/14/32/72B,分base和instruct两个版本。
海量训练数据:训练数据总量高达18T个token,具备强大的知识储备。
指令遵循精彩:实测结构化输出(如json)遵循不错,其它指令遵循待测试。
支持语种丰富:支持凌驾29种语言,中文、英语、法语、西班牙语、德语、日语等。
2. Ollama 部署实测

当前 Ollama的 Library 中已支持 Qwen2.5 下载。
2.1 Ollama 安装

不相识 Ollama 的小同伴,可翻看之前的教程:本地部署大模型?Ollama 部署和实战,看这篇就够了
这里,我们依然接纳 Docker 安装,用官方最新镜像,拉起一个容器:
  1. # CPU
  2. sudo docker run -d -v ollama:/root/.ollama -p 3002:11434 --restart unless-stopped --name ollama ollama/ollama
复制代码
假如有 GPU,那就用如下命令,把 GPU 用上,跑大模型还是很吃算力的:
  1. # GPU 单卡
  2. sudo docker run -d --gpus "device=3" -v ollama:/root/.ollama -p 3002:11434 --restart unless-stopped --name ollama ollama/ollama
  3. # GPU 多卡
  4. sudo docker run -d --gpus '"device=2,3"' -v ollama:/root/.ollama -p 3002:11434 --restart unless-stopped --name ollama ollama/ollama
复制代码
交情提示:docker 容器中指定多张 GPU,命令行中 '"device=2,3"' 必要加两个引号!
2.2 Qwen2.5 下载

Ollama 容器启动成功后,进入容器,下载模型并运行:
  1. sudo docker exec -it ollama /bin/bash
复制代码
我这里下载了7/14/32b(资源有限,搞不定72b):
  1. ollama run qwen2.5:7b
  2. ollama run qwen2.5:14b
  3. ollama run qwen2.5:32b
复制代码
这三个模型,资源占用情况怎样?先抛结论
  1. NAME           显存占用   SIZE           
  2. qwen2.5:32b    24 G      19 GB           
  3. qwen2.5:14b    11 G      9.0 GB        
  4. qwen2.5:7b     6 G       4.7 GB   
复制代码


  • qwen2.5:7b 模型权庞大小 4.7GB,运行 6G 显存就够。



  • qwen2.5:14b 模型权庞大小 9GB,运行必要 11G 显存



  • qwen2.5:32b 模型权庞大小 19GB,运行必要 24G 显存

注:单张 16G 显卡,只够跑 14b 模型,所以我这里用了两张 4080 跑 32b 模型,Ollama 会自动将模型分配到两张卡上。别的,假如启动一段时间没有调用,Ollama 会自动释放显存,简直不要太友好。
2.3 接入OneAPI

假如要接入兼容 OpenAI 格式的应用,可考虑将 Ollama 的模型接入 OneAPI。
不相识 OneAPI 的小同伴,可参考这篇教程:OneAPI-接口管理和分发神器:所有大模型一键封装成OpenAI协议
新建一个渠道,把我们刚部署的三个模型接进来:

留意:渠道最后的代理位置,必要要填主机的公网 IP 地址
假如没有公网 IP 咋办?
可参考之前教程:【白嫖 Cloudflare】之 免费内网穿透,让本地AI服务,触达环球,把内网服务穿透出来。
2.4 推理速率对比

以下是 Ollama 原生调用:
  1. Ollama 原生调用 -- GPU:
  2. 第1次调用:3.02秒, token/s:121.90
  3. 第2次调用:2.84秒, token/s:122.96
  4. 第3次调用:3.16秒, token/s:122.59
  5. 第4次调用:2.62秒, token/s:121.59
  6. 第5次调用:2.68秒, token/s:126.79
  7. ---
  8. Ollama 原生调用 -- CPU:
  9. 第1次调用:36.59秒, token/s:11.59
  10. 第2次调用:34.16秒, token/s:13.94
  11. 第3次调用:32.24秒, token/s:12.78
  12. 第4次调用:40.60秒, token/s:13.08
  13. 第5次调用:22.18秒, token/s:13.93
复制代码
可见 GPU 推理速率是 CPU 的 10+ 倍!
接入 OneAPI 是方便集成了,但速率会受影响么?
显然的。。。内网穿透,数据都颠末海底隧道走了两圈了,能不慢么?来看看吧:
  1. Ollama 接入 OneAPI -- localhost调用:
  2. 第1次调用:3.47秒, token/s:105.99
  3. 第2次调用:3.44秒, token/s:118.40
  4. 第3次调用:3.14秒, token/s:109.80
  5. 第4次调用:2.33秒, token/s:107.97
  6. 第5次调用:2.98秒, token/s:106.32
  7. ---
  8. Ollama 接入 OneAPI -- 域名调用:
  9. 第1次调用:23.06秒, token/s:11.54
  10. 第2次调用:3.56秒, token/s:101.78
  11. 第3次调用:3.67秒, token/s:99.89
  12. 第4次调用:4.01秒, token/s:94.40
  13. 第5次调用:3.60秒, token/s:99.56
复制代码
3. vLLM 部署实测

vLLM 只支持从 huggingface/modelscope 等平台下载的模型文件。
考虑到各人访问外网受限,ModelScope 提供了和 huggingface 类似的丝滑体验,我们就从 ModelScope 拉模型。
3.1 Qwen2.5 下载

前往:https://modelscope.cn/models/qwen/Qwen2.5-7B-Instruct
ModelScope 上下载模型有两种方式:
方式一:git lfs
  1. git lfs install
  2. git clone https://www.modelscope.cn/qwen/Qwen2.5-7B-Instruct.git
复制代码
方式二:modelscope 命令
  1. # 先安装ModelScope
  2. pip install modelscope
  3. # 下载完整模型
  4. modelscope download --model qwen/Qwen2.5-7B-Instruct
  5. # 如果只需下载单个文件
  6. modelscope download --model qwen/Qwen2.5-7B-Instruct README.md
复制代码
两种方式有什么区别?亲测速率没啥区别,方式二的上风是,可以及时显示下载进度,所以更保举各人用方式二。
不过,这下载速率,相比 Ollma,简直不能忍

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表