Back to directory

mlx-flash

A weight-streaming layer for Apple's MLX framework that runs language models larger than a Mac's RAM by loading weights from SSD as each layer executes, without quantizing them.

mlx-flash

mlx-flash wraps a model's own layers in a streaming proxy so that, rather than loading every weight into memory up front, weights are read from SSD as each layer runs, using the model's original precision instead of an additional quantization pass. A predictive scheduler estimates the bandwidth the next layer will need while the current layer is still computing on the GPU, and paces reads with a token-bucket mechanism to keep GPU slowdown small.

The project reports running models such as a 30B model on 16GB of memory and 70B-class models on 32GB, inspired by Apple Research's LLM in a Flash paper, and states that its fused linear operator is numerically identical to MLX's own, so output does not diverge from a non-streamed run.

It is written in Python under the MIT license.

More in Inference

See all 770
  • OpenDecision

    deepanwadhwa.github.io

    An open-source Python package that answers typed questions about application state or documents using a local natural-language-inference model, returning structured choice, score, yes/no or evidence-relation values instead of free text.

  • Lifeboat

    iterate.ai

    A local inference server that puts an OpenAI- and Anthropic-compatible API in front of open-weight language models running on hardware you control, from a laptop to a GPU cluster.

  • Claude S40

    github.com

    An unofficial Claude chat client for 2007-era Nokia Series 40 phones, built as a Java ME app plus a small Go relay server, with web search, reading mode and saved chats.