{"id":24167,"library":"openml","title":"OpenML Python API","description":"OpenML Python API for downloading, uploading, and managing datasets, tasks, runs, and flows on OpenML.org. Current version 0.15.1, requires Python >=3.8. Released under BSD license. Active development with periodic releases.","status":"active","version":"0.15.1","language":"python","source_language":"en","source_url":"https://github.com/openml/openml-python","tags":["openml","machine learning","datasets","tasks","runs","automl","reproducibility"],"install":[{"cmd":"pip install openml","lang":"bash","label":"Install via pip"}],"dependencies":[{"reason":"Data handling for datasets and runs","package":"pandas","optional":false},{"reason":"HTTP communication with OpenML server","package":"requests","optional":false},{"reason":"Machine learning utilities (e.g., check_consistent_length)","package":"scikit-learn","optional":false},{"reason":"Parsing XML responses from OpenML","package":"xmltodict","optional":false},{"reason":"ARFF file format support","package":"liac-arff","optional":false}],"imports":[{"note":"Wildcard imports discouraged; use explicit submodules like openml.datasets.","wrong":"from openml import *","symbol":"openml","correct":"import openml"},{"note":"list_datasets is deprecated, use openml.datasets.list_datasets() or openml.datasets.get_dataset_list().","wrong":"from openml.datasets import list_datasets","symbol":"openml.datasets","correct":"from openml.datasets import get_dataset"},{"note":"That works, but ensure using correct function names.","wrong":"import openml.tasks as tasks","symbol":"openml.tasks","correct":"from openml.tasks import get_task"}],"quickstart":{"code":"import openml\nopenml.config.apikey = openml.config.get_api_key()  # uses ~/.openml/config or environment\n# List datasets\ndatasets = openml.datasets.list_datasets()\nprint(f\"Number of datasets: {len(datasets)}\")\n# Download a dataset (iris)\ndataset = openml.datasets.get_dataset(61)\nX, y, categorical_names, attribute_names = dataset.get_data(target=dataset.default_target_attribute)\nprint(X.head())","lang":"python","description":"Setup OpenML, list datasets, download and inspect the Iris dataset."},"warnings":[{"fix":"Update code to use `X, y, categorical, names = dataset.get_data(target=...)`.","message":"In version 0.14, the `get_dataset` method changed from returning a tuple to returning a `OpenMLDataset` object. Calling `get_data()` now returns four values (X, y, categorical_indicator, attribute_names) instead of previously different structure.","severity":"breaking","affected_versions":">=0.14"},{"fix":"Replace `list_datasets()` with `get_dataset_list()` or use `list_datasets(size=...)` etc.","message":"`openml.datasets.list_datasets()` is deprecated; use `openml.datasets.get_dataset_list()` or pass parameters to `list_datasets()`.","severity":"deprecated","affected_versions":">=0.14"},{"fix":"Set env var or file: `openml.config.apikey = 'your_apikey'`. Get key from openml.org.","message":"API key configuration requires either setting OPENML_API_KEY env var or creating a ~/.openml/config file. Without it, many functions raise OpenMLServerError (401).","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Set API key via environment variable OPENML_API_KEY or openml.config.apikey = '...'","cause":"Missing or invalid OpenML API key.","error":"openml.exceptions.OpenMLServerError: The request has not been authorized (401)"},{"fix":"Ensure dataset ID is valid integer. Use list_datasets() to check existing IDs.","cause":"Dataset ID does not exist or is not an integer. Function expects integer ID but may receive something else.","error":"AttributeError: 'int' object has no attribute 'get' (when calling get_dataset with wrong ID)"},{"fix":"Run `pip install openml` and ensure correct Python environment is active.","cause":"OpenML not installed or installed in different environment.","error":"ModuleNotFoundError: No module named 'openml'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}