Repository navigation
Conversation
xinnywinne
force-pushed
the
feat/rust-spec-decode-request-metrics
branch
from
October 19, 2026 17:52
700f6b2 to
54f8409
Compare
Contributor
|
This pull request has merge conflicts that must be resolved before it can be |
xinnywinne
force-pushed
the
feat/rust-spec-decode-request-metrics
branch
from
October 20, 2026 20:55
54f8409 to
2de327e
Compare
xinnywinne
marked this pull request as ready for review
October 20, 2026 21:01
xinnywinne
requested review from
BugenZhao,
aoshen02 and
njhill
as code owners
October 20, 2026 21:01
Expose speculative decoding acceptance statistics in OpenAI chat and completion response metrics while reusing the existing generate endpoint conversion. Assisted-by: OpenAI Codex <noreply@openai.com> Signed-off-by: wxin <wxin@nvidia.com> Signed-off-by: xinnywinne <36653773+xinnywinne@users.noreply.github.com> Signed-off-by: Bugen Zhao <i@bugenzhao.com>
…tils::metrics Keep the per-request metrics family in one module: `PerRequestMetrics` and `StreamPerRequestMetrics` already live in `openai/utils/metrics.rs`, and `/inference/v1/generate` already imports from `openai::utils`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CJckCEER627cygWfxcyUPH Signed-off-by: Bugen Zhao <i@bugenzhao.com>
BugenZhao
force-pushed
the
feat/rust-spec-decode-request-metrics
branch
from
October 27, 2026 11:48
2de327e to
70106b8
Compare
Member
|
/ci run |
|
✅ @xinnywinne, CI is now available for this PR.
|
|
✅ Triggered Buildkite CI #97623 for commit ℹ️ This PR is 2 commits behind upstream |
This was referenced Oct 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds speculative-decoding acceptance statistics to per-request metrics in the Rust OpenAI frontend.
This is a follow-up to #59314, which added the base per-request timing metrics support. It is not duplicate work: the Rust Chat Completions and Completions routes do not currently propagate the engine's per-request speculative-decoding statistics. This PR reuses the converter already used by
/inference/v1/generate.metrics.speculative_decodingfor/v1/chat/completionsand/v1/completions/inference/v1/generateThe response follows the existing Python/OpenAI per-request metrics schema, including summary and detailed speculative-decoding modes.
Validation
cargo fmt --all -- --checkcargo check --workspace --testscargo clippy -p vllm-text -p vllm-chat -p vllm-server --all-targets -- -D warningscargo test -p vllm-server routes::openai::— 153 passedcargo test -p vllm-text --lib— 111 passed, 1 ignoredcargo test -p vllm-chat --lib— 389 passedNotes
A broader
cargo test -p vllm-text -p vllm-chatrun also exercised the integration suites. Two model round-trip snapshot cases (roundtrip_mimo_v26androundtrip_step5) failed because the locally resolved model/tokenizer data no longer matched the checked-in snapshots; this PR only addsspec_decode_metrics: Noneto their terminal-output test fixture.AI assistance was used to implement and validate this change. I reviewed every changed line and understand the implementation.