Skip to main content
Eagle

EAGLE-4

One Flexible Drafter for All Batch Sizes and Hardware

Paper (EAGLE-4) · EAGLE-4 draft for Qwen3.8-27B · Documentation

eagle-harness on PyPI Maintenance Contributions welcome

Eagle website Eagle on LinkedIn Eagle on X GitHub organization HuggingFace

License


EAGLE-4 single-request speedup over vanilla decoding, from the paper

Figure 1(a) of the EAGLE-4 paper: Qwen3.8-27B on the SPEED-Bench qualitative split, 4× NVIDIA B300, one request, temperature 0. The numbers this release measured with EAGLE-4 are in the support matrix.

EAGLE-4

Leave speculation on. EAGLE-4 adapts to your hardware, batch and workload.

For high load, serve SGLang on four B300 GPUs with the high-load recipe, which keeps pace with plain decoding up to 512 concurrent requests.

EAGLE-4 (Extrapolation Algorithm for Greater Language-model Efficiency) speeds up LLM inference with speculative decoding. EAGLE-4 draft models are built to run with eagle-harness, which decides how far to speculate from measured costs on your setup, so every draft tree fits the batch size, the hardware and the workload. The output stays exactly what the target model would generate on its own: up to 3.4× faster generation on Qwen3.8-27B, with the same answers. Measured speedups

This repository holds eagle-harness, the package that brings EAGLE-4 to SGLang, vLLM and TokenSpeed. Install it, point your engine at an EAGLE-4 draft model, and it serves with EAGLE-4.

Quick start

The quick start serves on one GPU and is tested on one NVIDIA B300 with Linux and a CUDA 13 driver. Qwen3.8-27B and its EAGLE-4 draft download on the first start (about 62 GB). The measured speedups use four B300 GPUs. Add --tp-size 4 to either serve command to serve on four, and see the engine guides for the exact measured commands.

Start an SGLang server with Docker:

docker run --gpus all --ipc host -p 127.0.0.1:30000:30000 \
  -e HF_HOME=/hf -v ~/.cache/huggingface:/hf \
  ghcr.io/eagle-hq/eagle-4-sglang:0.1.1 \
  sglang serve --model-path Qwen/Qwen3.8-27B --host 0.0.0.0 \
  --disable-overlap-schedule --speculative-algorithm EAGLE_HARNESS \
  --speculative-draft-model-path EAGLE-Corp/Qwen3.8-27B-EAGLE4 \
  --speculative-num-steps 12 --speculative-eagle-topk 4 --speculative-num-draft-tokens 16 \
  --speculative-algorithm-config '{}'

Or install with pip, in Python 3.12. Pip installs also need the CUDA toolkit and a C++ compiler:

python3.12 -m venv .venv && source .venv/bin/activate
pip install "eagle-harness[sglang]" "sglang==0.5.23.dev252+eagle.5" \
  --extra-index-url https://eagle-hq.github.io/EAGLE-4/whl/cu130/ \
  --extra-index-url https://download.pytorch.org/whl/cu130 \
  --extra-index-url https://pypi.nvidia.com
sglang serve --model-path Qwen/Qwen3.8-27B \
  --speculative-algorithm EAGLE_HARNESS \
  --speculative-draft-model-path EAGLE-Corp/Qwen3.8-27B-EAGLE4

When the server logs The server is fired up and ready to roll!, send a request from another terminal:

curl http://localhost:30000/v1/chat/completions -H 'Content-Type: application/json' \
  -d '{"model": "Qwen/Qwen3.8-27B", "messages": [{"role": "user", "content": "Explain how a hash table works."}], "max_tokens": 256}'

For vLLM, TokenSpeed and AMD MI355X, follow the engine guides.

Measured speedup

Each speedup divides EAGLE-4 throughput by the same engine's throughput without speculation, on Qwen3.8-27B at temperature 0 on the SPEED-Bench client, with the measured recipe of each engine guide. The support matrix has the tokens/s, the correctness checks and how each number was measured.

Engine GPUs 1 request 8 concurrent 64 concurrent
SGLang 4× B300 3.42× 2.09× 1.39×
vLLM 4× B300 2.83× 1.72× 1.14×
TokenSpeed 4× B300 3.09× 2.02× 1.41×

On one AMD MI355X, SGLang with EAGLE-4 is 2.07× faster at 8 concurrent requests and 1.56× at 32.

More

Citation

If you use EAGLE-4, cite the EAGLE-4 paper. EAGLE-4 builds on EAGLE, EAGLE-2 and EAGLE-3, which CITATION.cff also lists.

@misc{eagle4,
    author = {EAGLE-4 Team},
    title = {{EAGLE-4}: One Flexible Drafter for All Batch Sizes and Hardware},
    year = {2026},
    note = {Preprint}
}

Acknowledgements

  • Thanks to Aditya Nandakumar (@proaditya) and the contributors to the original EAGLE-4 PR 1 for the ROCm port of EAGLE-4 on AMD Instinct MI355X.
  • Thanks to Andy Luo (@andyluo7) and the contributors to the original EAGLE-4 PR 2 for the AMD AITER and Triton kernels on GFX950.
  • Thanks to Andy Luo (@andyluo7), Aditya Nandakumar (@proaditya) and the contributors to the merged AMD series in the original EAGLE-4 PR 4 for AITER/FA3 and Split-KV on GFX950.
  • Thanks to Nicolas Perrin (@nperrin-fr) and the TokenSpeed/LightSeek contributors for the TokenSpeed implementation in the original EAGLE-4 PR 3, including the MLP L2 warm-ahead and TGV SwiGLU work used in the TokenSpeed fork.
  • SPEED-Bench is by NVIDIA. Model weights are licensed by their owners.

License and trademark policy

Eagle 4 is source-available software, not OSI-approved open-source software. The terms of the Eagle 4 Source-Available License govern its use, modification, and distribution, and incorporate the Eagle Trademark Policy. See also the NOTICE file.

Commercial Use of a Competing Offering requires a separate written commercial license regardless of revenue. Other Commercial Use is permitted only within the conditions of the license, including the US $20 million Aggregate Revenue threshold measured over any consecutive 12-month period. If the threshold is exceeded, a separate commercial agreement is required before beginning or continuing any Commercial Use. The license specifies that the requirement continues after a subsequent revenue decrease.

Downloading, cloning, forking, copying, accessing, modifying, using, hosting, distributing, or otherwise exercising any licensed right constitutes acceptance of the Source-Available License and incorporated Eagle Trademark Policy. Mere viewing or inspection does not itself constitute trademark use.

For separate commercial terms, see the Commercial License Agreement and contact licensing@eagle.ai. Publishing that agreement does not grant commercial-license rights; it becomes binding only as stated in its Section 1. Files derived from sglang, vLLM, FlashInfer and other projects keep those projects' notices, listed in THIRD_PARTY_NOTICES.md.

Contributing

By submitting, uploading, pushing, committing, proposing, or otherwise providing a pull request, patch, issue attachment, model, weight, dataset, documentation, or other contribution to this repository, you agree to the Eagle Contribution License and Submission Terms (PDF). If you do not agree, do not submit a contribution. If you act for an employer, client, partner or other entity, you represent that you have authority to submit the contribution and have obtained all required permissions. Submitting a contribution does not change the license of existing Eagle code; Eagle AI Corp controls outbound licensing for accepted contributions. See CONTRIBUTING.md for the licensing structure and for how to build, test and open a pull request.

Metadata

Release files for eagle-harness 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eagle-harness 0.1.2
File Size Uploaded Provenance
eagle_harness-0.1.2.tar.gz 723.6 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for eagle-harness 0.1.2
File Interpreter ABI Platform
eagle_harness-0.1.2-py3-none-manylinux_2_34_x86_64.whl Python 3 none Linux glibc 2.34+ x86-64 Details
eagle_harness-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 4.2 MB

Release files / eagle_harness-0.1.2.tar.gz

Download URL eagle_harness-0.1.2.tar.gz
Size 723.6 kB
Tags Source
SHA-256 checksum
How to use checksums
03ed7d1425880ac03759276864b12c6b31e1a27ee90364b8f59c60ff15182e66
BLAKE2b-256 checksum
How to use checksums
071292c422b4d972772713c1276d5a12eb0d5a842fc96887669cf81239fc6892
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / eagle_harness-0.1.2-py3-none-manylinux_2_34_x86_64.whl

Download URL eagle_harness-0.1.2-py3-none-manylinux_2_34_x86_64.whl
Size 3.0 MB
Tags Linux glibc 2.34+ x86-64 Python 3
SHA-256 checksum
How to use checksums
e85d1874d588807d0510cdd2eac986f530265d4272a2cc812f5f116b97938251
BLAKE2b-256 checksum
How to use checksums
0dcdaeaec26e7b1305e8adc63cbfc6980000f9e8298e5f3283b4ca71403a735a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / eagle_harness-0.1.2-py3-none-any.whl

Download URL eagle_harness-0.1.2-py3-none-any.whl
Size 403.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
addcb2ba0aa444930e9782f251ade9d01a1efc10f50fbb0443f700443827ba5e
BLAKE2b-256 checksum
How to use checksums
d4768b62f31a397fb91ddf0039ad20b840af995649165b1b3a00c4c6688607ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Security for eagle-harness 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 3 files in this release have been uploaded with provenance metadata.

Select from 3 files

Attestation for eagle_harness-0.1.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page