* WIP: parameters cleanup * Removed debug output, fixed CLI * Fixed python objects conversion * Finally renamed mmap to share_weights * Fixed TF conversion from a file or a directory * Fixed obvious errors in unit tests * Deleted layouts from OVC. Fixed most of the fails in ovc unit tests (there are still failures) * Clenaup other references to layouts and fixed --version * Fixed case when two model files are passed in TF case * Fixed multiple model parts passing in ovc command line * Tests fixed, support of unnamed input in cli parser. * Remove convert_model from runtime. * Changed silent to verbose. * Removed transform param. * Removed example_input, share_weights from ovc cli tool. * Remove wrong change. * Test fix. * Code corrections. * Returned comment. * WA to fix process hanging after extension loading. * Removed not needed code. * Added comment. --------- Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>
Installation
Installing from PyPi
- Create a virtual environment and activate it, e.g.:
virtualenv -p /usr/bin/python3.7 .env3
source .env3/bin/activate
- Install openvino-dev package, it contains model conversion API:
pip install openvino-dev
This will download all requirements and will install MO in your current virtual environment. If you need only particular frameworks you can specify them manually as optional dependencies in square brackets. E.g. the command below will install dependencies to support ONNX* and TensorFlow2* models:
pip install openvino-dev[onnx,tensorflow2]
To enable support of MxNet* models run:
pip install openvino-dev[mxnet]
To enable support of all frameworks:
pip install openvino-dev[all]
By default, if no frameworks are specified, dependencies to support ONNX* and TensorFlow2* are installed.
Converting models
Setup development environment
If you want to contribute to model conversion API you will need to deploy developer environment. You can do that by following the steps below:
- Create virtual environment and activate it, e.g.:
virtualenv -p /usr/bin/python3.7 .env3
source .env3/bin/activate
- Clone the OpenVINO™ repository and change dir to model-optimizer
git clone https://github.com/openvinotoolkit/openvino
cd openvino/tools/mo/
- Install openvino-mo package for development:
pip install -e .
or run setup.py develop, result will be the same:
python setup.py develop
This will download all requirements and deploy model conversion API for development in your virtual environment: specifically will create *.egg-link into the current directory in your site-packages. As previously noted, you can also manually specify to support only selected frameworks :
pip install -e ".[onnx,tensorflow2]"
How to run unit-tests
- Run tests with:
python -m unittest discover -p "*_test.py" [-s PATH_TO_DIR]
How to capture unit-tests coverage
- Run tests with:
coverage run -m unittest discover -p "*_test.py" [-s PATH_TO_DIR]
- Build html report:
coverage html
How to run code linting
- Run the following command:
pylint openvino/tools/mo/ mo.py