Mistral Medium 3.5 Now Available on TheRouter.ai
Mistral Medium 3.5 is a 128B dense model with 256K context, native vision, and a togglable reasoning mode. It scores 77.6% on SWE-Bench Verified — above GPT-4o and Claude Sonnet at launch. Available now on TheRouter.ai at $1.5/M input, $7.5/M output.
Mistral Medium 3.5 is available now on TheRouter.ai. Released by Mistral AI on April 29, 2026, it's a 128B dense model with a 256K token context window, native multimodal vision, and a togglable reasoning mode. The model ID on TheRouter is mistral/mistral-medium-3.5.
Key Specs
| Property | Value |
|---|---|
| Parameters | 128B dense |
| Context window | 256,000 tokens |
| Input modalities | Text, image |
| Output modalities | Text |
| SWE-Bench Verified | 77.6% |
| Reasoning | Togglable (fast / thinking) |
| License | Modified MIT (open weights) |
| Self-hostable | Yes (4× A100 / H100) |
| Available via | Mistral API, TheRouter.ai |
| Bedrock / Vertex / Azure | Not yet available |
Pricing on TheRouter.ai
| Per 1M tokens | |
|---|---|
| Input | $1.50 |
| Output | $7.50 |
What's New vs Previous Mistral Medium
Mistral Medium 3.5 is a full generational step up, not a patch release:
- Vision trained from scratch — not bolted on. The model handles variable image sizes and aspect ratios natively, without fixed-size preprocessing. This matters for real documents, screenshots, and photos.
- Reasoning mode — toggle between fast response and thinking compute at the API level. You pay only for what you use; fast mode keeps costs down for simple tasks, thinking mode handles harder problems.
- Open weights — the model weights are available under a Modified MIT license. You can run it yourself on 4 GPUs if you need private inference or want to fine-tune.
- SWE-Bench 77.6% — at launch, this placed Mistral Medium 3.5 ahead of GPT-4o and Claude Sonnet on agentic software engineering benchmarks.
Vision
Mistral Medium 3.5's vision capability was built into the model from pretraining, not added as a downstream adapter. This has two practical implications:
- Variable input sizes work correctly. You don't need to resize images to a fixed resolution before sending them. Screenshots, document scans, and arbitrary-aspect photos process without distortion artifacts.
- Vision and text reasoning are integrated. The model can reason across text and image content in the same pass rather than treating them as separate processing stages.
Supported image input: JPEG, PNG, and base64 data URIs via the standard image_url content block format.
import openai
client = openai.OpenAI(
api_key="your-therouter-api-key",
base_url="https://api.therouter.ai/v1",
)
response = client.chat.completions.create(
model="mistral/mistral-medium-3.5",
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {"url": "https://example.com/diagram.png"},
},
{"type": "text", "text": "What does this architecture diagram show?"},
],
}
],
max_tokens=1024,
)
print(response.choices[0].message.content)
Reasoning Mode
Mistral Medium 3.5 exposes a toggle between two compute modes:
- Fast mode — standard autoregressive generation, low latency, lower cost. Use for extraction, classification, summarization, routine code generation, chat.
- Thinking mode — extended internal computation before the final response. The model reasons through the problem before committing to an answer. Use for multi-step math, complex debugging, architecture decisions, agentic planning.
The toggle is controlled via the API using the thinking parameter in the request body. This follows the same convention as other models with reasoning modes (Anthropic, Qwen, etc.).
curl https://api.therouter.ai/v1/chat/completions \
-H "Authorization: Bearer $THEROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mistral/mistral-medium-3.5",
"messages": [
{"role": "user", "content": "Find the bug in this function and explain the fix:\n\ndef process(items):\n result = []\n for i in range(len(items)):\n if items[i] > 0:\n result.append(items[i-1])\n return result"}
],
"thinking": {"type": "enabled", "budget_tokens": 4096},
"max_tokens": 2048
}'
For most workloads, start with fast mode. Switch to thinking when the task involves multi-step reasoning that tends to produce incorrect answers in one-shot generation.
Quick Start
One API key, one endpoint — all models including Mistral Medium 3.5.
Python:
import openai
client = openai.OpenAI(
api_key="your-therouter-api-key",
base_url="https://api.therouter.ai/v1",
)
response = client.chat.completions.create(
model="mistral/mistral-medium-3.5",
messages=[
{"role": "user", "content": "Summarize the key tradeoffs between actor-based and shared-memory concurrency models."}
],
max_tokens=512,
)
print(response.choices[0].message.content)
curl:
curl https://api.therouter.ai/v1/chat/completions \
-H "Authorization: Bearer $THEROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mistral/mistral-medium-3.5",
"messages": [
{"role": "user", "content": "Summarize the key tradeoffs between actor-based and shared-memory concurrency models."}
],
"max_tokens": 512
}'
The upstream model ID Mistral uses is mistral-medium-2604. On TheRouter, always use mistral/mistral-medium-3.5 — the routing layer handles the translation.
When to Use Mistral Medium 3.5 vs Other Mistral Models
| Model | TheRouter ID | Context | Input / 1M | Best For |
|---|---|---|---|---|
| Mistral Medium 3.5 | mistral/mistral-medium-3.5 | 256K | $1.50 | Vision tasks, coding agents, reasoning-heavy workloads |
| Mistral Large | mistral/mistral-large-3 | 128K | $2.00 | High-stakes text tasks, complex instruction following |
| Mistral Small | mistral/mistral-small-4 | 32K | $0.10 | High-volume, cost-sensitive, latency-critical |
| Codestral | mistral/codestral | 256K | $0.30 | Pure code generation and fill-in-the-middle |
Mistral Medium 3.5 sits above Small and below Large in raw text quality, but it's the only model in the Mistral lineup with both vision and open weights. It's the practical pick for:
- Agentic coding — SWE-Bench 77.6% is a real signal for tool-use and multi-step code editing. With 256K context, it can hold an entire mid-sized codebase in context.
- Document understanding — native vision with variable-size image support makes it clean for PDF screenshots, diagrams, and mixed media inputs.
- Private or fine-tuned deployments — Modified MIT weights mean you can take the model in-house without a commercial license negotiation.
- Reasoning-optional pipelines — the fast/thinking toggle lets you run one model ID across tasks of varying complexity rather than routing between a cheap model and an expensive one.
For pure text-only workloads where you want maximum instruction following, Mistral Large is still the stronger pick. For bulk processing at low cost, Mistral Small wins on economics. For everything in between that touches images or code, Medium 3.5 is the right choice.
Availability
Mistral Medium 3.5 is live on TheRouter.ai now. Access it with your existing API key — no additional setup required.
Model ID: mistral/mistral-medium-3.5
Endpoint: https://api.therouter.ai/v1
Bedrock, Vertex AI, and Azure are not yet available for this model. TheRouter routes to the Mistral direct API.