Install¶
EvalML is available for Python 3.8 with experimental support 3.9. It can be installed with pip or conda.
Time Series support with Facebook’s Prophet¶
To support the Prophet
time series estimator, be sure to install it as an extra requirement. Please note that this may take a few minutes. Prophet is currently only supported via pip installation in EvalML for Mac with CmdStan as a backend.
pip install evalml[prophet]
Another option for installing Prophet with CmdStan as a backend is to use make installdeps-prophet
.
Note: In order to do this, you must have the EvalML repo cloned and you must be in the top level folder <your_directory>/evalml/
to execute this command. This command will do the following: - Pip install cmdstanpy==0.9.68
- Execute the install_cmdstan.py
script found within your site-packages/cmdstanpy
which builds cmdstan
in your site-packages
. - Install Prophet==1.0.1
with the CMDSTAN
and STAN_BACKEND
environment variables set.
If the site-packages
path is incorrect or you’d like to specify a different one, just run make installdeps-prophet SITE_PACKAGES_DIR="<path_to_your_site_packages>"
.
If you’d like to have more fine-tuned control over the installation steps for Prophet, such as specifying the backend, follow these steps:
For CmdStanPy as a backend: 1. pip install cmdstanpy==0.9.68
2. python <path_to_installed_cmdstanpy>/install_cmdstan.py --dir <path_to_build_cmdstan> -v <version_to_use>
3. CMDSTAN=<path_to_build_cmdstan>/cmdstan-<version_to_use> STAN_BACKEND=CMDSTANPY pip install prophet==1.0.1
For PyStan as a backend (PyStan is used by default): 1. pip install prophet==1.0.1
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
Add-ons¶
You can install add-ons individually or all at once by running:
pip install evalml[complete]
Time Series Support
Add time series support with Facebook’s Prophet
pip install evalml[prophet]
Please note that this may take a few minutes. Prophet is currently only supported via pip installation in EvalML.
Update checker
Receive automatic notifications of new EvalML releases
pip install evalml[update_checker]
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
Windows¶
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). Install with conda install -c conda-forge numba
* graphviz
if you’re using EvalML’s plotting utilities. Install with conda install -c conda-forge python-graphviz
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.
Mac¶
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.8.