eagle-hq/EAGLE-4

Official Inference Code of EAGLE-4

什么是EAGLE‑4?

EAGLE‑4(Extrapolation Algorithm for Greater Language‑model Efficiency)是一个投机解码框架,可加速大型语言模型的推理。它提供了一个单一的“起草器”,可根据批大小、硬件(NVIDIA或AMD GPU)和工作负载自动调整其投机树,同时保持目标模型的输出分布。

核心思想

  • 投机解码:轻量级草稿模型提前预测多个token;重量级目标模型仅验证它们,从而减少昂贵的正向传递次数。
  • 动态树大小调整:EAGLE‑4在运行时测量起草和验证成本,并为当前批次和硬件选择最佳的投机步数。
  • 插件架构:eagle-harness包在不修补其源代码的情况下向支持的推理引擎(SGLang、vLLM、TokenSpeed)注册钩子。

存储库包含的内容

  • eagle_harness – 一个可通过pip安装的Python包,实现了harness逻辑和引擎插件。
  • 文档 – 快速入门指南、校准程序、兼容性表和详细架构说明。
  • 发布资产 – 针对受支持引擎的预构建wheel和Docker镜像,以及包含测量加速效果的支持矩阵。

支持的引擎和硬件

引擎 GPU系列 交付方式
SGLang NVIDIA B300 (CUDA 13) 或 AMD MI355X (ROCm 7.2) wheel(cu130 / rocm)和Docker镜像eagle‑4‑sglang:0.1.0
vLLM NVIDIA B300 (CUDA 13) wheel(cu130)和Docker镜像eagle‑4‑vllm:0.1.0
TokenSpeed (实验性) 仅NVIDIA CUDA wheel(cu130)和Docker镜像eagle‑4‑tokenspeed:0.1.0

快速安装(CUDA上的SGLang示例)

# 克隆存储库
git clone https://github.com/eagle-hq/EAGLE-4 && cd EAGLE-4
# 加载版本锁定
. docs/release.env
# 为SGLang创建虚拟环境
python3.12 -m venv .venv && source .venv/bin/activate
# 安装SGLang及其依赖项
pip install -U pip
pip install --extra-index-url "$EAGLE_CUDA_INDEX" \
    --extra-index-url "$EAGLE_TORCH_CUDA_INDEX" \
    "sglang==$EAGLE_SGLANG_VERSION" 'flashinfer-python>=0.7.2'
# 安装harness
pip install "eagle-harness==$EAGLE_VERSION"
# 验证插件可以看到引擎
eagle-harness-check

同样的模式适用于vLLM或TokenSpeed,只需交换引擎名称和Python版本。

运行服务器(SGLang示例)

python -m sglang.launch_server \
  --model-path $MODEL \
  --tp-size 4 --dtype bfloat16 \
  --attention-backend flashinfer \
  ... (其他性能标志) ... \
  --speculative-algorithm EAGLE_HARNESS \
  --speculative-draft-model-path $DRAFT \
  --speculative-num-steps 12 \
  --speculative-eagle-topk 4 \
  --speculative-num-draft-tokens 16 \
  --speculative-algorithm-config '{"mode":"serve"}'

然后,一个简单的curl请求即可检查生成是否正常工作。

测量性能

该白皮书的支持矩阵报告了在4×NVIDIA B300 GPU上比普通解码最高约3倍的token/秒加速(例如,SGLang:1479→2820 t/s,vLLM:242→723 t/s)。加速因批大小和硬件而异,但框架始终会在投机路径发散时回退到正确的贪婪输出。

许可证和商业条款

  • 该代码在Eagle 4 Source‑Available License(未经OSI批准)下源代码可用。它允许非商业用途和最高2000万美元收入的有限商业用途;更大的商业部署需要单独的许可证。
  • 存储库还包含SGLang、vLLM、FlashInfer等的第三方声明。

谁可能使用这个?

  • ML工程师:希望在不重新训练的情况下提高现有LLM部署吞吐量的人。
  • 云或本地推理服务:需要适用于不同批大小和GPU系列的单一起草器的服务。
  • 研究团队:正在实验投机解码算法的团队,因为该harness提供了校准工具和详细日志。

摘要:EAGLE‑4是一个插件式harness,为流行的LLM服务栈(SGLang、vLLM、TokenSpeed)添加自适应投机解码,在保持模型输出分布的同时,在现代NVIDIA/AMD GPU上实现最高约3倍的更快token生成。

相关

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