package to insert ML models in Gurobi
Gurobi Machine Learning
The package currently supports various scikit-learn objects. It has limited support for the Keras API of TensorFlow, PyTorch and XGBoost. Only neural networks with ReLU activation can be used with Keras and PyTorch.
The latest user manual is available on readthedocs.
For questions related to using Gurobi Machine Learning please use Gurobi's Forum.
For reporting bugs, issues and feature requests please open an issue.
If you encounter issues with Gurobi or
gurobipy please contact
gurobi-machinelearning requires the following:
The current version supports the following ML packages:
Installing these packages is only required if the predictor you want to insert uses them
(i.e. to insert a Keras based predictor you need to have
The up to date supported and tested versions of each package for the last release can be found in the documentation.
The easiest way to install
gurobi-machinelearning is using
pip in a virtual environment:
(.venv) pip install gurobi-machinelearning
This will also install the
Please note that
gurobipy is commercial software and requires a license. When installed via pip or conda,
gurobipy ships with a free license which is only for testing and can only solve models of limited size.
Getting a Gurobi License
Alternatively to the bundled limited license, there are licenses that can handle models of all sizes.
As a student or staff member of an academic institution you qualify for a free, full product license. For more information, see:
For a commercial evaluation, you can request an evaluation license.
Other useful resources to get started:
We value any level of experience in using Gurobi Machine Learning and would like to encourage you to contribute directly to this project. Please see the Contributing Guide for more information.
You can clone the latest sources with the command:
git clone email@example.com:Gurobi/gurobi-machinelearning.git
After cloning the project, you can run the tests by invoking
tox. For this, you will need to create a virtual
environment and activate it:
python3.10 -m venv .venv
Then, you can install
tox (>= 3.26.0) and run a few basic tests:
(.venv) pip install tox
(.venv) tox -e py310,pre-commit,docs
tox will install, among others, the aforementioned ML packages into a separate
venv. These packages can be quite
large, so this might take a while.
Running the full test set
In the above command, we only ran a subset of tests. Running the full set of tests requires having a Gurobi license
installed, and is done by running just the
tox command without the
(.venv) pip install tox
If you don't have a Gurobi license, you can still run the subset of tests, open a PR, and Github Actions will run the tests with a full Gurobi license.
Submitting a Pull Request
Before opening a Pull Request, have a look at the full Contributing page to make sure your code complies with our guidelines.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for gurobi-machinelearning-1.4.0.tar.gz
Hashes for gurobi_machinelearning-1.4.0-py3-none-any.whl