EvalML is available for Python 3.7 and 3.8 with experimental support 3.9. It can be installed with pip or conda.

Pip with all dependencies

To install evalml with pip, run the following command:

pip install evalml

Pip with core dependencies

EvalML includes several optional dependencies. The xgboost and catboost packages support pipelines built around those modeling libraries. The plotly and ipywidgets packages support plotting functionality in automl searches. These dependencies are recommended, and are included with EvalML by default but are not required in order to install and use EvalML.

EvalML’s core dependencies are listed in core-requirements.txt in the source code, and optional requirements are isted in requirements.txt.

To install EvalML with only the core required dependencies, download the EvalML source from pypi to access the requirements files. Then run the following:

pip install evalml --no-dependencies
pip install -r core-requirements.txt

Conda with all dependencies

To install evalml with conda run the following command:

conda install -c conda-forge evalml

Conda with core dependencies

To install evalml with only core dependencies run the following command:

conda install -c conda-forge evalml-core


Additionally, if you are using pip to install EvalML, it is recommended you first install the following packages using conda: * numba (needed for shap and prediction explanations) * graphviz if you’re using EvalML’s plotting utilities

The XGBoost library may not be pip-installable in some Windows environments. If you are encountering installation issues, please try installing XGBoost from Github before installing EvalML or install evalml with conda.


In order to run on Mac, LightGBM requires the OpenMP library to be installed, which can be done with HomeBrew by running

brew install libomp

Additionally, graphviz can be installed by running

brew install graphviz

Python 3.9 support

Evalml can still be installed with pip in python 3.9 but note that sktime, one of our dependencies, will not be installed because that library does not yet support python 3.9. This means the PolynomialDetrending component will not be usable in python 3.9. You can try to install sktime from source in python 3.9 to use the PolynomialDetrending component but be warned that we only test it in python 3.7 and 3.8.