Skip to content

[DYNAMO] add chat nvext transport#11

Draft
AmeenP wants to merge 6 commits into
mainfrom
codex/dynamo-chat-nvext-transport
Draft

[DYNAMO] add chat nvext transport#11
AmeenP wants to merge 6 commits into
mainfrom
codex/dynamo-chat-nvext-transport

Conversation

@AmeenP
Copy link
Copy Markdown

@AmeenP AmeenP commented May 8, 2026

Summary

Adds the Dynamo token-in wire shape to the standalone renderers package, which is now the canonical home for renderer client code.

  • adds RendererTransport = Literal["vllm", "dynamo"]
  • keeps the existing vLLM /inference/v1/generate behavior as the default transport="vllm", including current multimodal features support from main
  • adds transport="dynamo", posting placeholder chat messages plus nvext.token_data to /chat/completions
  • sends renderer stop token IDs through root stop_token_ids for the Dynamo rl-sdk token-in shape, omitting the field when the renderer has no stop IDs
  • sends prefix-cache salt through canonical nvext.cache_salt
  • requests nvext.extra_fields: ["engine_data"] and reads generated token IDs from Dynamo's token_ids, direct nvext.completion_token_ids, or nvext.engine_data.completion_token_ids response locations
  • rejects multimodal Dynamo calls until Dynamo has a chat-completions multimodal token-in payload
  • exports the transport type from renderers.__init__
  • fixes hatch-vcs tag selection so git dependency builds ignore historical renderers-v0.1.8.dev1+ tags and build from the PR SHA

Context

This replaces the old verifiers PR path that edited packages/renderers/...; latest verifiers/main now depends on the standalone PrimeIntellect-ai/renderers repo.

Paired stack:

  • ai-dynamo/dynamo#9509 minimal Dynamo nvext contract PR split from ai-dynamo/dynamo#9382
  • PrimeIntellect-ai/verifiers#1287
  • PrimeIntellect-ai/verifiers#1313
  • PrimeIntellect-ai/prime-rl DYNAMO stack

Validation

  • ruff check renderers/client.py renderers/__init__.py tests/test_client.py
  • ruff format --check renderers/client.py renderers/__init__.py tests/test_client.py
  • python -m py_compile renderers/client.py renderers/__init__.py tests/test_client.py
  • uv build --wheel
  • direct execution of the pure client tests, including test_generate_can_use_dynamo_transport, test_generate_dynamo_reads_engine_data_fallback, and test_generate_dynamo_rejects_multimodal_sidecar

uv run pytest tests/test_client.py -q still exits 139 on the local macOS/Anaconda environment during pytest startup capture initialization; relying on Linux CI for the full pytest run.

@AmeenP AmeenP force-pushed the codex/dynamo-chat-nvext-transport branch from e616f33 to 196476a Compare May 13, 2026 22:55
AmeenP added 5 commits May 13, 2026 16:10
Signed-off-by: AmeenP <ameenp360@gmail.com>
Signed-off-by: AmeenP <ameenp360@gmail.com>
Signed-off-by: AmeenP <ameenp360@gmail.com>
Signed-off-by: AmeenP <ameenp360@gmail.com>
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