Nanbeige LLM Lab has released Nanbeige4.3-33B on Hugging Face under the Apache 2.0 license. Nanbeige4.3-33B is a 33B dense language model built for agentic coding and office-style ‘cowork’ tasks. The lab sits inside the recruitment platform BOSS Zhipin. It also published Nanbeige4.3-33B-Base for custom post-training. The model supports a 524,288-token context window. In the lab’s own table, it leads 17 of 20 benchmarks against 3 open models near 30B.
TL;DR
- Size: 33B parameters, dense (no MoE), 524,288-token (512K) context, BF16 weights.
- Runs on: Multi-GPU servers. The card’s SGLang and vLLM recipes use 4-way tensor parallelism. BF16 weights need about 66 GB (our arithmetic). 1 community quantization is listed.
- Performance: Leads 17 of 20 rows in Nanbeige’s own comparison against Qwen3.8-27B, Muse-Glimmer-30B and Gemma4-31B.
- Best: 80.9 on Terminal-Bench 2.1, versus 73.0 for Qwen3.8-27B.
- Worst: 23.8 on Terminal-Bench 4.0 (its lowest score). It also trails Qwen3.8-27B on SWE-Bench Pro, 60.3 vs 61.7.
What is Nanbeige4.3-33B?
Nanbeige4.3-33B is the flagship ‘teacher’ model of the Nanbeige4.3 series. The lab’s stated strategy is to build a strong teacher first. It then plans to distill agentic skills into smaller models, starting with Nanbeige4.3-3B.
How is Nanbeige4.3-33B built?
The config.json declares a standard LlamaForCausalLM architecture. There is no expert routing, so all 33B parameters run on every token.
- 52 layers, hidden size 7,168
- 56 query heads and 8 key-value heads (grouped-query attention), head dimension 128
- FFN intermediate size 22,016, vocabulary of 166,912 tokens
- RoPE theta of 120,000,000 and 524,288 max positions
The chat template exposes 3 controls. enable_thinking toggles reasoning and is on by default. preserve_thinking keeps reasoning from earlier turns. Nanbeige recommends it for multi-turn tool use and code agents. Passing tools enables tool calling, and an XML call format is recommended.
How does Nanbeige4.3-33B perform on benchmarks?
Nanbeige compared the model with Qwen3.8-27B, Muse-Glimmer-30B and Gemma4-31B. Every model ran at its highest thinking effort, with shared hyperparameters and harnesses. All scores in this section are self-reported.
- Agentic coding: It scores 80.9 on Terminal-Bench 2.1, against 73.0 for Qwen3.8-27B. DeepSWE shows the widest gap: 65.5 versus 42.5. On Terminal-Bench 4.0, it scores 23.8 while Gemma4-31B scores 0.0.
- Agentic cowork: It posts 54.2 on Automation Bench versus 38.3, and 44.8 on JobBench versus 34.5. On YC-bench, simulated earnings reach $1,025,437 versus $641,290.
- Reasoning: It reports 95.2 on AIME 2026 and 84.0 on AA-LCR.
It loses 3 of 20 rows. Qwen3.8-27B leads SWE-Bench Pro (61.7 vs 60.3) and GDPval (86.4 vs 84.8). Gemma4-31B leads GPQA Diamond in Nanbeige’s table, 91.3 vs 89.5.
The Base model beats Gemma4-31B-Base on all 8 reported tasks. Examples include MMLU-Pro (66.9 vs 59.3) and GPQA (62.0 vs 41.5).
</button><button class="btn ghost" id="nbgPlay">Auto-play</button></div>
<div class="spec">
<div><b>52</b><span>layers</span></div>
<div><b>56 / 8</b><span>query / KV heads (GQA)</span></div>
<div><b>7,168</b><span>hidden size</span></div>
<div><b>524,288</b><span>max positions</span></div>
</div>
</div>
<div class="pane" id="p2">
<div class="seg" id="nbgSeg">
<button class="on" data-c="coding">Agentic coding</button>
<button data-c="cowork">Agentic cowork</button>
<button data-c="reason">Reasoning</button>
<button data-c="base">Base model</button>
</div>
<div class="legend" id="nbgLegend"></div>
<div id="nbgBars"></div>
<p class="note">All scores self-reported by Nanbeige on its Hugging Face model cards, at each model's highest thinking effort with shared harnesses. Not independently verified.</p>
</div>
<div class="pane" id="p3">
<div class="calc">
<div>
<div class="field"><label>Context length <b id="nbgCtxL">131,072 tokens</b></label><input type="range" id="nbgCtx" min="0" max="6" step="1" value="4"></div>
<div class="field"><label>Concurrent sequences <b id="nbgSeqL">1</b></label><input type="range" id="nbgSeq" min="1" max="8" step="1" value="1"></div>
<div class="seg" id="nbgW"><button class="on" data-w="2">Weights BF16</button><button data-w="1">Weights 8-bit</button></div>
<div class="seg" id="nbgK"><button class="on" data-k="2">KV cache BF16</button><button data-k="1">KV cache FP8</button></div>
<p class="note">Arithmetic from config.json: 52 layers × 8 KV heads × 128 dims × 2 (K and V) × bytes per value. That is 212,992 bytes (about 208 KiB) per token in BF16. Weights use 33B parameters. Excludes activations and framework overhead.</p>
</div>
<div class="stack">
<div class="kv"><span>Estimated GPU memory</span></div>
<div class="total" id="nbgTot">0 GB</div>
<div class="stackbar"><i id="nbgBw" style="background:#5fd3bd"></i><i id="nbgBk" style="background:#7c8cf8"></i></div>
<div class="kv"><span><i style="display:inline-block;width:9px;height:9px;background:#5fd3bd;border-radius:2px"></i> Weights</span><b id="nbgWv"></b></div>
<div class="kv"><span><i style="display:inline-block;width:9px;height:9px;background:#7c8cf8;border-radius:2px"></i> KV cache</span><b id="nbgKv"></b></div>
<div class="kv"><span>Per 80 GB GPU (ideal fit)</span><b id="nbgGpu"></b></div>
<p class="note">The model card's SGLang and vLLM recipes use 4-way tensor parallelism.</p>
</div>
</div>
</div>
<div class="pane" id="p4">
<table>
<tr><th>Row in Nanbeige table</th><th>Nanbeige lists</th><th>Official card</th><th></th></tr>
<tr><td>Muse-Glimmer-30B, SWE-Bench Pro</td><td class="bad">36.9</td><td>51.2 (Meta)</td><td><span class="flag">looks swapped</span></td></tr>
<tr><td>Gemma4-31B, SWE-Bench Pro</td><td class="bad">51.2</td><td>36.9 (Meta-reported)</td><td><span class="flag">looks swapped</sp