microsoft / microsoft/winml-cli
Apply fp16_op_block_list / fp16_keep_io_types to QDQ path (and vice versa)
Open
@xieofxie is already working on this.
Since Jul 27, 2026.
enhancement
P2
triaged
- Dominant language
- Python
- Stars
- 40
- Forks
- 11
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 50
Description
Context
From PR #872 review feedback by @xieofxie:
consider also apply to qdq and vice versa
a trick is get all types from input model to get the reverse list
Currently fp16_keep_io_types and fp16_op_block_list in WinMLQuantizationConfig are only used when mode="fp16". The suggestion is to:
- Allow FP16 conversion settings (like
op_block_list) to also apply when running QDQ quantization (e.g., to skip certain ops from quantization). - Allow QDQ-specific settings to inform FP16 conversion (e.g., auto-derive the block list from the model's op types).
Proposed Approach
- Inspect all op types in the input model to auto-generate a sensible block/allow list
- Share relevant config fields across FP16 and QDQ paths where applicable
- Keep backward compatibility (explicit user settings always take priority)
Related
- PR #872 (precision-driven quantization)
src/winml/modelkit/quant/config.py—WinMLQuantizationConfig
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.