[eval] DRY: drop repeated "winml.modelkit.eval." prefix in _EVALUATOR_REGISTRY
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 84/100
- Tipo de issue
- Refactorización
- Claridad
- Bien especificado
- Estado de actividad
- Tranquilo
- Stack tecnológico
- python
- Área
- machine-learning
Línea de trabajo
Empieza en eval/evaluate.py, en _EVALUATOR_REGISTRY y get_evaluator_class, y luego lee tests/unit/eval/test_eval.py::test_registered_task_returns_class. Almacena las entradas del registro sin el prefijo de paquete repetido, añade el único prefijo en el momento de la importación, actualiza la aserción de la ruta del módulo y ejecuta el test enfocado para confirmar que el comportamiento no ha cambiado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Component: eval
Type: cleanup / quality
Context
eval/evaluate.py::_EVALUATOR_REGISTRY maps task -> "module_path:ClassName", e.g.:
"image-feature-extraction":
"winml.modelkit.eval.image_feature_extraction_evaluator:WinMLImageFeatureExtractionEvaluator",
The winml.modelkit.eval. prefix is repeated for all 15 entries. Because the full single-line entries exceed the 100-char limit, the dict is currently wrapped in # fmt: off / # fmt: on to preserve the readable key/value-per-line layout (otherwise ruff-format collapses each entry onto one >100-char line, which trips E501). Introduced/surfaced in #807.
Proposed cleanup
- Store the relative
"<module>:<ClassName>"(drop the repeated package prefix). - Prepend
winml.modelkit.eval.once inget_evaluator_class:importlib.import_module(f"winml.modelkit.eval.{module_path}"). - Most entries then fit on a single line naturally; only the 3 longest (
image-feature-extraction,zero-shot-classification,zero-shot-image-classification) still need# noqa: E501. - This removes the
# fmt: off/# fmt: onblock.
Note
tests/unit/eval/test_eval.py::test_registered_task_returns_class asserts cls.__module__ == module_path; update it to compare against the full prefixed path.
Out of scope
Behavior is unchanged — purely a storage-format/readability cleanup.
- Lenguaje dominante
- Python
- Estrellas
- 40
- Forks
- 11
- Merge medio
- 19 h 32 min
- PR fusionados (30 d)
- 51
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/winml-cli
-
bug P1
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
bug P1 triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
microsoft/winml-cli#1097 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug P1
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
Los mantenedores suelen responder en 1 día
-
bug P1
Dificultad 3/5 1-2 días Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
bug P1
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
Los mantenedores suelen responder en 1 día
Todos los issues de microsoft/winml-cli
Issues similares
-
ACK_WAITING HELP_WANTED UPDATE_CS
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
OWASP/CheatSheetSeries#2458 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
BasedHardware/omi#19711 ·
Los mantenedores suelen responder en 1 día
-
Qwen3_5MoeModel no longer returns router_logits, breaking aux loss with output_router_logits=TrueAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
huggingface/transformers#49172 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
vllm-project/vllm-metal#885 ·
Los mantenedores suelen responder en 1 día