@openmined/threepio
v0.2.0
Published
A multi-language library for translating commands between PyTorch, TensorFlow, and TensorFlow.js
Downloads
6
Readme
Threepio
Threepio makes it dead simple to translate commands between machine learning frameworks such as PyTorch, Tensorflow.js, and Tensorflow Python. It acts as a core component in PySyft and syft.js. Some of the life changing features this library provides are:
- :robot: Automatic bi-directional translation between same named commands
add
,abs
, etc. - :brain: Smart argument mapping between automaticaly translated commands
- :repeat: Word level translation between libraries
- :wrench: Custom command translation
- :herb: One to many command translation
- :zap: Translation of tensor methods (in progress)
- :mag: Support for fuzzy match in automatic command translation (in progress)
- :card_index_dividers: Support for framework versioning in automatic translation (in progress)
- :mage_man: Support for automatic argument type casting (tensorflow tensor -> pytorch tensor) (in progress)
Threepio is made up of three main components:
- :spider: Documentation Crawler - This generates the majority of our automatic translations for Threepio
- :snake: Python translation library - This is the python library for using threepio
- :coffee: JS translation library - This is the javascript library for using threepio
And has clients in both Python and Javascript!
Installation
Depending on your language, installation will differ.
Python
Use the package manager pip to install threepio.
pip install 3p0
Usage
Please check out our usage document for further guidelines.
Javascript
Use the package manager npm to install threepio.
npm install @openmined/threepio
Usage
Please check out our usage document for further guidelines.
Support
For support in using this library, please join the #lib_threepio Slack channel. If you'd like to follow along with any code changes to the library, please join the #code_threepio Slack channel. Click here to join our Slack community!
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
Contributors
Please make sure to fill this section in with all former and current contributors to the project. Documentation on how to do this is located here.