~/satyajit

Inkling: an open-weights multimodal MoE built to be adapted

mdjsonmcp

2026-07-15 · 8 min · llm · mixture-of-experts · multimodal · reinforcement-learning · attention · explainer

Most model launches lead with a leaderboard. Thinking Machines Lab's Inkling does the opposite: the announcement states plainly that it is "not the strongest overall model," and is instead "designed for broad adaptation through fine-tuning." That framing is the right lens for everything below. Inkling is an open-weights, multimodal mixture-of-experts foundation model — 975B total parameters, 41B active — with text, image and audio in one stack and up to a 1M-token context. A smaller companion, Inkling-Small (276B total / 12B active), ships in preview. The pitch is a customizable base, not a frontier trophy.

What makes it worth a close read is the mechanics: an attention design tuned for long context, an encoder-free multimodal path, a reinforcement-learning run whose reward scaled log-linearly while the model's reasoning got shorter on its own, and a knob that lets you dial how many tokens the model spends per query. Let's take them in turn — and keep the honest caveats in view throughout.

The backbone: sparse experts, hybrid attention

Inkling is a 66-layer decoder-only transformer. Two forms of sparsity run through it. In the feed-forward path, every layer is a mixture-of-experts: 256 routed experts plus 2 shared experts, with 6 routed experts active per token. A sigmoid-based router with an auxiliary-loss-free load-balancing bias decides which six fire — the same "drop the aux loss, use a bias term" trick that has become standard for keeping expert utilization even without a loss that fights the main objective. The 2 shared experts are always on, giving every token a common backbone of computation. Net effect: only 41B of the 975B parameters do work on any given token.

The attention path is a hybrid: of the 66 layers, 55 are sliding-window (512-token) local and 11 are global — an interleaved 5:1 ratio — with 64 query heads tied to 8 KV heads, over a 6144-dim residual stream. Five cheap local layers pass for every one exact global layer — the same local/global bargain that makes long-context serving affordable in MiniMax's sparse attention and MiMo-V2-Flash.

Then a cluster of small but telling choices — the kind you only catch by reading the config, not the launch post:

None of these are headline features; together they read as the fingerprint of a team tuning the backbone for stable long-context training rather than chasing a benchmark. Scrub the stack to see both sparsities at once — which layers are global, and which experts a token lights up:

architecture · 66 layers · MoE + hybrid attentioncounts real · routing illustrative
attention per layer · sliding-window : global = 5 : 1 →sliding-windowglobal (1 of every 6)layer 18/66 · global · 8 KV headsglobal attentionrel. pos. emb · 8 KV headsshort conv after K/Vroutersigmoid · top-6256 routed experts (32 shown) · 6 active →2 shared experts · always on975B total · 41B active/token · auxiliary-loss-free load balancing
focus
layer 18 · global
layer index (drag)

Two sparsities stack. Down the depth, five sliding-window layers (cheap, local) pass for every one global layer (exact, full-range) — a 5:1 hybrid that keeps 1M-token attention affordable, the same local/global idea as MiniMax MSA and MiMo-V2-Flash. Inside each layer, the mixture-of-experts FFN routes the token to just 6 of 256 experts, with 2 shared experts always on — so only 41B of 975B parameters do work per token.

Encoder-free multimodal

The multimodal design is deliberately minimal: no separate vision or audio encoder. Instead every modality is turned into tokens the transformer reads directly. Audio becomes discrete dMel spectrogram tokens; images are cut into 40×40-pixel patches and lifted by a small four-layer hMLP patch encoder; all modalities land in the shared hidden space and flow through the same experts and attention. There's no bolted-on CLIP-style tower whose representation you have to align — the model learns text, image and audio in one backbone. That is part of why it's pitched as an adaptation base: fine-tuning touches one stack, not a federation of encoders.

Controllable effort — the signature move

Inkling can vary how much it "thinks." The system message plus a per-token cost let you trade accuracy for token spend: turn effort down and it answers tersely; turn it up and it reasons at length, approaching its ceiling. The headline result is on Terminal-Bench-2.1, where the lab reports Inkling reaching Nemotron-3-Ultra-equivalent accuracy at roughly one-third the generated tokens. Drag the effort knob and read the tie line — the same score sits about 3× further right on the reference curve:

controllable effort · Terminal-Bench-2.1illustrative curve
accuracy at this effort
54.1%
Inkling tokens
15k
Nemotron for same score
46k
Inkling spends
1/3 the tokens
0204060020k40k60k80kNemotron-3-Ultra (ref)Inklingmean generated tokens per task →accuracy %
effort knob (system message + per-token cost) — drag55%

Both curves climb toward the same ceiling — but Inkling gets there sooner. Read the tie line: at whatever score the effort knob lands on, the reference model needs roughly three times the tokens to match it. Turn effort down and you trade a little accuracy for a lot fewer tokens; turn it up and you approach the ~63.8%Terminal-Bench-2.1 plateau. The ~1/3-token figure is Thinking Machines' own measurement.

The efficiency framing matters more than any single point on the curve. A model that lets the caller choose the accuracy/latency trade-off, per request, is a different product from one with a fixed thinking budget — especially for the fine-tuning-and-deploy audience Inkling targets, who care about tokens-per-task cost at scale. (The curve shape above is illustrative; the ~63.8% Terminal-Bench-2.1 plateau and the ~1/3-token match are the real, vendor-reported anchors.)

The RL story: log-linear reward, self-shortening reasoning

Post-training leaned on large-scale asynchronous reinforcement learningover 30 million rollouts. Two findings stand out. First, the aggregate held-out eval reward rose log-linearly across those rollouts, climbing from 0.264 at the SFT-initialised checkpoint to 0.356 at release — a straight line on a log-rollouts axis, i.e. more RL compute kept paying off predictably rather than saturating. Second, and more surprising: with no brevity objective in the reward, the model's chain-of-thought became more concise on its own, "dropping grammatical overhead while remaining comprehensible." Reasoning compression emerged as a side effect of optimizing for correct answers. Drag the marker to watch reward climb as thought-length falls:

async RL · reward & reasoning compressionendpoints real · shape illustrative
rollouts so far
1M
held-out reward
0.319
chain-of-thought
2580 tok
0.260.300.3410K100K1M10M30MSFT init 0.264released 0.356aggregate held-out eval reward (log-linear in rollouts)rollouts (log) →chain-of-thought length — shrinks as reward climbs (emergent)2580 tokens
rollouts (drag) — 10K → 30M+reward 0.319

Two things happened at once over 30M+ rollouts of large-scale RL. Reward rose log-linearly — a straight line on this log-x axis, from an SFT-initialised 0.264 to the released 0.356— so more compute kept paying off predictably. And with no brevity reward in the objective, the model's chain-of-thought got shorter, dropping grammatical overhead while staying comprehensible. Both are Thinking Machines' own reported measurements.

This connects back to controllable effort: a model whose reasoning is naturally terser is cheaper to run at any accuracy target, and the effort knob then lets you push that further.

Training and release

Pretraining ran on 45 trillion tokens of mixed text, image, audio and video, optimized with Muon for the large matrix weights and Adam for everything else (weight decay coupled to the squared learning rate), on NVIDIA GB300 NVL72 systems. Alongside the standard weights, Thinking Machines released NVFP4 weights for Blackwell — the same 4-bit format NVIDIA used to train Nemotron. The release is genuinely open: weights on Hugging Face (both standard and NVFP4), an API on Tinker plus Together, Fireworks, Modal, Databricks and Baseten, day-one vLLM / SGLang / llama.cpp integration, and a public Playground.

Results — read them as vendor-reported

Here are the headline numbers from Thinking Machines' own suite (at high effort). Reasoning first:

Inkling — reasoning (vendor-reported, %)
AIME 2026
97.1%
GPQA-Diamond
87.2%
HLE (with tools)
46%
HLE (text only)
29.7%
050100

And the agentic / coding side, where the effort story is most relevant:

Inkling — agentic & coding (vendor-reported, %)
SWEBench-Verified
77.6%
BrowseComp
77.1%
MCP-Atlas
74.1%
Terminal-Bench-2.1
63.8%
020406080

Multimodal and safety round it out: VoiceBench 91.4%, MMAU 77.2%, MMMU-Pro 73.5%, Global-MMLU-Lite 88.7%; on safety, FORTRESS Benign 95.9% / Adversarial 78.0% and StrongREJECT 98.6%. Inkling-Small tracks the big model closely on several evals (HLE text-only 29.6%, HLE with tools 46.6%).

The take

Inkling's most refreshing feature is its honesty about what it is. Thinking Machines did not build the model to top a leaderboard; they built a broad, open, multimodal base and tuned the ergonomics of adapting and running it — controllable effort so callers own the accuracy/cost trade-off, a 5:1 local/global attention hybrid and relative positions so 1M-token context stays affordable, an encoder-free multimodal path so fine-tuning touches one stack, and NVFP4 weights so it deploys cheaply on Blackwell. The two research results worth remembering are the log-linear RL reward (evidence that the post-training recipe kept scaling) and the emergent reasoning compression (shorter chains-of-thought with no brevity reward) — both their own measurements, both the kind of thing open weights will let others probe. Judge it not as "is this the best model" — the lab already answered no — but as a base you can take, fine-tune, and serve. On that axis, an open 975B/41B MoE with these ergonomics is a substantial thing to hand the community.


Built on Thinking Machines Lab's Inkling announcement and model card, plus the Hugging Face release. All benchmark and scaling figures are vendor-reported; the interactive diagrams are illustrations of the mechanism, with real endpoints noted inline. Related reading: mixture-of-experts from scratch, NVFP4 training, MiniMax sparse attention, MiMo-V2-Flash, trillion-scale RL, the Muon optimizer, and how LLM inference works.

Cite this article

For attribution, please use the following reference or BibTeX:

Satyajit Ghana, "Inkling: an open-weights multimodal MoE built to be adapted", ai.thesatyajit.com, July 2026.

bibtex
@misc{ghana2026inkling,
  author = {Satyajit Ghana},
  title  = {Inkling: an open-weights multimodal MoE built to be adapted},
  url    = {https://ai.thesatyajit.com/articles/inkling},
  year   = {2026}
}
share