Easily Parse TFLite Models with Python
tflite package parses TensorFlow Lite (TFLite) models (
*.tflite), which are built by TFLite converter with the help of FlatBuffers. For background, please refer to Introducing TFLite Parser Python Package.
Simply install via pip. This package requires
numpy which should be installed automatically.
pip install tensorflow==1.14.0 pip install tflite==1.14.0.post1
It would be better if you use a correct version, where the mapping is as below. Since
2.0.1, we don’t need
.post? suffix, so we can keep this version map simple. If you notice that some version is missing, please consider contribute it! :)
|TensorFlow package version||tflite package version|
The package can be imported with easy import or original import, where the difference is how many
import you write - no functionality divergence. For supported interfaces, please refer to document page.
Easy Import (Recommanded)
Easy import enables developers using parsing functionality wich one single
import tflite. This is achieved by importing classes and functions of one submodules into top module directly.
MobileNet parsing example shows how to parse model with
import tflite ONLY ONCE.
You can use this package just like the newly FlatBuffers generated one (example) to avoid any break of your legacy code.
from tflite.Model import Model # use Model
The original generated package needs to import every classes by hand (see this) which is pretty annoying.
As the operator definition may change across different TensorFlow versions, this package needs to be updated accordingly. If you notice that the package is out of date, please feel free to contribute new versions. This is pretty simple, instructions as below.
- Fork the repository, and download it.
- Install additional depdendency via
pip install -r requirements.txt
- Generate the code for update. Tools have been prepared, there are prompt for actions.
schema.fbsfor a new version.
- Update the classes and functions import of submodules.
- Update the versioning in setup.py.
- Build and Test (simply
pytest) around. Don’t forget to re-install the newly built
tflitepackage before testing it.
- Push your change and open Pull Request.
- The maintainer will take the responsibility to upload change to PyPI when merged.
Apache License Version 2.0 as TensorFlow’s.
schema.fbs is obtained from TensorFlow directly. Maintainer of this package had tried to contact TensorFlow maintainers for licensing issues, but received no reply. Ownership or maintainship is open to transfer or close if there were any issue.