Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor to support Native and Remote variants #53

Open
getnamo opened this issue Dec 2, 2019 · 2 comments
Open

Refactor to support Native and Remote variants #53

getnamo opened this issue Dec 2, 2019 · 2 comments
Assignees

Comments

@getnamo
Copy link
Owner

getnamo commented Dec 2, 2019

Motivation
It should be possible to switch the machine learning backend while keeping the unreal frontend api the same, allowing for a very flexible dev environment. By specifying an abstract UMachineLearningBaseComponent (https://github.com/getnamo/machine-learning-remote-ue4/blob/master/Source/MachineLearningBase/Public/MachineLearningBaseComponent.h) we can sub-class these components into remote, unreal python, and native variants. Depending on which backend is needed these should be swappable without any dev code changes.

From the server side we can also specify a base MLPluginAPI which wouldn't be tensorflow specific. This would open up Pytorch backends without any unreal frontend code change.

Having a remote server component would also enable linux/mac builds without restricting python/tensorflow versions to compatible ones with unrealenginepython. It would also enable remote ML on e.g. phone devices (native may support TFLite at some point).

Remote work

Native work
Intended to be inference focused initially

Tensorflow-ue4 Refactor

  • Use the UMachineLearningBaseComponent for this plugin's base class, enabling C++ and compatibility with other variants.
@getnamo getnamo self-assigned this Dec 2, 2019
@getnamo
Copy link
Owner Author

getnamo commented Dec 17, 2019

remote variant working, native pending

@getnamo
Copy link
Owner Author

getnamo commented Jun 29, 2020

Early refactor release with auto-server launch support: https://github.com/getnamo/tensorflow-ue4/releases/tag/1.0.0alpha2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant