microsoft/MagenticBrain
Captured source
source ↗MagenticBrain
MagenticBrain is a 14B-parameter orchestration model from Microsoft Research AI Frontiers. It plans multi-step tasks, calls declared tools, and coordinates sub-agents. It does not execute actions itself — every real-world side effect happens inside a host harness.
The model is supervised fine-tuned from Qwen/Qwen3-14B on agentic data: function-calling corpora, file-system trajectories, terminal tasks, sub-agent delegation traces, and reasoning data. After supervised fine-tuning, it was further trained with reinforcement learning on in-house-constructed terminal tasks. It's co-designed with MagenticLite, our agentic application and harness, and that's the configuration it has been most thoroughly evaluated in.
We're releasing weights only. Inference code, training recipes, and the execution harness are part of MagenticLite.
Highlights
- Orchestration-first post-training. Specialized for planning, tool selection, multi-turn tool chaining, and sub-agent delegation. Not a general-purpose chat model.
- Structured tool calls in JSON. Tool schemas are passed in at inference time. The model selects only from declared tools and never invents new ones.
- Sub-agent delegation built in. Trained with explicit handoff traces to Fara1.5-9B, our computer-use sub-agent (browser and desktop control).
- Submit-to-terminate protocol. Every task ends with a dedicated
submitsignal, which is a protocol token, not an action. The harness uses it as the end-of-task indicator. - 32K context. Enough headroom for system prompt + tool schemas + multi-turn trajectory state.
- Built on Qwen3-14B. Inherits the base model's reasoning and instruction-following.
Model Details
| | | |---|---| | Developer | Microsoft Research AI Frontiers | | Architecture | Decoder-only transformer (Qwen3 architecture) | | Parameters | ~14B | | Context length | 32,768 tokens | | Inputs | Text (system prompt, tool schema, user goal, trajectory state) | | Outputs | Text and structured JSON tool calls | | Training period | January 2026 – April 2026 | | Release date | 14 May 2026 | | License | MIT | | Base model | Qwen/Qwen3-14B |
Recommended Deployment: MagenticLite
MagenticBrain is the orchestration model inside MagenticLite. The training mix, tool-call format, and submit/terminate protocol are calibrated against MagenticLite's execution loop. If you want the behavior MagenticBrain was trained for, run it inside MagenticLite.
The weights load in any compatible runtime (Transformers, vLLM, SGLang, TensorRT-LLM). If you integrate the model directly, you're responsible for the execution boundary: declaring the tool schema, parsing the model's JSON tool calls, executing tools under your own permissions, and handling the submit terminator.
Quickstart
Transformers
Requires transformers >= 4.51.0.
import json
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "microsoft/MagenticBrain"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto",
)
tools = [
{
"type": "function",
"function": {
"name": "read_file",
"description": "Read the contents of a file at the given path.",
"parameters": {
"type": "object",
"properties": {"path": {"type": "string"}},
"required": ["path"],
},
},
},
{
"type": "function",
"function": {
"name": "submit",
"description": "Signal that the task is complete.",
"parameters": {"type": "object", "properties": {}},
},
},
]
messages = [
{"role": "system", "content": "You are an orchestration agent. Plan steps and call only the tools declared below."},
{"role": "user", "content": "Summarize the contents of /tmp/report.md."},
]
text = tokenizer.apply_chat_template(
messages,
tools=tools,
tokenize=False,
add_generation_prompt=True,
enable_thinking=False, # thinking is disabled by default for MagenticBrain
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
output_ids = model.generate(**inputs, max_new_tokens=1024)[0][inputs.input_ids.shape[1]:]
print(tokenizer.decode(output_ids, skip_special_tokens=True))The model emits tool calls as JSON objects. Parse them, execute the tool in your host, feed the result back as a tool role message, and call generate again. Loop until the model emits submit.
vLLM
Serve with an OpenAI-compatible endpoint that exposes tool-calling:
vllm serve microsoft/MagenticBrain \ --enable-auto-tool-choice \ --tool-call-parser hermes \ --max-model-len 32768
Then call /v1/chat/completions with tools=[...] as you would with any OpenAI-compatible tool-use model. Pass chat_template_kwargs={"enable_thinking": false} to match training-time defaults.
Recommended sampling
enable_thinking = false temperature = 0.7 top_p = 0.8 top_k = 20 min_p = 0 presence_penalty = 1
MagenticBrain runs in non-thinking mode — keep enable_thinking=False in the chat template. Do not use greedy decoding; it causes endless repetition on this model family. Lower the temperature if you need stricter, more deterministic tool selection.
Training
Approach
Post-training has two stages. First, Supervised Fine-Tuning on a heterogeneous agentic data mix. Second, a reinforcement learning stage on in-house-constructed terminal tasks, further specializing the model for multi-step CLI execution. Thinking tokens are disabled by default (enable_thinking=False) to control verbosity and reduce looping on long trajectories.
Data sources
- Function-calling and orchestration: APIGen-MT, ToolACE, xLAM
- MCP environments: 250+ synthetic Model Context Protocol environments with single- and multi-turn trajectories, generated for tool-orchestration training
- File-system / Cowork: file rename, organize, delete, and categorize trajectories
- Terminal / CLI: containerized tasks paired with executable tests
- Sub-agent delegation: explicit handoff traces (MagenticBrain → Fara1.5-9B for computer use)
- Reasoning and planning: Kimi-2.5-generated traces (preferred for lower verbosity), with filtered subsets of Dolci, Hermes, and Nemotron data
Total post-training corpus is under 1B tokens. Base-model pretraining is documented in the Qwen3 technical report.
Data processing
The...
Excerpt shown — open the source for the full document.