flashinfer

免写 CUDA,给 LLM 推理服务直接加速的算子库

FlashInfer 是一个面向大语言模型推理服务的高性能 GPU 内核库,用 CUDA 和 PyTorch 实现,专注解决 LLM 部署中注意力计算、MoE 路由、分布式推理等环节的算子效率问题。它把预填充、解码、分页 KV 缓存、投机采样等常见推理模式封装成可 JIT 编译的内核,开发者无需手写 CUDA 即可在服务中调用。核心能力包括:针对不同 batch 和序列长度自动选择最优注意力内核、支持分页与连续批处理、覆盖 MoE 与多 GPU 通信场景,并能与 PyTorch 生态无缝衔接。相比通用算子库,它更贴近推理服务的真实负载,能显著降低延迟并提升吞吐,适合自建推理引擎或优化现有服务框架的团队使用。

开源 freemium 基础设施
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 6443
维护状态 活跃
是否开源
定价模式 freemium

项目数据

分类基础设施
开发团队flashinfer-ai
所属国家
定价模式freemium
价格说明开源内核库免费,官网提供云端服务入口,具体定价待确认
访问状态
是否开源
开源协议Apache-2.0
主要语言Cuda
技术栈/模型attention,cuda,distributed-inference,gpu,jit,large-large-models,llm-inference,moe,nvidia,pytorch
GitHub 星标★ 6443
30天Star增速
HF 下载量
上线时间2023-07-22 00:00:00
最近更新2026-09-18 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-16
浏览次数0

使用教程

难度:进阶 约 10 分钟 部署方式:库/依赖 7 步

环境要求

  • Python 环境与 pip(可执行 python -m pip)
  • NVIDIA GPU,架构 SM75(Turing)及以后(含 Blackwell)
  • 已安装 PyTorch(README 示例中 import torch)
  • 源码安装需 setuptools>=77

安装与启动步骤

  1. 1安装核心包

    安装 flashinfer-python,首次使用时会在本地编译或下载所需内核。

    pip install flashinfer-python
  2. 2安装预编译内核

    可选。安装 cubin 与 jit-cache wheel 以加快初始化并支持离线使用,需先装核心包。

    pip install flashinfer-python
    flashinfer install-cubin-wheel
    flashinfer install-jit-cache-wheel
  3. 3启用 Blackwell 内核

    可选。在 Blackwell(SM100+)上使用 CuTe DSL 内核时,安装带 CUDA 13 extra 的包。

    pip install flashinfer-python[cu13]
  4. 4验证安装

    运行命令行工具查看配置,确认包已正确安装并识别当前硬件配置。

    flashinfer show-config
  5. 5源码安装

    从 GitHub 递归克隆仓库后在仓库根目录安装;--recursive 用于拉取子模块。

    git clone https://github.com/flashinfer-ai/flashinfer.git --recursive
    cd flashinfer
    python -m pip install -v .
  6. 6开发模式安装

    开发场景使用可编辑安装;该方式不自动装构建依赖,需自行准备构建环境。

    python -m pip install --no-build-isolation -e . -v
  7. 7修复构建依赖

    若报 setuptools.build_meta 缺少属性的错误,先升级 pip 与 setuptools 再重试安装。

    python -m pip install --upgrade pip setuptools

如何确认成功

执行 flashinfer show-config 能正常输出当前配置信息,即表示安装成功。

常见问题

Q:首次使用很慢或想离线部署怎么办?

A:核心包 flashinfer-python 会在首次使用时编译或下载内核;可额外安装 flashinfer-cubin 与 flashinfer-jit-cache 相关 wheel 预编译大部分内核,加快初始化并支持离线使用。

Q:Blackwell(SM100+)如何获得优化内核?

A:使用 CUDA 13 extra 安装:pip install flashinfer-python[cu13],以启用 Blackwell 优化的 CuTe DSL 内核。

Q:开发模式安装报 setuptools.build_meta 缺少属性怎么办?

A:使用 --no-build-isolation 时 pip 不会自动装构建依赖,FlashInfer 需要 setuptools>=77;先执行 python -m pip install --upgrade pip setuptools 再重试。

Q:支持哪些 GPU 架构?

A:README 说明支持 SM75(Turing)及之后架构,直至 Blackwell。

注意事项

  • pip install flashinfer-python 安装的是会在首次使用时编译/下载内核的核心包,不是全部预编译内核。
  • 源码安装必须加 --recursive 以拉取子模块。
  • --no-build-isolation 模式下需自行保证构建依赖(setuptools>=77)。
  • 官方文档、发布页与 Slack/Discussion 渠道见 README 顶部链接。

核心亮点

  • 覆盖预填充、解码、分页 KV 缓存、投机采样等真实推理模式,开箱即用
  • JIT 编译按输入形状生成内核,避免手写 CUDA 并减少无效计算
  • 与 PyTorch 集成,可嵌入现有推理框架,支持 MoE 和分布式场景

不足之处

  • 强依赖 NVIDIA GPU 与较新 CUDA 环境,非 N 卡或旧驱动难以使用
  • JIT 首次编译有开销,冷启动场景需要额外预热策略

适用场景

  • 自建 LLM 推理引擎,替换低效注意力实现以降低延迟
  • 优化已有服务框架的批处理与 KV 缓存管理,提升吞吐
  • 在多 GPU 或 MoE 模型部署中加速通信与路由计算

替代项目

vLLM、TensorRT-LLM

项目介绍

flashinfer 是一个基础设施领域的开源项目,官方简介:FlashInfer: Kernel Library for LLM Serving。项目使用 Cuda 开发,在 GitHub 上获得 6416 星标。

上一篇:llm-d-router

下一篇:MinivLLM

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

OpenAI-compatible gateway for FreeBuff coding models. Token pool, session lifecycle,···

★ 202 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8576 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 435 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181269 2026-08-09