Skip to content

feat(router): add load-aware generate paths - #199

Open
bvolpato wants to merge 1 commit into
vllm-project:mainfrom
bvolpato:bvolpato/typed-skyrl-generate
Open

bvolpato wants to merge 1 commit into
vllm-project:mainfrom
bvolpato:bvolpato/typed-skyrl-generate

Conversation

@bvolpato

@bvolpato bvolpato commented Aug 5, 2026

Copy link
Copy Markdown

Purpose

Extensions can expose inference-generate-compatible endpoints beyond /inference/v1/generate. Add extra_generate_paths and --extra-generate-paths so configured endpoints use existing typed routing instead of transparent fallback.

Configured paths:

  • validate with InferenceGenerateRequest
  • extract token_ids for cache-aware routing
  • forward to same worker path
  • use existing retries, circuit breaking, load accounting, authorization, and concurrency limits
  • support regular and prefill/decode routers

Built-in handlers and unconfigured fallback behavior remain unchanged. Invalid, duplicate, dynamic, or conflicting paths fail startup validation.

Cancellation-safe global load accounting remains separate in #200. Related consumer update: NovaSky-AI/SkyRL#1988.

Test Plan

  • Register /custom/v1/generate against two delayed workers.
  • Send overlapping requests and verify cache-aware routing accounts for in-flight load.
  • Verify extension JSON fields survive typed forwarding.
  • Verify prefill/decode routing clamps nested sampling limits.
  • Validate Python and Rust configuration surfaces and reserved-route rejection.

Test Result

  • make fmt: passed.
  • make check: passed with three existing Clippy warnings.
  • cargo test --all-features: passed, including 486 library tests and 48 API endpoint tests.
  • uv run --extra dev pytest py_test/unit -q: 109 passed, 4 skipped.
  • uvx black --check: passed for touched Python files.
  • uvx ruff check: passed for touched Python files.
  • git diff --check: passed.

Essential Elements of an Effective PR Description Checklist
  • Purpose documented.
  • Test plan documented.
  • Test results documented.

@bvolpato
bvolpato marked this pull request as ready for review August 5, 2026 18:16

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2c35714f5e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/routers/http/vllm_pd_router.rs Outdated
@bvolpato bvolpato changed the title feat(router): register SkyRL generate as typed route feat(router): add load-aware SkyRL generation Aug 5, 2026
@bvolpato
bvolpato force-pushed the bvolpato/typed-skyrl-generate branch from 0385fdd to dc05d1e Compare August 5, 2026 18:49
@bvolpato
bvolpato marked this pull request as draft August 5, 2026 18:50
@bvolpato
bvolpato force-pushed the bvolpato/typed-skyrl-generate branch from dc05d1e to 8d88d15 Compare August 5, 2026 19:09
@bvolpato bvolpato changed the title feat(router): add load-aware SkyRL generation feat(router): add load-aware generate paths Aug 5, 2026
@bvolpato
bvolpato marked this pull request as ready for review August 5, 2026 19:10
@bvolpato
bvolpato force-pushed the bvolpato/typed-skyrl-generate branch from 8d88d15 to 7e94458 Compare August 5, 2026 19:11

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8d88d153c8

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/routers/router_manager.rs Outdated
@bvolpato
bvolpato force-pushed the bvolpato/typed-skyrl-generate branch 4 times, most recently from 4d15d57 to ed0c3d5 Compare August 5, 2026 20:20
@bvolpato
bvolpato force-pushed the bvolpato/typed-skyrl-generate branch from ed0c3d5 to 0971b39 Compare August 16, 2026 20:26
Signed-off-by: Bruno Volpato <brunocvcunha@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants