NNI development environment supports Ubuntu 1604 (or above), and Windows 10 with Python3 64bit.
git clone https://github.com/Microsoft/nni.git
Note, if you want to contribute code back, it needs to fork your own NNI repo, and clone from there.
python3 -m pip install -U -r dependencies/setup.txt
python3 -m pip install -r dependencies/develop.txt
python3 setup.py develop
This installs NNI in development mode, so you don't need to reinstall it after edit.
Now, you can try to start an experiment to check if your environment is ready. For example, run the command
nnictl create --config examples/trials/mnist-pytorch/config.yml
And open WebUI to check if everything is OK
Nothing to do, the code is already linked to package folders.
- If
ts/nni_manager
is changed, runyarn watch
under this folder. It will watch and build code continually. Thennictl
need to be restarted to reload NNI manager. - If
ts/webui
is changed, runyarn dev
, which will run a mock API server and a webpack dev server simultaneously. UseEXPERIMENT
environment variable (e.g.,mnist-tfv1-running
) to specify the mock data being used. Built-in mock experiments are listed insrc/webui/mock
. An example of the full command isEXPERIMENT=mnist-tfv1-running yarn dev
.
Currently you must rebuild TypeScript modules with python3 setup.py build_ts after edit.
All changes are merged to master branch from your forked repo. The description of Pull Request must be meaningful, and useful.
We will review the changes as soon as possible. Once it passes review, we will merge it to master branch.
For more contribution guidelines and coding styles, you can refer to the contributing document.