The package is currently distributed via Github as the primary source code repository, and the Python package index (PyPI). The pre-built Docker images are made available on DockerHub.
This page provides steps to:
(If you have installed the
PyPI release version using
pip install monai, please run
pip uninstall monai before using the commands from this section. Because
default prefers the milestone release.)
The milestone versions are currently planned and released every few months. As the codebase is under active development, you may want to install MONAI from GitHub for the latest features:
Option 1 (as a part of your system-wide module):¶
pip install git+https://github.com/Project-MONAI/MONAI#egg=MONAI
or, to build with MONAI Cpp/CUDA extensions:
BUILD_MONAI=1 pip install git+https://github.com/Project-MONAI/MONAI#egg=MONAI
this command will download and install the current master branch of MONAI from GitHub.
This documentation website by default shows the information for the latest version.
Option 2 (editable installation):¶
To install an editable version of MONAI, it is recommended to clone the codebase directly:
git clone https://github.com/Project-MONAI/MONAI.git
This command will create a
MONAI/ folder in your current directory.
You can install it by running:
cd MONAI/ python setup.py develop
or, to build with MONAI Cpp/CUDA extensions and install:
cd MONAI/ BUILD_MONAI=1 python setup.py develop # for MacOS BUILD_MONAI=1 CC=clang CXX=clang++ python setup.py develop
To uninstall the package please run:
cd MONAI/ python setup.py develop --uninstall # to further clean up the MONAI/ folder (Bash script) ./runtests.sh --clean
Alternatively, simply adding the root directory of the cloned source code (e.g.,
/workspace/Documents/MONAI) to your
and the codebase is ready to use (without the additional features of MONAI C++/CUDA extensions).
Validating the install¶
You can verify the installation by:
python -c 'import monai; monai.config.print_config()'
If the installation is successful, this command will print out the MONAI version information, and this confirms the core modules of MONAI are ready-to-use.
MONAI version string¶
The MONAI version string shows the current status of your local installation. For example:
MONAI version: 0.1.0+144.g52c763d.dirty
0.1.0indicates that your installation is based on the
+144indicates that your installation is 144 git commits ahead of the milestone release.
g52c763dindicates that your installation corresponds to the git commit hash
dirtyindicates that you have modified the codebase locally, and the codebase is inconsistent with
Make sure you have installed the NVIDIA driver and Docker 19.03+ for your Linux distribution. Note that you do not need to install the CUDA toolkit on the host, but the driver needs to be installed. Please find out more information on nvidia-docker.
Assuming that you have the Nvidia driver and Docker 19.03+ installed, running the following command will download and start a container with the latest version of MONAI. The latest master branch of MONAI from GitHub is included in the image.
docker run --gpus all --rm -ti --ipc=host projectmonai/monai:latest
You can also run a milestone release docker image by specifying the image tag, for example:
docker run --gpus all --rm -ti --ipc=host projectmonai/monai:0.1.0
Installing the recommended dependencies¶
By default, the installation steps will only download and install the minimal requirements of MONAI. Optional dependencies can be installed using the extras syntax to support additional features.
For example, to install MONAI with Nibabel and Scikit-image support:
git clone https://github.com/Project-MONAI/MONAI.git cd MONAI/ pip install -e '.[nibabel,skimage]'
Alternatively, to install all optional dependencies:
git clone https://github.com/Project-MONAI/MONAI.git cd MONAI/ pip install -e '.[all]'
To install all optional dependencies for MONAI development:
git clone https://github.com/Project-MONAI/MONAI.git cd MONAI/ pip install -r requirements-dev.txt
Since MONAI v0.2.0, the extras syntax such as
pip install 'monai[nibabel]' is available via PyPI.
The options are
[nibabel, skimage, pillow, tensorboard, gdown, ignite, torchvision, itk, tqdm]
which correspond to
pip install 'monai[all]'installs all the optional dependencies.