Skip to content

feat(media): add per-target image and video processing - #804

Draft
ayushag-nv wants to merge 5 commits into
ayushag/judge-vision-routing-supportfrom
codex/vision-media-processing
Draft

ayushag-nv wants to merge 5 commits into
ayushag/judge-vision-routing-supportfrom
codex/vision-media-processing

Conversation

@ayushag-nv

Copy link
Copy Markdown
Contributor

Why

Judge and answer endpoints need different image sizes and video representations. Builds on #790; related to SWITCH-1542.

What

Add per-target TOML media settings for image resizing/limits, video frame sampling, native video formats, and media omission. Include FFmpeg in the server image.

How

A separate switchyard-media crate prepares outgoing bodies in the LLM client before retries. Downloads, decoding, and frame extraction are bounded. Original requests remain available to answer and fallback targets; libsy gains no media dependencies.

Where to Start Review

Start with crates/switchyard-media/src/lib.rs, then the client send_encoded hook and runner configuration. The example includes Cosmos judge and Astra/Qwen/Gemini answer settings.

Test Plan

  • 875 workspace tests, 67 runner tests with prefill-router, and 2 FFmpeg tests passed.
  • 141 Python tests; Rust formatting/Clippy, Ruff, mypy, and actionlint passed.
  • Container built; server startup and FFmpeg/FFprobe fixture checks passed.
  • Nine live transport cases passed across 15 Hub calls. Judge accuracy is not a claim of this PR.

Signed-off-by: ayushag <ayushag@nvidia.com>
Signed-off-by: ayushag <ayushag@nvidia.com>
Signed-off-by: ayushag <ayushag@nvidia.com>
Signed-off-by: ayushag <ayushag@nvidia.com>
Signed-off-by: ayushag <ayushag@nvidia.com>
@ayushag-nv
ayushag-nv requested a review from a team as a code owner September 21, 2026 01:10
@github-actions

Copy link
Copy Markdown
PR Preview Action v1.8.1

🚀 View preview at
https://NVIDIA-NeMo.github.io/Switchyard/pr-preview/pr-804/

Built to branch gh-pages at 2026-09-21 01:11 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@ayushag-nv
ayushag-nv marked this pull request as draft September 21, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant