We're excited to be an official Day 0 provider for MiniMax M3.1 Flash. Built for coding, agents, and complex workflows, M3.1 Flash brings strong agentic performance at a competitive cost, and it's available today on our serverless API.
Try it on Inference or sign up free to get started.
What is MiniMax M3.1 Flash?
MiniMax M3.1 Flash is a native multimodal Mixture-of-Experts model. It has roughly 428B total parameters and activates 23B per token, which keeps latency and cost low while preserving deep reasoning ability.
It builds on MiniMax-M3 with three changes aimed at efficiency:
- Sparse attention throughout. MiniMax Sparse Attention now runs in every layer, including the first three layers that used full attention in M3.
- Quantization-aware training. The routed experts and attention paths are quantized during training, which reduces the memory footprint and improves serving efficiency.
- DSpark speculative decoding. A new draft head replaces the earlier MTP approach to speed up generation.
On Inference, M3.1 Flash supports a 1M-token context window, image input, function calling, structured outputs, and automatic prompt caching. Reasoning effort is selectable per request: low, medium, high, xhigh, or max.
Benchmarks
MiniMax reports strong results on agentic, coding, and computer-use benchmarks. M3.1 Flash leads its comparison set on Automation-Bench (62.8) and LOCA-Bench 256K (60.3), and it ties Opus 5 on BankerToolBench (76.2).

We tried it out
Benchmarks only tell part of the story, so we gave M3.1 Flash a few open-ended prompts: an interactive double-pendulum lab, a 3D datacenter technician game, and of course, the classic. You can watch the first two in our launch thread on X.
The classic pelican
make a svg of a pelican riding a bike

Pricing
We host M3.1 Flash on our own infrastructure with competitive pricing:
| Input | Cached input | Output |
|---|---|---|
| $0.10 / 1M tokens | $0.005 / 1M tokens | $0.50 / 1M tokens |
Get started
M3.1 Flash runs on our OpenAI-compatible API, so you can switch to it with a one-line model change:
from openai import OpenAI
client = OpenAI(
base_url="https://api.inference.net/v1",
api_key="<YOUR_API_KEY>",
)
response = client.chat.completions.create(
model="minimax-m3.1-flash",
messages=[{"role": "user", "content": "Write a function that merges two sorted lists."}],
reasoning_effort="high",
)
print(response.choices[0].message.content)from openai import OpenAI
client = OpenAI(
base_url="https://api.inference.net/v1",
api_key="<YOUR_API_KEY>",
)
response = client.chat.completions.create(
model="minimax-m3.1-flash",
messages=[{"role": "user", "content": "Write a function that merges two sorted lists."}],
reasoning_effort="high",
)
print(response.choices[0].message.content)Head over to the model page to try it, or sign up free to get an API key.
Meet with our research team
Schedule a call with our research team to learn more about how Specialized Language Models can cut costs and improve performance.