microsoft / microsoft/winml-cli

Remove deprecated `"qdq"` mode value from config and recipes

Open
#971 1 comment 0 reactions 1 assignee View on GitHub

@xieofxie is already working on this.

Since Jul 27, 2026.

enhancement P2 refactor triaged
Dominant language
Python
Stars
40
Forks
11
Avg merge
1d 8h
Merged PRs (30d)
50

Description

Summary

The WinMLQuantizationConfig.mode field currently accepts "qdq" as a legacy value, which is silently mapped to "static" in from_dict(). This creates confusion since "qdq" and "static" mean the same thing.

A follow-up PR should:

  1. Update all recipe JSON files (~50+ in examples/recipes/) from "mode": "qdq""mode": "static"
  2. Update documentation (docs/reference/index.md, docs/concepts/config-and-build.md) to remove "qdq" from the schema
  3. Update unit tests (test_config.py, test_build.py, test_onnx.py, test_hf.py) to use "static" instead of "qdq"
  4. Remove the backward-compat shim in src/winml/modelkit/quant/config.py (if raw_mode == "qdq": raw_mode = "static")
  5. Update the Literal type from Literal["static", "dynamic", "rtn", "fp16"] — confirm no references to "qdq" remain

Notes

  • The "qdq" value was the original default before the mode field was unified in #872
  • Keep the shim in place until all recipes/docs/tests are migrated in the same PR to avoid a breaking window
  • Consider whether winml config generation still emits "qdq" anywhere

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.