[BUG] create_task() hardcodes task_type="None" instead of inferring type string from TaskType
Los mantenedores suelen responder en 2 días
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 80/100
Línea de trabajo
Empieza en openml/tasks/functions.py, en create_task() alrededor de la línea 575, y luego lee cómo se asignan los valores de TaskType a nombres canónicos. Comprueba la comparación del tipo de tarea en tests/test_runs/test_run.py alrededor de la línea 290 y añade o actualiza una prueba de regresión. La tarea está terminada cuando una tarea creada localmente expone la cadena canónica esperada para el tipo de tarea en lugar de "None".
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
When creating an OpenML task locally using openml.tasks.create_task(), the task object is initialized with task_type="None".
In openml/tasks/functions.py:575, the function hardcodes this placeholder string literal:
return task_cls(
task_id=None,
task_type_id=task_type,
task_type="None", # TODO: refactor to get task type string from ID.
data_set_id=dataset_id,
target_name=target_name,
estimation_procedure_id=estimation_procedure_id,
evaluation_measure=evaluation_measure,
**kwargs,
)
Because of this, task.task_type is literally the string "None" rather than the canonical task type name (e.g., "Supervised Classification", "Supervised Regression", "Clustering", "Learning Curve").
This causes:
Equality checks like if task.task_type == "Supervised Classification" (used in client code and in tests/test_runs/test_run.py:290) to evaluate to False.
Error messages and representations to display Task type 'None' (such as in openml/tasks/task.py:315).
Steps/Code to Reproduce
python
import openml
from openml.tasks import TaskType, create_task
task = create_task(
TaskType.SUPERVISED_CLASSIFICATION,
dataset_id=1,
target_name="class",
estimation_procedure_id=1,
)
print("task.task_type:", repr(task.task_type))
print("Is Supervised Classification?", task.task_type == "Supervised Classification")
Expected Results
task.task_type should be "Supervised Classification", and task.task_type == "Supervised Classification" should evaluate to True.
Actual Results
task.task_type: 'None'
Is Supervised Classification? False
Versions
OpenML: 0.16.0
Python: 3.10+
OS: Windows / Linux / macOS
- Lenguaje dominante
- Python
- Estrellas
- 366
- Forks
- 306
- Merge medio
- 2 d 9 h
- PR fusionados (30 d)
- 4
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
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 openml/openml-python
-
Enhancement: Add missing **kwargs support to list_setups and list_evaluationsPosiblemente ocupada @shellyco-code la tomó hace 11 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
openml/openml-python#1753 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[ENH] list_estimation_procedures() should include the procedure IDsPosiblemente ocupada @Jayant-kernel la tomó hace 15 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
openml/openml-python#1750 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 2 días
-
[DOC] Update documentation for running tests with local servicesPosiblemente ocupada @nishtha-agarwal-211 la tomó hace 214 días. AbiertoDocumentation Good First Issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
openml/openml-python#1708 · 8 comentarios ·
Los mantenedores suelen responder en 2 días
-
[MNT] Add Missing Assertions to Run Function TestsPosiblemente ocupada @Akarshkushwaha la tomó hace 233 días. AbiertoGood First Issue module:Run testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
openml/openml-python#1646 · 9 comentarios · 3 reacciones ·
Los mantenedores suelen responder en 2 días
-
[MNT] Complete Test for Sparse Dataset Row ID and Ignore Attributes InclusionPosiblemente ocupada @omkar-334 la tomó hace 233 días. AbiertoGood First Issue module:Data testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
openml/openml-python#1644 · 4 comentarios ·
Los mantenedores suelen responder en 2 días
Todos los issues de openml/openml-python
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
EvaluationSuite.run fails with default args_for_task and mutates supplied kwargsPosiblemente ocupada @ktz03 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
huggingface/evaluate#825 ·
Los mantenedores suelen responder en 1 día
-
Add `django-upgrade` to the CIAbiertodependencies feature github_actions good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
wemake-services/wemake-django-template#3149 ·
Los mantenedores suelen responder en 1 día
-
[request] vsg/1.1.16Abiertoupstream update
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
conan-io/conan-center-index#31142 ·
Los mantenedores suelen responder en 1 día
-
area:core bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día