DeepSpeed-MII翻译站点

3周前发布 15 0 0

微软DeepSpeed团队开源,Blocked KV Cache+Dynamic SplitFuse高吞吐推理库。

所在地:
美国
语言:
英文
收录时间:
2026-08-21
DeepSpeed-MIIDeepSpeed-MII

DeepSpeed-MII是微软DeepSpeed团队开源的低延迟高吞吐推理库,Apache-2.0许可。核心技术包括Blocked KV Caching、Continuous Batching、Dynamic SplitFuse、张量并行与高性能CUDA kernels,宣称有效吞吐最高达vLLM的2.5倍,支持Llama/Mistral/Mixtral/Qwen等8大架构超2万模型,提供持久化部署与RESTful API。

 

项目概述

DeepSpeed-MII(Model Implementations for Inference)由微软DeepSpeed团队于2022年首次发布,是DeepSpeed生态中专司推理加速的Python库 。其设计目标是”让强大的模型推理民主化”,聚焦于高吞吐、低延迟、高成本效益 。

 

核心架构

MII底层由DeepSpeed-Inference驱动,根据模型架构、模型大小、批大小与可用硬件资源,自动应用适当的系统优化组合以最小化延迟、最大化吞吐 。v0.2版本引入了DeepSpeed-FastGen优化,使有效吞吐最高达到vLLM等领先系统的2.5倍​ 。

 

四项关键技术(DeepSpeed-FastGen核心) :

  • Blocked KV Caching:分块KV缓存管理
  • Continuous Batching:连续批处理
  • Dynamic SplitFuse:动态拆分与融合,将提示的不同部分与生成token组合成最优批次
  • High Performance CUDA Kernels:高性能CUDA内核

 

模型支持

MII当前支持8大主流架构超2万模型​ :

模型家族 参数范围 模型数量
Llama 7B-65B 19,000
Llama-2 7B-70B 900
Mistral 7B 6,000
Mixtral (MoE) 8x7B 1,100
Falcon 7B-180B 300
Qwen 7B-72B 200
Phi-2 2.7B 200
OPT 0.1B-66B 1,300

Legacy API还支持BERT、RoBERTa、Stable Diffusion、BLOOM、GPT-J等超5万模型 。

 

双部署模式​ :

  • 非持久化流水线mii.pipeline()):适用于脚本内的快速实验,流水线随Python脚本生命周期存在
  • 持久化部署mii.serve()):生产环境使用,启动常驻gRPC服务,多客户端并发访问

 

RESTful API

通过设置enable_restful_api=True,MII可启动RESTful API网关进程,接收HTTP请求 :

POST http://{HOST}:{PORT}/mii/{DEPLOYMENT_NAME}

 

许可策略:Apache-2.0许可 (注:部分第三方镜像站点标注MIT,以官方GitHub仓库LICENSE文件为准)。

💡 DeepSpeed-MII的独特定位:它是DeepSpeed生态的推理加速库,而非独立的通用推理服务器。与vLLM、SGLang、LMDeploy、TensorRT-LLM等”独立推理引擎”形成差异化:MII是DeepSpeed训练框架的自然延伸,让已在用DeepSpeed做训练的团队可以无缝切换到DeepSpeed-MII做推理,技术栈保持一致。其Dynamic SplitFuse技术在MII内部被称为”ragged batching”(不规则批处理),是相对于vLLM continuous batching的差异化创新 。MII严格属于”推理引擎”子分类——它实际执行模型推理计算(非纯API封装),但通过enable_restful_api=True也提供RESTful接口能力,这与Ollama的定位类似(推理运行时+API服务)。需要注意的是,MII的RESTful API是”部分兼容”,并非完整OpenAI API兼容。

 

核心能力

  • Blocked KV Caching:分块KV缓存,高效显存管理
  • Continuous Batching:连续批处理,动态请求批处理
  • Dynamic SplitFuse:动态拆分与融合,MII独有的ragged batching技术
  • 高性能CUDA Kernels:DeepSpeed-Kernels库提供预编译wheel,避免冗长编译
  • 张量并行tensor_parallel参数控制模型跨多GPU切分
  • 模型副本与负载均衡replica_num参数启动多副本,gRPC拦截器轮询分发请求
  • gRPC通信:客户端与服务端高性能双向流式通信
  • RESTful API网关enable_restful_api=True启动HTTP接口
  • 持久化部署mii.serve()常驻服务,mii.client()多进程连接
  • 非持久化流水线mii.pipeline()脚本内快速实验
  • 8大架构2万+模型:Llama/Llama-2/Mistral/Mixtral/Falcon/Qwen/Phi-2/OPT全覆盖
  • HuggingFace无缝集成:模型权重与tokenizer通过HF生态加载
  • DeepSpeed-Inference底层:自动根据模型架构/大小/硬件选择最优优化组合
  • MoE模型支持:Mixtral 8x7B等MoE架构
  • 文本生成与文本到图像:LLM推理 + Stable Diffusion加速
  • ZeRO-Inference:资源受限系统的推理优化

 

优势亮点

  • 2.5倍有效吞吐:v0.2起DeepSpeed-FastGen优化,宣称有效吞吐最高达vLLM的2.5倍
  • Apache-2.0许可:商用友好(以官方仓库LICENSE为准)
  • Dynamic SplitFuse独家:不规则批处理技术,是MII相对vLLM continuous batching的差异化创新
  • DeepSpeed生态无缝衔接:训练用DeepSpeed、推理用MII,技术栈统一
  • 微软官方维护:DeepSpeed团队持续开发,企业级可持续性
  • 预编译wheel:通过deepspeed-kernels库分发预编译CUDA kernel,避免冗长编译
  • 双部署模式灵活:实验用pipeline、生产用serve,覆盖全生命周期
  • gRPC+RESTful双协议:内部gRPC高性能通信,外部RESTful HTTP接入
  • 模型覆盖广:8大架构2万+模型,LLaMA-2-70B、Mixtral 8x7B、Phi-2等均支持
  • 负载均衡内置:多副本场景下round-robin自动分发

 

局限

  • NVIDIA GPU强绑定:要求compute capability 8.0+(Ampere+)、CUDA 11.6+,其他硬件适配有限
  • 项目活跃度下降:第三方监测显示近4周无commit、1年+低活跃 ,生产采用需评估长期维护性
  • RESTful API非完整OpenAI兼容:MII的RESTful接口是自有格式,不像vLLM/SGLang提供完整OpenAI API兼容
  • 模型广度不及vLLM:vLLM支持200+ HuggingFace架构且新模型Day-1适配,MII仅支持8大架构(虽模型数量达2万+)
  • 生产规模验证不及vLLM/SGLang:vLLM全球百万GPU部署,MII的生产规模案例相对较少
  • Dynamic SplitFuse优势场景有限:2.5倍吞吐提升是针对特定场景(有效吞吐),通用场景可能与vLLM/SGLang相当
  • 文档与示例相对有限:相比vLLM/SGLang的丰富文档,MII的使用示例较为精简
  • DeepSpeed依赖:需安装完整DeepSpeed栈,依赖较重

 

适用人群

  • DeepSpeed训练生态用户:已在用DeepSpeed做训练,推理阶段自然延伸使用MII
  • 微软Azure云用户:与Azure ML深度集成,云端部署首选
  • NVIDIA Ampere+ GPU集群:A100/H100/B200等硬件环境
  • 高吞吐生产部署:需要2.5倍有效吞吐提升的固定模型场景
  • MoE模型推理:Mixtral 8x7B等MoE架构的一站式服务
  • gRPC内部服务:企业内部高性能gRPC通信场景
  • 需要RESTful接口的传统应用:通过enable_restful_api=True快速暴露HTTP接口
  • Stable Diffusion推理加速:文本到图像模型的推理优化

 

安装与部署

 

1. 环境要求

  • Linux操作系统(推荐Ubuntu 20+)
  • Python 3.10+
  • NVIDIA GPU compute capability 8.0+(Ampere+)
  • CUDA 11.6+
  • PyTorch 2.x

 

2. 安装

# pip安装(含deepspeed-kernels预编译wheel)
pip install deepspeed-mii

# 源码安装
git clone https://github.com/deepspeedai/DeepSpeed-MII.git
cd DeepSpeed-MII
pip install -e .

 

3. 非持久化流水线(快速实验)

import mii

# 创建非持久化流水线
pipe = mii.pipeline("mistralai/Mistral-7B-v0.1")

# 生成
result = pipe(["DeepSpeed is", "Seattle is"], max_length=128)
for r in result:
    print(r.generated_text)

 

4. 持久化部署(生产环境)

import mii

# 启动持久化服务,2路张量并行
client = mii.serve(
    "mistralai/Mistral-7B-v0.1",
    tensor_parallel=2,
    replica_num=2,
    deployment_name="mistral-deployment"
)

# 客户端调用
result = client.generate(["DeepSpeed is"], max_length=128)
print(result[0].generated_text)

# 关闭服务
client.terminate_server()

 

5. RESTful API网关

import mii

# 启用RESTful API
client = mii.serve(
    "mistralai/Mistral-7B-v0.1",
    deployment_name="mistral-deployment",
    enable_restful_api=True,
    restful_api_port=28080,
)
# curl调用
curl --header "Content-Type: application/json" \
  --request POST \
  -d '{"prompts": ["DeepSpeed is", "Seattle is"], "max_length": 128}' \
  http://localhost:28080/mii/mistral-deployment
# Python客户端调用RESTful API
import json
import requests

url = "http://localhost:28080/mii/mistral-deployment"
params = {"prompts": ["DeepSpeed is", "Seattle is"], "max_length": 128}
output = requests.post(url, data=json.dumps(params),
                       headers={"Content-Type": "application/json"})
print(output.json())

 

6. 多客户端连接已有部署

import mii

# 连接到已有持久化部署
client = mii.client("mistral-deployment")

# 生成
result = client.generate(["Hello, my name is"], max_length=128)
print(result[0].generated_text)

 

7. 张量并行+多副本组合

# 4张GPU:2路张量并行 × 2副本
client = mii.serve(
    "meta-llama/Llama-2-70B-hf",
    tensor_parallel=2,
    replica_num=2,  # 总计4 GPU
    deployment_name="llama-70b-deployment"
)

 

8. 部署前必检清单

  • 确认仓库位于 github.com/deepspeedai/DeepSpeed-MII(官方)
  • 许可:Apache-2.0(以官方仓库LICENSE文件为准;第三方镜像标注MIT不准确)
  • 最新版本以GitHub Release/PyPI为准,建议跟进最新版本以获得DeepSpeed-FastGen优化
  • NVIDIA GPU强绑定:要求compute capability 8.0+(Ampere+)、CUDA 11.6+
  • 项目活跃度近期偏低(第三方监测显示近4周无commit) ,生产采用需评估长期维护性
  • RESTful API为MII自有格式,非完整OpenAI API兼容——如需OpenAI兼容,建议选择vLLM/SGLang
  • 模型支持8大架构(Llama/Llama-2/Mistral/Mixtral/Falcon/Qwen/Phi-2/OPT),如需要其他架构请用vLLM
  • 严格属于”推理引擎”子分类,实际执行推理计算,非纯API封装
  • 与DeepSpeed训练框架生态无缝衔接,技术栈统一

 

 

相关导航