microsoft / microsoft/winml-cli

Handle LUID selection on the evaluator loaders that return before this block

Open
#1,413 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

The GENAI and EVALUATOR_MANAGED branches return before this registry lookup. Consequently, winml eval -m --task text-generation --device gpu --device-luid accepts the pin but _load_genai_causal_lm() only forwards ep/device. Composite mask-generation evaluation similarly constructs its own ORT sessions without consulting config.device_luid. Both can evaluate on a different adapter while the JSON report records the requested LUID.

Please reject a non-null LUID for loaders that cannot honor it (as perf already does for ort-genai), or wire the selected adapter through their session creation. This needs to happen before the early returns; coverage of the normal WinMLAutoModel path won't catch it.

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.

Research direction

Trace the evaluator loader dispatch around the early returns for the GENAI and EVALUATOR_MANAGED branches, then inspect _load_genai_causal_lm() and the composite mask-generation session construction. Compare these with the normal WinMLAutoModel path and the existing perf rejection for ort-genai. Done means a non-null LUID is rejected where unsupported or reaches every relevant session, with coverage for these early-return paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.