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