Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Very much a draft, and code currently doesn't compile. Would address #32
I figured to kickstart onnx support I'd copy parts of burn's import library that would be needed here as well. I'm starting with graph_io given the logic will likely be exactly the same save for using luminal types (which admittedly I'm still learning).
Graph_io stores initializers and node input/output arguments, and maps the original names to some new name. At least with burn, it turned out better to handle each of those in one containing struct to deal with updating values and names for the associated nodes.
the logic will likely diverge a bit more once this gets to handling the nodes themselves, but the skeleton will likely be the same. This currently doesn't have any test data, I'm guessing that you want to do something similar to burn in that case and generate the test models python side, or did you have something else in mind for testing op support?
I'm hoping that most of this could split the shared logic into a new non-luminal/burn crate, as even if the logic for node handling is pretty different, there's a lot of shared boilerplate and code generation just getting to that point and testing the results.