@huckiyang: https://x.com/huckiyang/status/2077625513384841679
Summary
Inkling, a 975B Mixture-of-Experts model (41B active) with 1M context and Apache-2.0 license, introduces a novel audio front end using a 7.9M parameter lookup table instead of a traditional encoder, achieving strong performance on speech tasks. The model was pretrained on 45 trillion tokens of text, images, audio, and video.
View Cached Full Text
Cached at: 07/16/26, 12:16 PM
Inkling’s Ear Is a 7.9M Lookup Table
@thinkymachines released Inkling this week: a 975B Mixture-of-Experts model (41B active), 1M context, Apache-2.0, pretrained from scratch on 45 trillion tokens of text, images, audio, and video. Plenty has been written about the benchmarks. The detail people keep coming back to as a speech researcher is small enough to miss: Inkling has no audio encoder.
Similar to other over 100B’s variants (or Thinky’s duplex interleave model), encoder is not needed per scaling law studies.
The entire audio front end is:
-
16 kHz mono audio becomes an 80-channel log-mel spectrogram, one frame per 50 ms hop
-
each mel bin is quantized to one of 16 levels (dMel, Bai et al. 2024)
-
each (bin, level) pair indexes one row of nn.Embedding(80 × 16 = 1280 → 6144)
-
the 80 rows are summed. That sum is the audio token.
That is about 7.9M parameters. No convolutions, no transformer tower, no projector. Audio enters at 20 tokens per second, straight into the same decoder that reads text. For contrast, a Whisper-style front end produces around 50 tokens per second and carries a roughly 100M-parameter encoder in front of them. One minute of speech costs 1,200 tokens; the 1M window could in principle hold almost 14 hours.
- Does a lookup table cost you quality?
Less than we expected. From the model post’s own eval table (thinking effort 0.99): AudioMC 56.6, where the next open-weights omni model reports 37.6. MMAU 77.2 and VoiceBench 91.4, both within striking distance of Qwen3.5 Omni-Plus (81.1 and 92.4). Gemini 3.1 Pro, closed, leads all three.
The numbers we trust more are the reproducible ones, from the Tinker cookbook recipes:
-
LibriSpeech: about 0.06 WER zero-shot, no audio-specific tuning
-
Medical ASR (EkaCare, Indian-accented dictation dense with drug names): WER 0.157 to 0.072 after 12 epochs of LoRA SFT, and medical-entity recall 0.806 to 0.915. It transcribes drugs that never appear in the train split.
-
Expresso emotion: speaking-style accuracy 0.361 to 0.852 (SFT, then GRPO with a style + WER reward), while WER improves from 0.095 to 0.044
The last one is the result we would have bet against. Sixteen levels per mel bin sounds too coarse for prosody. It is not. The representation carries both what was said and how it was said.
- The serving side is where it gets fun
In the prompt, a whole audio clip is one sentinel token. Before prefill it expands in place into f = 20 × seconds real positions, and from that point the decoder gives audio frames no special treatment: sliding-window and global attention interleaved 5:1, a learned relative bias instead of RoPE, and width-4 causal convolutions mixing every position with its three predecessors, text or audio alike.
The catch is state. One request now carries three different kinds of it: full-attention KV, sliding-window KV, and the short-conv state. SGLang serves all three out of a single radix cache with typed pages (the conv state borrows the pool originally built for Mamba models), and prefill-decode disaggregation ships all three. On a B200 node the day-0 stack reaches 71.7k input tokens per second at batch 32.
- What we could not close
The serving config types audio_mode as Literal[“dmel”, “flow”], and “flow” appears in no public document. The model card says this release outputs text only. My guess is an unexposed audio-output path, which would mean Inkling may eventually speak, not just listen. A guess, flagged as one.
Also open: the exact quantizer mapping (the released config’s dmel_min_value of −7.0 disagrees with the code default of −1.5), and behavior on long-form, multilingual, and noisy audio.
The full write-up, with interactive step-by-step figures of the pipeline and the serving path, and every claim traced to a primary source, is here:
https://huckiyang.github.io/blog/inkling-audio-design.html
Similar Articles
Welcome Inkling by Thinking Machines
Inkling by Thinking Machines is a large open multimodal LLM with ~1T parameters, 1M context, and native support for image, audio, and text. It uses a Mixture-of-Experts architecture and is available on Hugging Face with day-0 inference support.
thinkingmachines/Inkling-NVFP4
Inkling is a 975B-parameter sparse mixture-of-experts multimodal model accepting text, image and audio inputs and generating text outputs. Released with open weights for research, fine-tuning, and integration.
Inkling: Our Open-Weights Model
Thinking Machines AI releases Inkling, a new open-weights mixture-of-experts multimodal foundation model with 975B total parameters and 41B active, supporting text, images, audio, and video, along with a preview of Inkling-Small.
@yifanzhang_: https://thinkingmachines.ai/news/introducing-inkling/… RoPE is dead, Long live GRAPE!
Thinking Machines AI releases Inkling, an open-weights Mixture-of-Experts model with 975B total parameters (41B active), supporting text, images, and audio over a 1M token context window. It is a broad foundation model designed for fine-tuning via their Tinker platform, with a smaller Inkling-Small variant also previewed.
thinkingmachines/Inkling
Inkling is a large open-weights multimodal model (975B total, 41B active parameters) using a sparse MoE architecture, accepting text, image, and audio inputs and generating text outputs, intended for agentic systems, coding assistants, and chatbots.