Skip to main content

FreeToken Wants to Put Frontier MoE Models on Your Edge Machine

Open Source Factory

FreeToken Wants to Put Frontier MoE Models on Your Edge Machine

A new serving engine treats your GPU, CPU, RAM, and bandwidth as one system. The promise is big. The useful details are in the plumbing.
August 2026 · FreeToken · official claims labeled as such
local AIMoEinferenceopen sourceagents

Large open-weight models keep getting easier to download and harder to run. The total parameter count says one thing; the machine in front of you says another. A model may have hundreds of billions of parameters while activating only a subset of its experts for each token, but the inactive weights still have to live somewhere.

FreeToken, an open-source project from FlashML, is built for that awkward gap between a normal desktop and a datacenter. It is not a magic compression trick. It is a serving engine that tries to make uneven hardware work as a team.[1][2]

FreeToken desktop console
The official repository's desktop console screenshot. FreeToken provides a GUI as well as a command-line installation path.[1][3]

The problem is not only VRAM

When people ask whether a local machine can run a large MoE model, they usually ask how much VRAM it needs. That is only the first question. The runtime also has to decide which expert weights stay on the GPU, which ones sit in system memory, and when data should cross the connection between them.

FreeToken's paper describes a personal machine as an elastic inference platform made from several kinds of resources. Its execution policy changes the placement of computation and model state according to the bandwidth actually available, rather than assuming one fixed offloading strategy.[2]

The short version: FreeToken does not make a 284B model small. It tries to make a heterogeneous machine useful enough to serve one by keeping the right data close to the compute.

What is inside the engine?

The project lists bandwidth-adaptive CPU-GPU co-execution, double-buffered prefill streaming, global LRU expert caching, graph-compatible execution, and an FTW fast weight format.[1] It also supports runtime VRAM reallocation between expert caches and KV memory without restarting the engine or reloading the weights.[1]

That last part matters in practice. A short chat and a long coding task do not put the same pressure on memory. A runtime that can rebalance its VRAM while it is working has a better chance of surviving a changing workload than one built around a single fixed layout.

Why coding agents are a specific target

An autonomous coding session is not a clean benchmark prompt. The agent reads files, calls tools, edits its context, and asks the model to continue. If the engine recomputes the entire context after every tool call, the user pays for that repetition in latency.

FreeToken's repository describes semantic anchor checkpoints for recurrent state and KV caches. The stated goal is to let context edits, including tool calls and thinking blocks, avoid redundant recomputation.[1] The same repository lists Anthropic- and OpenAI-compatible APIs for coding and tool-calling agents.[1]

That is the part I find more interesting than a single tokens-per-second number. The runtime is being shaped around how agents actually behave.

How far does the official demo go?

The paper says FreeToken supports more than 20 MoE models and real coding or tool-using agents across hardware ranging from an 8GB laptop GPU to a single workstation GPU.[2] Its examples include a 35B model on a laptop, a 284B model on a gaming desktop, and a 753B GLM-5.2 model on one workstation GPU.[2]

These are official system claims, not a guarantee for every computer.

The repository names DeepSeek-V4-Flash, Qwen3.6-35B-A3B, and GLM-5.2 among its supported model families, with formats including MXFP4, NVFP4, FP8, and BF16.[1] Actual results will depend on the model, quantization, system memory, interconnect, and workload. A model loading successfully is not the same as an interactive agent feeling responsive.

Free download does not mean zero trade-offs

FlashML's official site describes FreeToken as a free Windows and Linux download with a desktop panel for downloading models, running them locally, and tuning the engine.[3] The repository documents this installation route:

uv pip install "freetoken[accel]"

Free software removes a subscription from the equation. It does not remove the cost of memory, storage, heat, electricity, or patience. Large-model offloading can make a model runnable while still leaving bandwidth as the bottleneck.

There is also a practical distinction between supported and comfortable. The former means the stack can load and execute a model. The latter means you can use it for a real task without waiting long enough to forget what you asked.

FreeToken versus a fixed offload runtime

QuestionWhat FreeToken is trying to do
Memory placementMove computation and model state across GPU memory, system RAM, and CPU execution based on available bandwidth.
Expert reuseCache frequently used experts so repeated access does not always require a full transfer.
Agent contextReuse semantic checkpoints and KV state after context edits such as tool calls.[1]
IntegrationExpose Anthropic- and OpenAI-compatible APIs for existing coding and tool-calling agents.[1]

How I would test it

  1. Download the build from the official site and select a supported MoE model.[1][3]
  2. Record the model format, prompt length, first-token latency, sustained generation speed, and peak memory.
  3. Run the same short prompt three times to see whether caching changes the result.
  4. Repeat with a small coding task that reads a file and makes one tool call.
  5. Compare the complete workflow with your current local runtime, not only the loading screen.
Do not call a model “fast” until it is fast at the task you actually want to do.

My take

FreeToken is interesting because it treats local inference as a systems problem. The GPU is not the whole computer, and VRAM capacity is not the same thing as usable throughput. That sounds obvious, but many local runtimes still make the user solve the placement problem by hand.

The sensible expectation is not that a desktop suddenly becomes a datacenter. It is that some MoE models that were previously impractical may become testable, with bandwidth replacing raw capacity as the next bottleneck. The agent-state caching work gives the project a reason to exist beyond a flashy model-loading demo.

I would start small, measure the whole workflow, and keep the claims tied to the hardware and model you actually tested.

Sources
[1] FreeToken GitHub repository
[2] FreeToken: Efficient Edge-Native MoE Serving with Bandwidth-Adaptive Execution, arXiv:2608.16157
[3] FlashML FreeToken official site

Official system claims are identified as claims from the project or paper. No independent performance result is presented here.

Related on this blog: Apple's M5 Ultra Mac Studio: A Real Local AI Machine, at Last · Xiaomi AI Cube: 120B Local Models at 4.5× DGX Spark's Bandwidth

Comments