File tree Expand file tree Collapse file tree 3 files changed +19
-9
lines changed
Expand file tree Collapse file tree 3 files changed +19
-9
lines changed Original file line number Diff line number Diff line change 88 runs-on : ubuntu-latest
99 strategy :
1010 matrix :
11- # TF didn't support 3.13, add when supported
12- python-version : ['3.9', '3.11', '3.12']
13- # currently there is conflict between tf, oneflow and paddle in protobuf versions.
11+ python-version : ['3.10', '3.11', '3.13']
12+ # there was (and likely still is) conflict between tf, oneflow and paddle in protobuf versions.
1413 # cupy is not tested because it demands gpu
1514 # oneflow testing is dropped, see details at https://github.com/Oneflow-Inc/oneflow/issues/10340
16- # paddle was switched off because of divergence with numpy in py3.10, paddle==2.6.1
17- frameworks : ['numpy pytorch tensorflow jax']
15+ # paddle testing is dropped because of divergence with numpy in py3.10, paddle==2.6.1
16+ frameworks : ['numpy pytorch tensorflow jax mlx ']
1817 # The last pytensor release for 3.9 does not have a pin to numpy < 2, but not compatible with numpy 2,
1918 # so we skip it in testing
2019 include :
Original file line number Diff line number Diff line change @@ -311,16 +311,24 @@ Einops works with ...
311311- [ tinygrad] ( https://github.com/tinygrad/tinygrad ) (community)
312312- [ pytensor] ( https://github.com/pymc-devs/pytensor ) (community)
313313
314- Additionally, einops can be used with any framework that supports
314+
315+
316+ ``` python
317+ from einops import rearrange
318+ = > from einops.array_api import rearrange
319+ ```
320+
321+ But actually it is even better: einops can be used with * any* framework that supports
315322[ Python array API standard] ( https://data-apis.org/array-api/latest/API_specification/index.html ) ,
316- which includes
323+ to name a few:
317324
318325- numpy >= 2.0
319326- [ MLX] ( https://github.com/ml-explore/mlx ) # yes, einops works with apple's framework
320327- [ pydata/sparse] ( https://github.com/pydata/sparse ) >= 0.15 # and works with sparse tensors
321328- [ cubed] ( https://github.com/cubed-dev/cubed ) # and with distributed tensors too
322329- [ quantco/ndonnx] ( https://github.com/Quantco/ndonnx )
323- - recent releases of jax and cupy.
330+ - jax
331+ - cupy
324332- dask is supported via [ array-api-compat] ( https://github.com/data-apis/array-api-compat )
325333
326334
Original file line number Diff line number Diff line change @@ -34,8 +34,11 @@ def main():
3434 "paddle" : ["paddlepaddle" ],
3535 "oneflow" : ["oneflow==0.9.0" ],
3636 "pytensor" : ["pytensor" ],
37- "mlx" : ["mlx" ],
3837 }
38+ if sys .platform == "darwin" :
39+ framework_name2installation ["mlx" ] = ["mlx" ]
40+ if sys .platform .startswith ("linux" ):
41+ framework_name2installation ["mlx" ] = ["mlx[cpu]" ]
3942
4043 usage = f"""
4144 Usage: python -m einops.tests.run_tests <frameworks> [--pip-install]
You can’t perform that action at this time.
0 commit comments