Zubnet AI学习Wiki › vLLM
工具

vLLM

一个开源LLM服务引擎,通过PagedAttention和连续批处理实现高吞吐量。vLLM处理GPU内存管理、请求调度和KV缓存优化的复杂工程,提供兼容OpenAI的API,使在生产中自托管开源模型(Llama、Mistral、Qwen)变得容易。

为什么重要

vLLM是最流行的开源LLM服务解决方案。如果你在自托管开源模型,你很可能在使用vLLM(或应该使用)。其PagedAttention创新将服务吞吐量比朴素实现提高了2–24倍。它是使开源模型在生产中实用的基础设施层。

深度解析

vLLM(Kwon et al., UC Berkeley, 2023)将PagedAttention引入LLM服务。除PagedAttention外,vLLM实现了:连续批处理(无需等待即可将新请求添加到运行中的批次)、前缀缓存(共享常见提示前缀的KV缓存)、张量并行(将模型分布在多个GPU上)和推测解码(使用草稿模型加速生成)。这些优化可以组合,提供乘法级加速。

使用方式

使用vLLM部署模型很简单:vllm serve meta-llama/Llama-3-70B --tensor-parallel-size 4在4块GPU上启动一个兼容OpenAI的服务器。应用通过更改base URL使用任何OpenAI SDK连接。这种即插即用的兼容性意味着你可以用OpenAI的API原型开发,然后切换到自托管的vLLM而无需更改应用代码——只需更改端点。

vLLM vs. 替代方案

TGI(Hugging Face)提供类似功能,与Hugging Face生态系统集成更紧密。TensorRT-LLM(NVIDIA)使用自定义CUDA内核获得最大单GPU性能,但需要NVIDIA硬件。SGLang(Berkeley)专注于结构化生成和复杂提示模式。对于大多数自托管场景,vLLM因其性能、广泛的模型支持和活跃的社区而成为默认选择。如果专门在NVIDIA硬件上追求最大吞吐量,TensorRT-LLM可能略胜一筹。

相关概念

← 所有术语
← Vision Transformer Voyage AI →