Replies: 1 comment
My take 👀 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
MTP speculative decoding community testing
Text-only MTP speculative decoding is now available in
llama-cpp-python, with support for both:The current implementation has primarily been tested with the Qwen3.5, Qwen3.6, and Qwen3.8 model families. Testing on additional hardware, backends, quantizations, and workloads is needed before the feature can be considered broadly validated.
Multimodal support is not available yet. Cache handling, rollback behavior, and decoding-efficiency optimizations are still in progress.
Feedback requested
Community testing would be especially helpful for:
draft_n_maxvaluesFor Qwen3.8 27B,
draft_n_max=2has performed well in current testing and is the recommended starting point. However, the optimal value can vary significantly with the GPU, backend, quantization, prompt, sampling configuration, and whether MTP is built in or external. Please benchmark multiple values when possible.Suggested benchmark
The included benchmark can compare ordinary decoding, built-in MTP, and external MTP:
A broader speculative decoding benchmark is also available:
For reliable results, please use the same prompt and sampling settings for each mode, perform a warmup, and run multiple measured iterations.
Feedback template
Please include as much of the following information as possible:
Logs containing the final
Llama.generate: draft-mtp summaryare particularly useful. Please remove private prompts, model paths, usernames, or other sensitive information before posting.Positive results are welcome, but slower results, crashes, unsupported model reports, and unusual rollback behavior are equally valuable. They help identify where the implementation needs compatibility fixes or further optimization.
Thank you to everyone willing to test and share results.
— JamePeng
All reactions