ai-dynamo/dynamo

A Datacenter Scale Distributed Inference Serving Framework

Dynamo – 数据中心规模的推理编排栈

它是什么 – Dynamo 是一个开源平台,位于现有 LLM 推理引擎(vLLM、SGLang、TensorRT-LLM 等)之上,将一组 GPU 或整个节点转变为协调的多节点服务系统。它不会取代底层引擎;而是增加编排、路由、缓存和自动扩展,以便大规模地以低延迟服务大型语言模型工作负载。

主要功能

功能 作用 重要性
分离式 prefill / decode Prefill(提示处理)和 decode(token 生成)在可独立扩展的独立 GPU 池上运行。 保持 GPU 忙碌 – prefill 是计算密集型,decode 是内存密集型 – 因此整体吞吐量提高。
KV 感知路由 根据请求的键值(KV)缓存与工作节点现有缓存的重叠程度来路由请求。 避免重复相同的 prefill 工作,将首次 token 延迟(TTFT)缩短约一半。
KV 块管理器(KVBM) 将 KV 缓存从 GPU 卸载到 CPU、SSD 或远程存储,将有效上下文长度扩展到 GPU 内存之外。
ModelExpress 通过 NVLink/NIXL 直接在 GPU 之间流式传输模型权重。 启动新副本时,冷启动速度最高可提升 7 倍。
规划器(SLA 驱动的自动扩展器) 分析工作负载、预测延迟,并自动调整 prefill 和 decode 池的大小,以最低成本满足延迟服务等级协议(SLA)。
Grove K8s 运算符 为 NVIDIA-NVL72 机架提供拓扑感知的 gang 调度。
AISimulate 离线模拟器,可在分配任何 GPU 之前预测服务行为并搜索最佳部署配置。
容错 Canary 健康检查和进行中请求迁移可在工作节点故障时保持请求存活。

支持的后端 – Dynamo 可与 SGLang、TensorRT-LLM 和 vLLM 搭配使用(在功能矩阵中均标记为 ✅)。它也支持多模态模型、工具调用和视频生成管道。

如何使用

  1. 容器快速入门 – 为所需的后端拉取预构建的 Docker 镜像,运行 Dynamo 前端和工作节点,然后调用 OpenAI 兼容的 /v1/chat/completions 端点。
  2. Python 安装 – 安装 ai-dynamo 包(通过 uv 或 pip),并为您的后端添加额外功能,然后从命令行启动相同的组件。
  3. Kubernetes 生产环境 – 部署 Dynamo Platform,并提交一个指定模型、后端和延迟 SLA 的 DynamoGraphDeploymentRequest 清单。Dynamo 的规划器、AISimulate 和 Grove 会自动配置正确数量的 GPU Pod 并配置路由。

README 中的性能亮点

  • 在 DeepSeek-R1(GB200 NVL72)上,每个 GPU 的吞吐量比没有 Dynamo 的基准高出 7 倍。
  • 使用 ModelExpress 权重流式传输,模型冷启动速度提升 7 倍。
  • 得益于 KV 感知路由,Qwen3-Coder 480B 的 TTFT 提升 2 倍。
  • 通过规划器驱动的自动扩展,SLA 违规减少 80%。
  • 在更大的 GB300 系统上,DeepSeek-R1 的吞吐量提升高达 750 倍。

社区与生态系统 – Dynamo 由 NVIDIA 支持,拥有公开的 Slack、定期办公时间、设计提案流程,以及超过 160 位贡献者。它与 LangChain、NVIDIA NeMo Agent Toolkit 集成,并为热门模型(Qwen、DeepSeek、Kimi 等)提供配方。

何时使用 Dynamo – 如果您需要在多个 GPU 或节点上服务大型模型、希望避免冗余的 prefill 工作、需要自动扩展以满足延迟 SLA,或希望将上下文长度扩展到 GPU 内存之外,Dynamo 提供了实现这些目标的编排层。对于单一 GPU、单一模型的部署,单纯的推理引擎通常就足够了。


TL;DR – Dynamo 是一个开源、基于 Rust 的编排框架,可将现有的 LLM 推理引擎转变为可扩展、低延迟、多节点的服务系统,具备智能路由、KV 缓存、自动扩展和 Kubernetes 集成。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目