openvino
openvino copied to clipboard
[Feature Request]: Add Support for `MLX` Frontend
Request Description
I am writing to propose the inclusion of support for the MLX frontend in the OpenVINO toolkit.
Issue submission checklist
- [X] The feature request or improvement must be related to OpenVINO
Hi @NripeshN,
It is quite interesting. I see it is young framework and already collected 28k stars in GitHub. Really great work!
However, is there any objective reason about why research scientist and engineers will select MLX framework for training new models instead of PyTorch? We observe PyTorch to keep a trend despite some new frameworks like JAX, MindSpore made attempts to accelerate training, etc. but anyway scientists select PyTorch. That seems a fact. So our current efforts are absolutely concentrated around PyTorch models support.
In the meantime, we are always open and welcome to our external contributors who want to add new frontend. We can provide more details about how to do this and support this contribution.
Best regards, Roman
is there any objective reason about why research scientist and engineers will select MLX framework for training new models instead of PyTorch?
Hi @rkazants I think this comment https://github.com/ml-explore/mlx/issues/12#issuecomment-1843956313 explains this in detail. I'd love to contribute and try add this new frontend. Could you please provide me more details to do so?
Hi @rkazants I think this comment ml-explore/mlx#12 (comment) explains this in detail. I'd love to contribute and try add this new frontend. Could you please provide me more details to do so?
@NripeshN, cool! Give me some time and I will be back with instructions.
Best regards, Roman
@NripeshN, thank you for your interest!
Could you elaborate a bit on proposed workflow and technical side of the proposal? I suppose that we can catch the compute graph from MLX at the same point when mx.eval
or mx.compile
is called. So it wouldn't suppose that we need to trace something at the level of OpenVINO frontend, and graph representation is provided by MLX itself instead. Right? Could you point to some description that gives the understanding how this graph looks like? Does it have C++ or Python API to access the nodes?
@NripeshN any updates on the question above?