正在打开工具详情…
正在打开工具详情…
高吞吐的大模型推理与服务引擎:PagedAttention 管显存、连续批处理提吞吐、量化覆盖广,自带 OpenAI 兼容接口。适合要并发服务的生产部署;个人只想本地聊天的话它太重。
要在 GPU 服务器上给多个用户或高并发请求提供模型服务,并且需要榨干单卡吞吐的工程团队。
个人想在本机跑个模型聊天的用户——太重,用 Ollama 更合适;也不适合 Windows 环境,它不在支持列表里,需要走 WSL 或远程 Linux 机器。
vLLM 解决的是「把模型服务好」而不是「把模型跑起来」。核心是 PagedAttention——像操作系统分页管理内存那样管理 attention 的 K/V 缓存,把显存碎片压下去,配合连续批处理、chunked prefill、前缀缓存,把吞吐拉满。它出自 UC Berkeley 的 Sky Computing Lab,现在是一个两千多名贡献者的社区项目。
工程特性很全:CUDA/HIP graph 加速、量化覆盖 FP8 / MXFP8 / MXFP4 / NVFP4 / INT8 / INT4 / GPTQ / AWQ / GGUF / compressed-tensors / ModelOpt / TorchAO、注意力内核有 FlashAttention / FlashInfer / TRTLLM-GEN / FlashMLA / Triton、投机解码支持 n-gram / suffix / EAGLE / DFlash,还有 prefill 与 decode 分离部署。对外是 OpenAI 兼容 API,另有 Anthropic Messages API 和 gRPC。
硬件上主线支持 NVIDIA / AMD / Intel GPU 和 x86 / ARM / PowerPC CPU,Google TPU、Intel Gaudi、IBM Spyre、华为昇腾、Apple Silicon 等属于插件支持。200+ 种 Hugging Face 架构可用(含 MoE、混合注意力与状态空间模型、多模态、嵌入与重排模型)。
代价要说清楚:这是为 GPU 服务器设计的生产组件。装它要 uv pip install vllm 加 vllm download-kernels(拉预编译内核加快启动),跑起来要调显存占用、并行策略、量化方案,运维复杂度远高于本地聊天工具。Windows 不在它的支持列表里,个人想在本机跑模型请用 Ollama 一类工具。
上手步骤之外的具体做法:常见场景怎么配、命令怎么写、报错怎么处理。
按第一次部署会卡在哪讲:安装为什么有第二步、它快在哪里、量化与并行怎么选、以及什么情况下你不该上它。
bashuv pip install vllm
vllm download-kernels # 预编译内核,为了启动更快第二步很容易被跳过。不做也能跑,但每次启动要现场编译内核,冷启动时间会明显变长。
要改内核或做开发,走官方的 build-wheel-from-source,别在 pip 装出来的包上直接改文件。
三层原因,理解了这个才知道该调什么:
还有投机解码(n-gram / suffix / EAGLE / DFlash)和 prefill / decode / encode 分离部署,用来进一步压延迟。
选项很多:FP8、MXFP8/MXFP4、NVFP4、INT8、INT4、GPTQ、AWQ、GGUF、compressed-tensors、ModelOpt、TorchAO。
判断顺序是:先看你的卡支持哪种精度(NVFP4 这类要新架构),再看你的质量容忍度,最后才是吞吐。不要一上来就压到 INT4——省下来的显存往往抵不过掉的质量。
支持张量、流水线、数据、专家、上下文五种并行。粗粒度规则:
延迟敏感的场景再考虑 prefill 与 decode 分离,以及投机解码。
起来就是 OpenAI 兼容 API,另有 Anthropic Messages API 和 gRPC。
实用含义:现有按 OpenAI SDK 写的代码,改一下 base_url 就能接进来,业务代码不用动。这是它比自研服务层省事的地方。
多 LoRA 也支持(dense 与 MoE 层都有),一个底座服务多个微调版本时很划算。
主线支持:
插件支持(别按主线步骤装):Google TPU、Intel Gaudi、IBM Spyre、华为昇腾、Rebellions NPU、Apple Silicon、MetaX GPU 等。
Windows 不在支持列表里。 需要在 Windows 上开发就走 WSL 或远程 Linux 机器。
vLLM 是生产组件,不是本地玩具。以下情况都不划算:
它的收益只在「有很多并发请求、想榨干一张或多张卡」时才兑现。