Skip to content

feat(vllm): build the vLLM config schema from the shared blocks - #698

Open
atnair-amd wants to merge 3 commits into
atnair/config-blocksfrom
atnair/vllm-config-schema
Open

atnair-amd wants to merge 3 commits into
atnair/config-blocksfrom
atnair/vllm-config-schema

Conversation

@atnair-amd

@atnair-amd atnair-amd commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

Jira: AIMVT-575

vLLM loads through load_config. VariantConfig is composed from the shared blocks, and the suite fixture uses the merged container from the loader. Depends on #697.

  • A <changeme> or <changeme-...> on a ConfigStr field, or in a CLI option value, fails at collection in one ConfigError that names those fields. The check does not walk every string in the file.
  • runtime.args accepts the other Docker keys and rejects env. HF_TOKEN and HUGGING_FACE_HUB_TOKEN in the suite file's container.env still fail the load. A token set only in the cluster file is kept, and logs redact it through the existing env_lib path.
  • A threshold metric whose name starts with _ is ignored. notes is still rejected.

The how-to, the reference, and the 0.3.0 changelog bullet say every leftover placeholder is named. The check is the ConfigStr and option-value fields.

Testing: test_vllm_config_loader (4 tests) and ruff on the follow-up commit.

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Security scan found no critical or high findings on lines changed by this pull request

2 medium, low, or unrated finding(s) are not listed; the scan run has them.

View the security scan run for complete reports.

“New” means the finding is located in a changed file on an added or modified line; it is not a base-versus-head findings delta.

@atnair-amd
atnair-amd added this pull request to stack #699 October 30, 2026 21:24
@atnair-amd atnair-amd self-assigned this Oct 30, 2026
Move the vLLM schema into vllm_schema.py, composed from config_blocks,
and load it through load_config. vllm_config_loader.py keeps load_variant
and re-exports VariantConfig and serialize_cli_options.

A config that still has a <changeme> or <changeme-...> value now fails at
test collection, and the error names every such field, instead of failing
later at image pull or docker run. Keys starting with _ are ignored at any
level, including threshold metrics. runtime.args accepts the other Docker
runtime keys and rejects env, so container.env stays the only env block.
The suite's conftest takes the merged container from load_config and no
longer keeps its own deep merge.

The vLLM config tests move beside the schema. The packaged-catalog test is
replaced by loading each shipped template with its placeholders filled.
The merge test loads a cluster env, volume list, and shm_size, and
checks that editing the merged container does not change the cluster.
The unfilled-template test names the placeholders that template's
check reports.
The suite calls load_config with the schema directly, so vllm_config_loader.py and load_variant are removed.
@atnair-amd
atnair-amd force-pushed the atnair/vllm-config-schema branch from faae80e to 3e60b68 Compare October 30, 2026 21:59
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