You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@j-emberton this is definitely in scope for array-api-compat. If you want to work on this, the best thing to do would be to fork this repository and make a pull request.
Also note that partial support is OK to begin with, so if there's some function that's difficult to support, we can skip it for now. The development notes in the docs are a good place to start for contributing https://data-apis.org/array-api-compat/dev/index.html
Also there has been some upstream work in mlx to support the array API (e.g., ml-explore/mlx#1289), so you may want to synchronize with them to see what their plans are. If they are planning to add full support directly to mlx, that is preferable to adding support to the compat library. But if there are things they can't support easily because of backwards compatibility, then we may need a compat wrapper.
Based on the discussion at ml-explore/mlx#1289, the MLX folks are open to having full compatibility in MLX itself, so any work on upstream incompatibilities should go there. For now, let's just add helper functions for MLX to array-api-compat.
There is limited support for the boolean indexing there was a issue for that [BUG] Boolean Indices not supported ml-explore/mlx#860, we may contact mlx if they want to try and implement it, or I can try to do it myself or make a wrapper.
I think before moving forward we should see how to handle these blockers, also for making a doc will notion be fine for future updates as these blockers were important and limited so i posted them here with the kind of workarounds I tried in my previous pr :)
3. There is limited support for the boolean indexing there was a issue for that [BUG] Boolean Indices not supported ml-explore/mlx#860, we may contact mlx if they want to try and implement it, or I can try to do it myself or make a wrapper.
(for those getting notifications on this issue) The previous PR reference is #449.
think before moving forward we should see how to handle these blockers
I don't think we necessarily have to decide on these blockers first. On the contrary, I think it's better to start with simple(-er) things, and have a general overview of what is compliant and what isn't. Then have a clear idea of what passes the test suite, and proceed with triaging test suite failures. Essentially, this comment.
Hi I have made a tracking issue and added some of the spec details and results I got by running the tests at #450.
Can you maybe look at it, and maybe suggest next steps, as some of the future tests are dependent on them, should I run more tests and add more sections but some of the tests fail because of issues in MLX I discovered with my testing till now which maybe not that usefull I guess, or maybe we should try to fix these issues first before moving to other sections :)
Activity
lucascolley commentedon Jul 24, 2024
x-ref ml-explore/mlx#48
asmeurer commentedon Jul 24, 2024
@j-emberton this is definitely in scope for array-api-compat. If you want to work on this, the best thing to do would be to fork this repository and make a pull request.
Also note that partial support is OK to begin with, so if there's some function that's difficult to support, we can skip it for now. The development notes in the docs are a good place to start for contributing https://data-apis.org/array-api-compat/dev/index.html
asmeurer commentedon Aug 5, 2024
Also there has been some upstream work in mlx to support the array API (e.g., ml-explore/mlx#1289), so you may want to synchronize with them to see what their plans are. If they are planning to add full support directly to mlx, that is preferable to adding support to the compat library. But if there are things they can't support easily because of backwards compatibility, then we may need a compat wrapper.
asmeurer commentedon Aug 7, 2024
Based on the discussion at ml-explore/mlx#1289, the MLX folks are open to having full compatibility in MLX itself, so any work on upstream incompatibilities should go there. For now, let's just add helper functions for MLX to array-api-compat.
asmeurer commentedon Nov 15, 2024
I don't know if the upstream is doing anything here, but it might be worth revisiting this if they aren't. MLX is a useful library.
aaishwarymishra commentedon Jul 13, 2026
device()/to_device()device(to_device(x, dev)) == devid(array) -> deviceregistry__getitem__)mx.array.__getitem__and fallback to NumPyfloat64on GPU@ev-br I have compiled 3 main blockers for the mlx implementation first.
I think before moving forward we should see how to handle these blockers, also for making a doc will notion be fine for future updates as these blockers were important and limited so i posted them here with the kind of workarounds I tried in my previous pr :)
rgommers commentedon Jul 14, 2026
See array_api_extra.apply_where and how that is used in SciPy.
ev-br commentedon Jul 17, 2026
(for those getting notifications on this issue) The previous PR reference is #449.
I don't think we necessarily have to decide on these blockers first. On the contrary, I think it's better to start with simple(-er) things, and have a general overview of what is compliant and what isn't. Then have a clear idea of what passes the test suite, and proceed with triaging test suite failures. Essentially, this comment.
aaishwarymishra commentedon Jul 18, 2026
Hi I have made a tracking issue and added some of the spec details and results I got by running the tests at #450.
Can you maybe look at it, and maybe suggest next steps, as some of the future tests are dependent on them, should I run more tests and add more sections but some of the tests fail because of issues in MLX I discovered with my testing till now which maybe not that usefull I guess, or maybe we should try to fix these issues first before moving to other sections :)