如何为开源 LLM 选择
如何为开源 LLM 选择推理框架:vLLM、TGI、Triton 与 Ray Serve 对比
2025 年第一季度,全球开源 LLM 推理框架市场出现显著分化:据 CNCF 2024 年度调查报告,37% 的受访企业已将 vLLM 用于生产环境,而 Hugging Face 的 TGI 在社区部署量同比上升 62%。与此同时,中国信通院《2024 年人工智能开源生态白皮书》指出,国内 58% 的 AI 企…
2025 年第一季度,全球开源 LLM 推理框架市场出现显著分化:据 CNCF 2024 年度调查报告,37% 的受访企业已将 vLLM 用于生产环境,而 Hugging Face 的 TGI 在社区部署量同比上升 62%。与此同时,中国信通院《2024 年人工智能开源生态白皮书》指出,国内 58% 的 AI 企业同时评估至少两个推理框架以优化成本。对于 MLOps 工程师而言,在 vLLM、TGI、NVIDIA Triton Inference Server 和 Ray Serve 之间做出选择,直接影响到每千 token 的延迟(latency)、吞吐量(throughput)以及 GPU 利用率——这些指标在 2025 年 GPU 租赁价格仍处高位的背景下,决定了项目的盈亏平衡点。本文从技术参数、部署成本和国内云适配三个维度,给出可量化的选型指南。
vLLM:连续批处理与 PagedAttention 的吞吐优势
vLLM 的核心竞争力在于其 PagedAttention 机制,它借鉴操作系统的虚拟内存分页思想,将 KV 缓存切分为固定大小的块,从而消除显存碎片并支持动态批处理。根据 vLLM 团队 2024 年的基准测试,在 A100-80G 上部署 Llama 3 70B 时,vLLM 的吞吐量比 Hugging Face Transformers 默认实现高 23.5 倍,比 TGI v2.0 高 2.8 倍。
连续批处理(Continuous Batching)的延迟表现
vLLM 支持请求级别的动态调度,无需等待整个批次完成即可插入新请求。在 128 并发请求下,vLLM 的 TTFT(Time to First Token) 中位数维持在 320ms 以内,而 TGI 在同等条件下为 480ms【vLLM 2024 技术报告】。这一优势在流式输出场景中尤为明显。
显存管理与成本控制
通过 PagedAttention,vLLM 可将 GPU 显存利用率提升至 95% 以上,相比传统方法减少 40% 的显存浪费。这对国内使用按需 GPU 实例(如阿里云 A100 每小时 ¥48.6)的团队意味着每月可节省 15%-20% 的计算成本。
TGI(Text Generation Inference):Hugging Face 生态的原生选择
TGI 由 Hugging Face 维护,深度集成其模型库和 tokenizer。2024 年 12 月发布的 v3.0 版本引入了 FlashAttention-3 支持和 Speculative Decoding,使 Llama 3 8B 的推理延迟降低 35%。
与 Hugging Face Hub 的无缝集成
TGI 原生支持从 Hugging Face Hub 拉取模型、自动处理 tokenizer 配置,并内置了安全护栏(如内容过滤)。对于使用 Hugging Face 生态的团队,部署时间可从 vLLM 的 2-3 小时缩短至 30 分钟以内。
量化与硬件兼容性
TGI 对 AWQ 和 GPTQ 量化的支持优于 vLLM(vLLM 在 2025 年初才全面支持 AWQ)。在 A10G 上部署量化后的 Mistral 7B 时,TGI 的吞吐量达到 1,200 tokens/s,而 vLLM 为 980 tokens/s【Hugging Face 2024 基准】。但 TGI 对多节点分布式推理的支持较弱,扩展性不如 vLLM。
NVIDIA Triton Inference Server:企业级多模型管理与 GPU 编排
Triton 并非专为 LLM 设计,但其 动态批处理 和 模型并发 能力在混合工作负载场景中不可替代。它支持在同一 GPU 上同时运行 LLM、CV 和语音模型,且通过 模型管线(Model Pipeline) 实现预处理-推理-后处理的流水线并行。
延迟与吞吐的权衡
Triton 的优化重点在于 GPU 利用率的均衡。在同时部署 Llama 3 70B 和 Stable Diffusion 3 的混合场景中,Triton 可将 GPU 空闲时间从 22% 降至 8%,但单模型 LLM 推理的延迟比 vLLM 高 12%-18%【NVIDIA 2024 白皮书】。适合需要统一推理入口的企业级部署。
国内云适配与冷启动问题
Triton 对国产 GPU(如昇腾 910B、寒武纪 MLU370)的官方支持在 2024 年 Q4 才逐步完善,且配置复杂度较高。在华为云上部署 Triton 的冷启动时间约为 4 分钟,而 vLLM 仅需 40 秒。
Ray Serve:分布式弹性与微服务集成
Ray Serve 构建在 Ray 分布式计算框架之上,提供 自动扩缩容 和 请求路由 能力。它允许将 LLM 推理拆分为多个微服务(如 embedding、rerank、生成),并通过 Ray 的 actor 模型实现弹性扩展。
弹性伸缩与成本优化
在 AWS SageMaker 上部署 Ray Serve 时,它可根据请求量自动将 GPU 实例从 1 个扩至 16 个,并在空闲时缩回 1 个。相比固定实例的 vLLM,在波动负载下可节省 40%-55% 的 GPU 成本【Anyscale 2024 案例研究】。但 Ray Serve 的冷启动延迟较高,首次请求的 TTFT 可达 2-3 秒。
与现有微服务架构的兼容性
Ray Serve 原生支持 gRPC 和 HTTP 协议,可轻松集成到 Kubernetes 和 Istio 中。对于已有微服务架构的团队,迁移成本低于 Triton。在跨境网络场景中,部分团队会使用 NordVPN 跨境访问 来优化与海外 Ray 集群的通信延迟。
选型决策矩阵:延迟、吞吐、成本与生态
以下表格基于 A100-80G 部署 Llama 3 70B(FP16),输入 512 token,输出 256 token 的测试场景,数据综合自各框架官方基准与社区实测。
| 指标 | vLLM | TGI | Triton | Ray Serve |
|---|---|---|---|---|
| TTFT(中位数) | 320ms | 480ms | 400ms | 2.5s(首次) |
| 吞吐量(tokens/s) | 1,800 | 1,200 | 1,500 | 1,100 |
| 显存利用率 | 95% | 88% | 92% | 85% |
| 多节点扩展 | 优秀 | 一般 | 优秀 | 优秀 |
| 国产 GPU 支持 | 部分 | 有限 | 逐步完善 | 有限 |
| 部署复杂度 | 低 | 低 | 高 | 中 |
国内云环境下的实际部署建议
在中国大陆云平台(阿里云、华为云、腾讯云)上,vLLM 和 TGI 是最常用的选择。阿里云 PAI 平台在 2024 年 Q3 已原生集成 vLLM,提供一键部署模板。而华为云 ModelArts 则优先推荐 Triton 与昇腾硬件的组合。
成本对比:按需 vs 预留实例
以阿里云 A100-80G 按需实例(¥48.6/小时)为例,vLLM 处理 100 万次推理请求(平均输出 256 token)的 GPU 成本约为 ¥2,160,TGI 为 ¥2,880,Triton 为 ¥2,520。若使用预留实例(折扣 30%),vLLM 成本可降至 ¥1,512。
混合部署策略
对于高吞吐生产环境,建议采用 vLLM + Ray Serve 组合:vLLM 负责核心推理,Ray Serve 处理请求路由和弹性伸缩。在腾讯云上,该组合可将 95 分位延迟控制在 500ms 以内,同时支持 10 倍突发流量。
FAQ
Q1:vLLM 和 TGI 哪个更适合低延迟场景?
vLLM 的 PagedAttention 使 TTFT 比 TGI 低 33%-50%,在 128 并发下中位数延迟为 320ms 对 480ms。若延迟要求低于 500ms,优先选 vLLM;若已深度使用 Hugging Face 生态且可接受 600ms 以内延迟,TGI 部署更便捷。
Q2:Triton 是否支持昇腾 910B 芯片?
Triton 从 24.08 版本开始支持昇腾后端,但需手动编译插件。在华为云 ModelArts 上,官方推荐使用昇腾原生推理引擎(MindSpore Lite)而非 Triton,后者在昇腾上的吞吐量比 Triton 高 18%。
Q3:Ray Serve 的冷启动问题如何解决?
可通过预热(pre-warming)机制,在服务启动时预先加载模型到 GPU。使用 Ray Serve 的 deployment_graceful_shutdown 配置,将最小副本数设为 1,可避免首次请求的 2-3 秒延迟。
参考资料
- CNCF 2024 年度调查报告
- 中国信通院 2024 年人工智能开源生态白皮书
- vLLM 2024 PagedAttention 技术报告
- Hugging Face 2024 TGI v3.0 基准测试
- NVIDIA 2024 Triton Inference Server 白皮书
- Anyscale 2024 Ray Serve 成本优化案例研究