The unflinching list
This quest has spent five tracks selling MLX. This lesson is the calibrating opposite — what MLX is not good at, what's missing, what's still rough as of 2026-05. Use it to set realistic expectations and to know which limitations are likely to close versus which are structural.
The linalg gap
MLX's mx.linalg module is much smaller than NumPy's or PyTorch's. Notable absences as of mlx 0.31.x include:
det— matrix determinant. Yes, missing. You compute it via the diagonal of LU decomposition or via SVD eigenvalues if you need it.lstsq— least-squares solver. Workaround viasolveon the normal equations or via SVD pseudoinverse.matrix_rank,matrix_exp,slogdet,cond— convenience functions you'd use for numerical analysis. Not in MLX core.- The basic decompositions (
cholesky,qr,svd,lu,eig) are in MLX. The bones are there; the convenience layer isn't.
If your work involves heavy linear algebra beyond ML training, MLX may not be enough. NumPy + your CPU may be the right tool for that part of the pipeline.
Documentation that lags the codebase
MLX's docs are accurate but incomplete. The official docs at ml-explore.github.io/mlx/ cover most APIs but lag behind the latest releases by weeks to months. For frontier features, the truth is in the source code (mlx-lm's GitHub repo) and the release notes — not the docs.
Distributed training that's still early
JACCL (covered briefly in prod.lesson6) is the active research area for MLX distributed training across Thunderbolt-connected Macs. As of 2026-05 it's macOS 26.3+ only and not yet drop-in for the PyTorch distributed-training stack. If you're training across multiple machines today, PyTorch + DeepSpeed on NVIDIA is still the practical answer.
CUDA backend that's incomplete
Since v0.27, mlx has a CUDA backend on Linux for cross-platform inference. As of 2026-05 it's functional but behind the Apple Silicon path on coverage and performance. Use it when you need MLX-shaped code to run somewhere other than Mac, but don't expect parity with the native Apple Silicon experience.
Smaller library ecosystem than PyTorch
The PyTorch ecosystem has thousands of third-party libraries — vision, audio, RL, robotics, scientific computing — that simply don't exist for MLX. Some of the gaps are filled by MLX-native packages (mlx-vlm, mlx-audio); others require you to use NumPy/PyTorch alongside MLX in a hybrid pipeline.
What MLX is, despite all this
The right summary is: MLX is the best framework for serving and fine-tuning LLMs on Apple Silicon, and a credible framework for general ML research on Apple Silicon. It is not yet the right framework for heavy numerical analysis, multi-machine distributed training, or use cases that depend on the long tail of PyTorch ecosystem libraries. Knowing where the line is means you reach for MLX where it's strong and reach for something else where it isn't — without confused expectations either way.