ATRIUMsearch → argument graph
Article · 2026-08-18 · 6 moments

The New American AI Model Designed to be Customized

In this article, we will work through the various choices Thinking Machines made while building Inkling. ✦ AI generated

01
Mechanism

Inkling alternates 55 sliding-window layers and 11 full-attention layers in a 5:1 ratio, allowing it to support a one-million-token context window where long-range information travels through the sparse full-attention layers while most layers process only local context cheaply.

Inkling's attention mechanism uses mostly local sliding-window layers with a smaller set of full-attention layers interleaved, making a million-token context window computationally feasible while still allowing long-range information flow.

transcript

Thinking Machines: Inkling supports a context window of one million tokens, and a trillion comparisons per layer across 66 layers is far beyond what any reasonable amount of hardware can deliver. This is where a sliding-window layer restricts each token to a fixed number of recent tokens rather than everything before it. Inkling alternates between sliding-window layers and full-attention layers at a ratio of 5:1. Integration notes published by the vLLM project put concrete numbers on the split, describing the 66 layers as 55 sliding-window layers and 11 full-attention layers. Information from far away travels through those eleven full layers. For example, picture a fact at token 200 that matters for a prediction at token 900,000. In layer 6, the first full-attention layer, the representation at position 900,000 can reach back and pick up that fact directly. From there, it rides forward within the local representations, is refreshed at layer 12, again at layer 18, and so on. The long-range path exists on roughly one layer in six, and the other five handle nearby context at a fraction of the price.

02
Mechanism

Inkling processes images and audio inline without separately pretrained encoders, converting audio via dMel rounding and images via 40x40 pixel patches through a lightweight hMLP stem, with all components trained from scratch alongside the language model.

Inkling handles images and audio without dedicated pretrained encoders, using simple inline conversions (dMel for audio, patch stems for images) that are trained together with the rest of the model from scratch.

transcript

Thinking Machines: Everything so far concerns text moving through the model. Images and audio have to get in first, and Inkling accepts both without a separately trained encoder standing in front of it. Sound arrives as a mel spectrogram, which is a standard way of representing audio as a grid of numbers. The dMel method then rounds each of those loudness values to one of a fixed set of levels, in the same way you might round 0.73 to 0.7. That is the entire conversion. No separate audio model needs training beforehand, because rounding numbers requires no training. In the case of images, an image is cut into square patches measuring 40 by 40 pixels. A 400 by 400 pixel image therefore becomes 100 patches. Each patch passes through a small four-stage network called an hMLP stem, which combines the pixels within that patch and processes each patch independently of every other one. Both then pass through a lightweight conversion layer and join the text tokens in a single sequence, processed by the same 66 layers we have been talking about. Thinking Machines states that these multimodal components were trained from scratch on general-domain data, meaning they learned alongside the rest of the model rather than arriving pretrained.

03
Mechanism

Inkling separates the cost of storing a model from the cost of running it by activating only 6 of 256 experts per token, processing roughly 41 billion of its 975 billion parameters at a time.

Inkling uses a Mixture-of-Experts architecture with 975 billion total parameters but only about 41 billion active per token, making it affordable to run despite its enormous size.

transcript

Thinking Machines: Inkling separates the cost of storing a model from the cost of running it. This is the reason a model this large is affordable to use. In an ordinary transformer, the feed-forward step in each layer is a single network, and every token passes through all of it. If that network holds 5 billion parameters, then every token processed involves all 5 billion. Inkling replaces that single network with 256 smaller ones, called experts. For each token, a selection step picks six of the 256. Only those six run, and the remaining 250 sit idle for that token while handling other tokens instead. This design pattern is called Mixture of Experts, and Thinking Machines states that their version largely follows the approach published by DeepSeek. The total across the whole model is 975 billion parameters, and the count involved in processing any single token is roughly 41 billion. That is about 4 percent of the model running at a time.

explains mechanism · 1

04
Mechanism

Inkling's reasoning effort is a learned setting between 0 and 1, trained via reinforcement learning so the model associates higher effort with longer chain-of-thought generation, allowing it to match NVIDIA's Nemotron 3 Ultra on Terminal Bench 2.1 while producing roughly a third of the tokens.

Inkling's effort parameter (0 to 1) is trained into the model via reinforcement learning, controlling how much reasoning it does before answering, and at higher settings it achieves comparable benchmark performance to NVIDIA's Nemotron 3 Ultra with far fewer tokens.

transcript

Thinking Machines: Effort is a number between 0 and 1. The documented presets run from 0 for none, through 0.1 for minimal and 0.2 for low, then 0.7 for medium, 0.9 as the default, and 0.99 at the top. The spacing between those values is uneven, which is a hint that the number represents a learned response rather than a token allowance. Thinking Machines trained Inkling's response to the effort setting during reinforcement learning, a training stage where the model produces complete attempts at tasks and receives a score for each attempt, then adjusts toward whatever scored well. During that stage, Thinking Machines varied the effort message across attempts while also adjusting the cost charged per token generated: An attempt labelled high effort could produce lengthy working-out without much penalty. An attempt labelled low effort was charged heavily for every token, so short answers scored better. Across many attempts, the connection between the message and the profitable length was learned. Higher effort encourages more reasoning without guaranteeing a longer response or a better one on any single sample. Sweeping the effort setting across its range produces a curve of score against tokens generated. On the coding benchmark Terminal Bench 2.1, Inkling reaches the same score as NVIDIA's Nemotron 3 Ultra while producing roughly a third as many tokens.

05
Mechanism

Inkling uses relative position encoding instead of the standard RoPE, encoding the distance between token pairs rather than absolute positions so that pairs at any distance use learned values the model has already seen during training.

Thinking Machines chose a relative position encoding scheme over the now-standard RoPE, because it lets the model handle token distances far beyond what appeared in training without extrapolation problems.

transcript

Thinking Machines: Thinking Machines picked an older technique over the current standard. This is due to the lengths the model never saw during training. Almost every recent open model uses Rotary Position Embedding, shortened to RoPE. Each token's query and key are treated as points that get rotated by an angle proportional to that token's position in the sequence. However, those rotation angles were only ever encountered at positions the model actually trained on. If training used sequences up to 32,000 tokens, then every angle the model learned to interpret came from that range. If we ask it about position 900,000, the angle involved falls outside anything it has experience with. Inkling uses a relative scheme in the style of Shaw and colleagues. Rather than encoding where each token sits, this approach learns a value for each distance between two tokens and adds that value directly to the comparison score. For example, tokens at positions 5 and 9 are 4 apart. Tokens at positions 500,005 and 500,009 are also 4 apart. A relative scheme treats both pairs identically, because 4 is 4 wherever it occurs. Distances beyond some cutoff, say anything more than 128 apart, all share the same learned value, so a pair 900,000 tokens apart uses a value the model has seen countless times during training. Nothing has to be extrapolated. Thinking Machines states that this performed better and extrapolated better to longer sequences than RoPE in their testing.

06
Mechanism

Thinking Machines prevents routing collapse by adding a per-expert bias that shifts selection decisions but never affects output weighting, keeping expert usage balanced without injecting a competing gradient into training.

To avoid routing collapse, Inkling uses an auxiliary-loss-free load balancing method where a learnable bias nudges expert selection without interfering with the prediction gradient, keeping training objectives clean.

transcript

Thinking Machines: If we run that loop long enough, we can end up with a 256-expert layer where perhaps 20 experts handle nearly everything and the other 236 stay underdeveloped. This is called routing collapse. In other words, while we paid to store 256 experts, we got the capability of just 20. There is a second cost too. Since experts are usually spread across different machines, a machine holding four popular experts can become a bottleneck while its neighbours idle. The traditional fix for this adds a penalty to the training objective that grows when expert usage is uneven. This means training the model on two things at once: predicting the next token correctly, and keeping expert usage balanced. The trouble is that these two goals produce gradients pointing in different directions. Thinking Machines uses a method introduced by Wang and colleagues, which was also adopted by DeepSeek. This method removes the conflict entirely by keeping a separate bias value for each expert, which is just a small number added to that expert's score. The trick is where the bias gets applied. Expert 47 has been overloaded recently, so its bias has drifted down to −0.15. This drops its selection score below expert 88's, and expert 88 takes the slot instead. The bias changed which expert got picked. When expert 88's output is combined into the final result, it is weighted by 0.80, its original router score, with the bias left out. In other words, the bias affects selection only. It never touches the weighting, and it is updated by a simple counting rule that runs outside backpropagation entirely.

Highlight slides
Related episodes