vLLM介绍

在大模型部署这个领域,其实已经形成了相对清晰的生态分工。之前我们接触过llama.cpp和Ollama,它们各自有明确的定位:
llama.cpp主要面向资源受限的环境,比如个人电脑、边缘设备等。它的优势在于对硬件要求低,能够在CPU上运行大模型,对于个人开发者和小型应用来说非常友好。
Ollama可以理解为LlamaCPP的用户友好版本,提供了更简洁的API和更便捷的模型管理,但本质上还是基于LlamaCPP的核心。
然而,这两个方案都有一个共同的局限性:在大规模并发场景下表现不佳。当面临数百个用户同时访问,或者需要在多GPU环境下发挥最大性能时,它们就显得力不从心了。
VLLM正是为了填补这个空白。它从设计之初就瞄准了多GPU、高并发的应用场景。这不是简单的性能优化,而是架构层面的重新设计。现在流行的所有量化或加速技术,vLLM几乎都由集成,比如:
- 使用 PagedAttention 实现动态kv cache(核心)
- 量化:GPTQ、AWQ、INT4、INT8 和 FP8
- 优化 CUDA 内核,包括与 FlashAttention 和 FlashInfer 的集成
- 最先进的服务吞吐量
vLLM核心优化
kv cache问题
我们之前文章有讲到kv cache的技术原理
但是在kv cache

最低0.47元/天 解锁文章
3354

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



