1. 为什么是 Atlas 910B 和 vLLM 的“天作之合”?
如果你正在为如何让 Qwen-72B 这样的“庞然大物”在国产硬件上跑得又快又稳而头疼,那今天这篇实战分享就是为你准备的。我最近刚在 Atlas 910B 集群上,用 vLLM 完整部署并优化了 Qwen-72B 的推理服务,整个过程踩过一些坑,也收获了不少惊喜。实测下来,这套组合拳的效率和易用性远超我最初的预期,完全可以作为生产环境部署的参考模板。
先说说为什么是它们俩。Atlas 910B 作为昇腾 AI 处理器的旗舰,其高算力密度和高速片间互联(HCCS)的特性,天生就是为千亿参数大模型准备的。但光有强大的“肌肉”还不够,还需要一个聪明的“神经系统”来高效调度。这就是 vLLM 登场的原因。vLLM 的核心黑科技是 PagedAttention,你可以把它理解为一个极其高效的“内存管家”。传统的大模型推理,就像是你去图书馆找书,每次都要把整本书(整个模型的激活状态)都搬到桌子上,非常耗时耗力。而 PagedAttention 则像是一个智能图书管理员,它把书拆分成固定大小的“页”,你只需要哪一页,它就精准地给你哪一页,大大减少了无效的数据搬运。这个机制在 Atlas 910B 的 NPU 架构上得到了非常好的适配,昇腾团队已经官方提供了 vllm_npu 插件,这意味着我们几乎不需要做任何底层的算子开发工作,就能直接享受到 vLLM 带来的吞吐量红利。
我实测的数据是,在 8 卡 Atlas 910B 上,Qwen-72B 模型(INT8量化后)的推理吞吐可以轻松突破 3000 tokens/秒。这是什么概念?相当于一秒钟能处理超过 1500 个汉字,对于大多数问答、摘要生成场景,这个速度已经能做到近乎实时的交互体验了。更让我觉得省心的是它的易集成性。vLLM 的服务端完全兼容 OpenAI 的 API 格式。这意味着,你之前为 ChatGPT 或 GPT-4 写的业务代码,几乎不用做任何修改,只需要把请求的 API 地址指向我们自己部署的服务,就能无缝切换。这对于技术团队来说,迁移成本几乎为零,可以快速将原型验证推进到生产部署阶段。
2. 环境准备:打好地基,事半功倍
工欲善其事,必先利其器。在开始激动人心的部署之前,我们需要把基础环境搭建得扎实可靠。这一步看似繁琐,但按照清晰的清单来操作,其实非常快。我强烈建议你严格按照以下版本和步骤来,可以避开很多因版本不匹配导致的“玄学”问题。
我这次实战的硬件平台是 Atlas 800I A2 推理服务器,里面搭载了 8 张 Atlas 910B AI 处理器。操作系统我选择了 openEuler 24.03 LTS,这是一个非常稳定且对昇腾生态支持友好的发行版。软件栈的核心是 CANN(昇腾计算架构),我使用的是 7.0.RC3 版本,它包含了驱动、固件和运行所需的所有基础库。
下面这个表格是我最终稳定运行的环境清单,你可以对照检查:
| 组件 | 版本/说明 |
|---|---|
| 硬件 | Atlas 800I A2(8×910B) |
| 操作系统 | openEuler 24.03 LTS |
| CANN | 7.0.RC3 |
| Python | 3.10.2 |
| PyTorch | 2.1.0 + torch_npu 2.1.0 |
| vLLM |


2431

被折叠的 条评论
为什么被折叠?



