Thinking Machines' Inkling: Under the Hood of the 975B Parameter Open Multimodal MoE

July 19, 2026

A deep dive into Mira Murati's new open-weights multimodal model, Inkling. Analyze the 975B MoE architecture, active parameter routing, and local serving.

Thinking Machines' Inkling: Under the Hood of the 975B Parameter Open Multimodal MoE

Series: ← Token Economics, LLM Gateways, and Router9 (Previous) | vLLM vs. llama.cpp: Which is the Real Production King? (Next) →

Prior Reading Material

Before exploring multimodal routing and MoE architectures, we recommend reading our foundational guides on weights, taxonomy, and local serving engines:


In July 2026, Thinking Machines Lab (founded by former OpenAI CTO Mira Murati) shook up the developer ecosystem by releasing Inkling—a massive, open-weights multimodal model under the Apache-2.0 license.

Unlike typical frontier models that target raw benchmark supremacy in a closed-API sandbox, Inkling is designed from the ground up to be a robust, highly adaptable base model. It is tailored for developers who want to perform domain-specific adaptation, custom fine-tuning, and offline local deployment.

In this deep dive, we will analyze the technical architecture of Inkling, breaking down its Mixture-of-Experts (MoE) parameters, multimodal encoding layers, and local serving footprints.


Inkling at a Glance: Key Specifications

Inkling stands out due to its scale and open-weights availability on platforms like Hugging Face. Let’s compare its basic parameters with other leading models in the ecosystem:

SpecificationThinking Machines’ InklingLlama-3-70BMixtral 8x22B
Release DateJuly 2026April 2024April 2024
Total Parameters975 Billion70 Billion141 Billion
Active Parameters41 Billion70 Billion39 Billion
Context Window1,000,000 tokens8,192 tokens65,536 tokens
ModalitiesText, Image, Audio (In) $\rightarrow$ Text (Out)Text (In) $\rightarrow$ Text (Out)Text (In) $\rightarrow$ Text (Out)
LicenseApache-2.0Llama 3 LicenseApache-2.0

Inkling was pretrained on a massive 45 trillion tokens of text, image, audio, and video data, allowing it to natively represent and interpret multi-sensory contexts.


Mixture-of-Experts (MoE) Architecture & Parameter Routing

Although Inkling boasts 975 billion total parameters, it only activates 41 billion parameters per token. This is accomplished via a sparse Mixture-of-Experts (MoE) routing topology.

Active vs. Total Parameters

In a standard dense transformer (like Llama-3-70B), every single input token is processed by every weight in the network. In a sparse MoE model, the Feed-Forward Network (FFN) layers are replaced by multiple independent “experts.” A small gating network (router) evaluates each token and routes it to the top-2 or top-4 experts that are best suited to handle its semantic context.

Here is how the token routing path operates sequentially within the Inkling MoE FFN layer:

graph LR
    subgraph Token Routing [Token Routing and Expert Activation]
        T_In[Input Token] --> G_Router[Gating Router]
        G_Router -->|Top-K Selection| E_Active[Active Experts: 41B params]
        G_Router -.->|Unused| E_Inactive[Inactive Experts: 934B params]
        E_Active --> O_Concat[Concat & Weighted Output]
    end

    style Token Routing fill:#13111c,stroke:#a15eff,stroke-width:1px
    style E_Active fill:#1a3028,stroke:#00f2fe,stroke-width:1px
    style E_Inactive fill:#261b20,stroke:#ff5353,stroke-width:1px,stroke-dasharray: 3 3

Because only a fraction of the experts are activated (41B active parameters), the compute cost per token (FLOPs) remains comparable to a medium-sized model, while the total model capacity (975B parameters) allows it to retain a vast repository of structured domain knowledge.


Multimodal Alignment: Native Image and Audio Processing

Unlike pipeline architectures that stack separate speech-to-text or vision-encoding models, Inkling is a native multimodal model. It processes text, image, and audio inputs through shared embedding spaces.

  • Vision Encoding: Inkling processes visual inputs via a high-resolution ViT (Vision Transformer) encoder. Images are divided into $14\times14$ pixel patches, flattened, and projected into the transformer’s latent space alongside text embeddings.
  • Audio Encoding: Audio signals are converted into log-mel spectrograms and processed through a convolutional front-end, aligning raw audio waveforms with tokenized sequences.

This unified representation space enables the model to perform low-latency tasks like audio-visual question answering without intermediate conversion delays.


Serving Inkling Locally & Cloud Integrations

Serving a 975B parameter model—even an MoE model with 41B active parameters—poses a severe VRAM memory capacity challenge. Although compute is cheap, the entire 975B parameters must be loaded into memory to support real-time expert routing.

1. Hardware Footprint

To serve Inkling in FP16 precision, you need approximately 1.95 Terabytes of VRAM. In a quantized FP8 format, this requirement drops to 975 Gigabytes, which can be distributed across:

  • A cluster of $8\times$ NVIDIA H100 (80GB VRAM each) using Tensor Parallelism.
  • Decentralized inference networks like Modal or OpenRouter.
  • Unified enterprise platforms like NVIDIA NIM with optimized KV-cache and Expert-Offloading patterns.

2. Hands-On: Expert Weight Routing Simulator

To visualize how the MoE routing mechanism dynamically selects experts based on input tokens, we can run a local Python script simulating a top-2 gating router. Let’s look at scripts/moe_routing_simulator.py.

Save this script locally to simulate routing across 8 conceptual domain experts:

# scripts/moe_routing_simulator.py
import random

def simulate_moe_routing():
    # List of 8 available domain experts in our FFN layer
    experts = [
        "Code Expert", "Math Expert", "Creative Writer", "Vision Analyzer",
        "Audio Transcriber", "System Architect", "Translator", "General Assistant"
    ]
    
    # Simple input prompts to test routing
    prompts = [
        ("Write a fast sorting function in Rust.", ["Code Expert", "System Architect"]),
        ("Calculate the derivative of x^2 + 5x.", ["Math Expert", "General Assistant"]),
        ("Analyze the audio waveform features.", ["Audio Transcriber", "System Architect"]),
    ]
    
    print("=== STARTING INKLING MoE ROUTER SIMULATOR ===")
    
    for i, (prompt, target_experts) in enumerate(prompts, 1):
        print(f"\n[Token Sequence {i}]: \"{prompt}\"")
        
        # Calculate routing probabilities (adding minor random noise for simulation)
        routed = []
        for exp in experts:
            base_prob = 0.85 if exp in target_experts else 0.05
            prob = min(1.0, max(0.0, base_prob + random.uniform(-0.02, 0.02)))
            routed.append((exp, prob))
        
        # Sort experts by router probability score
        routed.sort(key=lambda x: x[1], reverse=True)
        
        # Select top-2 active experts for execution
        top_2 = routed[:2]
        inactive = routed[2:]
        
        print("🚦 Gating Router Probabilities:")
        for exp, p in top_2:
            print(f"  🟢 Active: {exp:<20} (Routing Score: {p:.2f})")
        for exp, p in inactive[:2]:
            print(f"  🔴 Inactive: {exp:<20} (Routing Score: {p:.2f})")
            
    print("\n=============================================")

if __name__ == "__main__":
    simulate_moe_routing()

If you run this simulator, you can verify how the gating router dynamically filters out irrelevant weights, directing token inputs to the most computationally-efficient pathways.


What’s Next?

Inkling represents a major milestone in open-source AI, proving that massive multimodal capabilities can be distributed outside closed API gates. But how does this scale compare to lightweight engines running on local edge hardware?

In our next post, vLLM vs. llama.cpp: Which is the Real Production King?, we will shift from massive cloud scale to localized serving, comparing the memory footprints and hardware constraints of running LLMs directly on local Macbooks and edge workstations!