-
Notifications
You must be signed in to change notification settings - Fork 29
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
Add ndonnx #150
Comments
If a package is full array API compatible, it doesn't need to add anything here. It will just work out of the box. As long as you define The only code in array-api-compat for libraries like JAX or NumPy 2.0 that are fully array API compatible is helper functions like If you anticipate packages needing an Otherwise, there's nothing really to add here. We could perhaps add a page to the documentation listing other array API compatible packages like ndonnx that aren't explicitly part of array-api-compat. |
I think this is main utility that would be beneficial. In particular, for ONNX export you cannot use any implicitly eager constructs part of the Array API standard (like |
You can make a PR for this if you like. Although it sounds like this is a special case of the behavior that was specified at data-apis/array-api#652. I wonder if we shouldn't try to make something more general. I'm also wondering if the proper way for libraries to handle this should be to catch Aside from that specific change, there haven't been any other specific lazy/eager things added to the standard, but there have been other discussions about potentially doing so (see data-apis/array-api#748 and data-apis/array-api#777). I wouldn't want to jump the gun and try to add any helper functions here for things that might later be standardized. |
I think something like this is reasonable. The problem with branching based on
Agreed! There are other valid reasons to branch such as where an ONNX operator exists that would more performantly/concisely express some application logic, but which is not directly in the Array API standard. |
Very nice, thanks for sharing @adityagoel4512! I think adding |
ndonnx is an ONNX-backed array library. It implements the Array API standard and support is actually directly in the main namespace (we are big fans of the standard). ndonnx enables users to export Array API compliant code to ONNX automatically, a process which traditionally required quite a lot of code duplication.
Since we don't need an array-api-compat wrapper for ndonnx, adding it here would be somewhat similar to the JAX approach - we also run array-api-tests over at ndonnx itself.
Would it be acceptable to add ndonnx here? Happy to contribute it myself.
The text was updated successfully, but these errors were encountered: