forked from EngineX-MetaX/enginex-c_series-vllm
5.0 KiB
5.0 KiB
metax-c500-vllm
本项目包含了对于原版 vllm 的升级,使其可以在沐曦 C500芯片上支持运行 gpt-oss, qwen3-omni
本项目中提供的 Dockerfile 中的主要内容为:
- 将
vllm目录覆盖到镜像中的/opt/conda/lib/python3.10/site-packages/vllm。运行gpt-oss时需指定VLLM_ATTENTION_BACKEND=TRITON_ATTN_VLLM_V1 - 将
code_generator.py覆盖到镜像中的/opt/conda/lib/python3.10/site-packages/triton/compiler/code_generator.py
镜像成功编译以后,可以参照标准 vllm 使用方式。
模型适配情况
在相同模型和输入条件下,测试平均输出速度(单位:字每秒): 我们采用相同的prompt对模型的chat/completion接口测试多轮对话,测试数据如下:
[
{
"user_questions": [
"能给我介绍一下新加坡吗",
"主要的购物区域是集中在哪里",
"有哪些比较著名的美食,一般推荐去哪里品尝",
"辣椒螃蟹的调料里面主要是什么原料"
],
"system_prompt": "[角色设定]\n你是湾湾小何,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"、\"哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n[核心特征]\n- 讲话像连珠炮,>但会突然冒出超温柔语气\n- 用梗密度高\n- 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n[交互指南]\n当用户:\n- 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n- 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n- 问专业知识 → 先用梗回答,被追问才展示真实理解\n绝不:\n- 长篇大论,叽叽歪歪\n- 长时间严肃对话"
},
{
"user_questions": [
"朱元璋建立明朝是在什么时候",
"他是如何从一无所有到奠基明朝的,给我讲讲其中的几个关键事件",
"为什么杀了胡惟庸,当时是什么罪名,还牵连到了哪些人",
"有善终的开国功臣吗"
],
"system_prompt": "[角色设定]\n你是湾湾小何,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"、\"哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n[核心特征]\n- 讲话像连珠炮,>但会突然冒出超温柔语气\n- 用梗密度高\n- 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n[交互指南]\n当用户:\n- 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n- 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n- 问专业知识 → 先用梗回答,被追问才展示真实理解\n绝不:\n- 长篇大论,叽叽歪歪\n- 长时间严肃对话"
},
{
"user_questions": [
"今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?",
"如果我要搞一个计算机程序去解,并且鸡和兔子的数量要求作为变量传入,我应该怎么编写这个程序呢",
"那古代人还没有发明方程的时候,他们是怎么解的呢"
],
"system_prompt": "You are a helpful assistant."
},
{
"user_questions": [
"你知道黄健翔著名的”伟大的意大利左后卫“的事件吗",
"我在校运会足球赛场最后压哨一分钟进了一个绝杀,而且是倒挂金钩,你能否帮我模仿他的这个风格,给我一段宣传的文案,要求也和某一个世界级著名前锋进行类比,需要激情澎湃。注意,我并不太喜欢梅西。"
],
"system_prompt": "You are a helpful assistant."
}
]
模型测试结果
| 模型名称 | A100出字速度(字/秒) | 沐曦卡出字速度(字/秒) | 备注 |
|---|---|---|---|
| unsloth/gpt-oss-20b-BF16 | 80.1 | 52.9 | |
| Qwen/Qwen3-4B | 171.8 | 112.3 | |
| Qwen/Qwen1.5-0.5B-Chat-GPTQ-Int8 | 168.5 | 135.3 | |
| Qwen/Qwen-1_8B-Chat-Int4 | 536.4 | 192.9 | |
| Qwen/Qwen1.5-1.8B-Chat-GPTQ-Int4 | 153.1 | 132.4 | |
| deepseek-ai/deepseek-moe-16b-chat | 68.1 | 60.7 | |
| Qwen/Qwen2-7B-Instruct-GPTQ-Int4 | 129.2 | 127.5 | |
| Qwen2.5-7B-Instruct-GPTQ-Int4 | 118.1 | 133.1 | |
| tclf90/glm-4-9b-chat-GPTQ-Int4 | 92.2 | 97.7 | |
| Qwen/Qwen2.5-14B-Instruct-GPTQ-Int4 | 79.6 | 72.3 | |
| Qwen/Qwen-14B-Chat-Int8 | 103.1 | 56.4 | 该模型在沐曦卡上生成质量要差于A100 |
| Qwen/Qwen2.5-14B-Instruct-GPTQ-Int8 | 81.4 | 70.4 | |
| tclf90/qwq-32b-gptq-int4 | 60.3 | 53.5 | |
| Qwen/Qwen2.5-32B-Instruct-GPTQ-Int4 | 60.1 | 54.6 | |
| Qwen/Qwen1.5-32B-Chat-GPTQ-Int4 | 58.2 | 51.3 | |
| tclf90/Qwen3-32B-GPTQ-Int8 | 54.0 | 41.3 | |
| tclf90/deepseek-r1-distill-qwen-32b-gptq-int8 | 59.9 | 45.8 | |
| Qwen/Qwen2.5-72B-Instruct-GPTQ-Int4 | 46.6 | 29.5 | |
| Qwen/Qwen2-72B-Instruct-GPTQ-Int4 | 48.2 | 29.7 | |
| Qwen/Qwen3-4B-Instruct-2507 | 65.4 | 71.8 | |
| Qwen/Qwen3-4B-Thinking-2507 | 73.4 | 52.6 | |
| tclf90/Qwen3-32B-GPTQ-Int4 | 54.4 | 38.4 | |
| Qwen/Qwen3-0.6B-GPTQ-Int8 | 117.4 | 95.0 |