Repolode
microsoft

microsoft/MInference

一个可通过 pip 安装的库,利用动态稀疏注意力加速长上下文大模型的预填充阶段,精度损失很小。

Star
1,232
Fork
85
未关闭 Issue
99
最近提交
28天前

这是什么?

MInference 是一个用于加速长上下文大模型推理预填充阶段的库。预填充指模型在生成输出前处理整段提示词的过程,当提示词增长到几十万甚至上百万 token 时开销非常大。MInference 在运行时近似计算稀疏注意力模式,并通过定制内核完成计算,在 A100 上可将预填充延迟降低至多约 10 倍,同时保持准确率。

它可以通过少量代码接入 Hugging Face Transformers 和 vLLM,也可以直接调用其稀疏注意力内核,嵌入自定义推理流程。项目还包含 SCBench,一个从 KV 缓存全生命周期评估长上下文方法的基准,以及用于加速长上下文视觉语言模型的 MMInference 扩展。

支持的模型包括 Qwen2.5、LLaMA-3 和 3.1、GLM-4、Yi、Phi-3、Qwen2 等,据项目介绍可用于任意解码类大模型。它还支持 SnapKV、StreamingLLM、Quest 等多种 KV 缓存压缩与检索方法。

核心功能

  • 01动态稀疏注意力,在线近似稀疏索引以加快预填充。
  • 02通过简单的模型补丁接入 Hugging Face Transformers 和 vLLM。
  • 03可直接调用稀疏注意力内核,用于自定义推理代码。
  • 04支持 SnapKV、StreamingLLM、Quest 等多种 KV 缓存方法。
  • 05提供 SCBench 基准,用于评估长上下文方法在 KV 缓存全生命周期中的表现。

适用场景

  • 在单张 GPU 上部署处理数十万 token 长提示词的长上下文大模型。
  • 缩短长文档问答或代码库分析场景下的首 token 等待时间。
  • 研究长上下文模型的稀疏注意力与 KV 缓存方法。

快速上手

  1. 1

    从 PyPI 用 pip 安装库

    pip install minference
  2. 2

    用 MInference 修补 Hugging Face 模型并运行生成

使用前须知

  • 需要 Transformers 4.46.0 或更高版本,并依赖 Torch、Triton 等 GPU 相关环境。
  • 文中的加速效果主要针对长上下文和 A100 GPU,在短提示或其他硬件上收益可能较小。

收录于专题

标签

常见问题

MInference 是什么?
一个可通过 pip 安装的库,利用动态稀疏注意力加速长上下文大模型的预填充阶段,精度损失很小。 MInference 是一个用于加速长上下文大模型推理预填充阶段的库。预填充指模型在生成输出前处理整段提示词的过程,当提示词增长到几十万甚至上百万 token 时开销非常大。MInference 在运行时近似计算稀疏注意力模式,并通过定制内核完成计算,在 A100 上可将预填充延迟降低至多约 10 倍,同时保持准确率。
MInference 可以免费使用吗?用的什么许可证?
MInference 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
MInference 还在维护吗?
活跃维护中。MInference 最近一次提交是在 2026年10月10日。
MInference 适合用来做什么?
在单张 GPU 上部署处理数十万 token 长提示词的长上下文大模型。 缩短长文档问答或代码库分析场景下的首 token 等待时间。 研究长上下文模型的稀疏注意力与 KV 缓存方法。
MInference 怎么安装和运行?
从 PyPI 用 pip 安装库: pip install minference 用 MInference 修补 Hugging Face 模型并运行生成
在哪里获取 MInference?
源代码和安装说明在 GitHub 上:https://github.com/microsoft/MInference

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目