Text Generation
Transformers
Safetensors
deepseek_v4
agentic
code
smaug
abacusai
8-bit precision
fp8
Instructions to use abacusai/Smaug-Flash with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use abacusai/Smaug-Flash with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="abacusai/Smaug-Flash")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("abacusai/Smaug-Flash") model = AutoModelForCausalLM.from_pretrained("abacusai/Smaug-Flash", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use abacusai/Smaug-Flash with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "abacusai/Smaug-Flash" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "abacusai/Smaug-Flash", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/abacusai/Smaug-Flash
- SGLang
How to use abacusai/Smaug-Flash with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "abacusai/Smaug-Flash" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "abacusai/Smaug-Flash", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "abacusai/Smaug-Flash" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "abacusai/Smaug-Flash", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use abacusai/Smaug-Flash with Docker Model Runner:
docker model run hf.co/abacusai/Smaug-Flash
Doc-style delta bars in radar; reorder sections to Mini structure; condense training detail
Browse files- README.md +53 -241
- figures/smaug_flash_livebench_categories.png +2 -2
README.md
CHANGED
|
@@ -10,7 +10,6 @@ tags:
|
|
| 10 |
- smaug
|
| 11 |
- abacusai
|
| 12 |
---
|
| 13 |
-
|
| 14 |
<div align="center">
|
| 15 |
<picture>
|
| 16 |
<img src="https://cdn-avatars.huggingface.co/v1/production/uploads/63128dd099791aa61d180c72/dJ6uR23m09M-YEafBpmea.png" width="20%" alt="Smaug-Flash">
|
|
@@ -29,198 +28,59 @@ tags:
|
|
| 29 |
|
| 30 |
**Abacus.AI** · August 2026
|
| 31 |
|
| 32 |
-
Smaug-Flash is an agentic-coding finetune of [DeepSeek-V4-Flash-0731](https://huggingface.co/deepseek-ai/DeepSeek-V4-Flash-0731). It improves
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
AutomationBench, +19 on NL2Repo-Bench) while holding the base model's general
|
| 36 |
-
capabilities at parity (overall LiveBench +3.4). The weights load exactly like
|
| 37 |
-
the official release: same layout, same quantization formats, same context
|
| 38 |
-
length (1M), same reasoning interface.
|
| 39 |
-
|
| 40 |
-
This report describes the training methodology, the data curation and mining
|
| 41 |
-
techniques, and the architecture-specific weight-merging procedure. Dataset
|
| 42 |
-
contents are not disclosed; all training data consists of **curated agentic
|
| 43 |
-
loop traces from various sources — public repositories and traces synthesized
|
| 44 |
-
from agentic product use cases** — plus programmatically generated and
|
| 45 |
-
verified instruction-following tasks.
|
| 46 |
|
| 47 |
---
|
| 48 |
|
| 49 |
## 1. Training regime: match the serving regime
|
| 50 |
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
1.
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
2.
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
generations of evolving benchmarks transferred to retired-style questions but
|
| 91 |
-
not to fresh ones. Any gate built on retired data over-reads models trained on
|
| 92 |
-
it. All quality gates in this program use fresh, held-out task generations.
|
| 93 |
-
|
| 94 |
-
### 2.2 Preference stage: decision-point KTO on minimal pairs
|
| 95 |
-
|
| 96 |
-
A small KTO adapter (~10² preference pairs — dataset efficiency comes from
|
| 97 |
-
construction quality, not scale) targeting failure modes that SFT alone did not
|
| 98 |
-
fix: perseveration loops, premature finalization, and degenerate emissions in
|
| 99 |
-
long agentic episodes.
|
| 100 |
-
|
| 101 |
-
Key techniques (§3 details the mining):
|
| 102 |
-
|
| 103 |
-
- **Minimal-pair construction.** POS/NEG in a pair share the identical context
|
| 104 |
-
and differ *only* in the target behavior (e.g. escaping vs. repeating a
|
| 105 |
-
loop; finalizing with vs. without evidence of completed work). The gradient
|
| 106 |
-
then carries the behavioral contrast and nothing else.
|
| 107 |
-
- **Loss on the action row only.** As in SFT, preference loss attaches to the
|
| 108 |
-
tool-call/decision tokens.
|
| 109 |
-
- **Evidence-conditioned finalization.** "Finish the task" is only a positive
|
| 110 |
-
when the context contains evidence the work is complete; finalization
|
| 111 |
-
without evidence is a negative. Teaching unconditional finalization measurably
|
| 112 |
-
causes premature submits.
|
| 113 |
-
- **Dose–response is non-monotone.** Checkpoint selection across KTO training
|
| 114 |
-
steps was gated per-behavior; the mildest checkpoint was not the safest.
|
| 115 |
-
|
| 116 |
-
### 2.3 Targeted repair SFT on the merged model
|
| 117 |
-
|
| 118 |
-
Constrained instruction-following (exact word counts, keyword placement,
|
| 119 |
-
format contracts) degrades slightly under agentic SFT. A third adapter repairs
|
| 120 |
-
it: tasks are **generated programmatically from a constraint registry with
|
| 121 |
-
jittered parameters and checked by exact verifiers**; training targets are
|
| 122 |
-
teacher rolls that pass verification.
|
| 123 |
-
|
| 124 |
-
Critically, this adapter is trained **on the already-merged agentic model**,
|
| 125 |
-
not on the base. Trained separately and stacked in weight space, its benefit
|
| 126 |
-
is destroyed by cross-adapter interference; trained on the merge, it composes
|
| 127 |
-
(+3–8 points instruction-following, agentic gains intact).
|
| 128 |
-
|
| 129 |
-
## 3. Data curation and mining techniques
|
| 130 |
-
|
| 131 |
-
The mining pipeline turns raw agentic traces into decision-point training data.
|
| 132 |
-
The techniques below are dataset-agnostic and, in our experience, where nearly
|
| 133 |
-
all of the quality lives.
|
| 134 |
-
|
| 135 |
-
**Decision-point truncation and on-policy resampling.** Long traces are
|
| 136 |
-
truncated at behaviorally interesting trigger points (an opaque tool result, an
|
| 137 |
-
empty result, a repeat-primed context, a completion point). The model being
|
| 138 |
-
trained is resampled k times at each truncation point; its own behavioral
|
| 139 |
-
distribution at that decision — not the original trace's continuation — is
|
| 140 |
-
what gets labeled.
|
| 141 |
-
|
| 142 |
-
**Single-decision labeling.** Labels attach to one decision (repeat = negative,
|
| 143 |
-
escape/progress = positive; finalize-with-evidence = positive,
|
| 144 |
-
finalize-without = negative), with automated labelers audited by hand.
|
| 145 |
-
Trajectory-level labels are too coarse; they smear credit across dozens of
|
| 146 |
-
correct actions to reach one wrong one.
|
| 147 |
-
|
| 148 |
-
**Depth-escalation mining.** Failure probability at a decision point rises
|
| 149 |
-
steeply with the depth of prior repetition (in our measurements, from
|
| 150 |
-
single-digit percentages at depth 1 to 50–80% at depth 3). Escalated contexts —
|
| 151 |
-
the model's own repeated action and its replayed result appended, then
|
| 152 |
-
resampled — are the richest source of both hard negatives and gold escapes.
|
| 153 |
-
Single-shot sampling at natural contexts under-elicits the pathology.
|
| 154 |
-
|
| 155 |
-
**Anti-confound lints (the difference between a fix and a new regression):**
|
| 156 |
-
|
| 157 |
-
- *Length matching.* Preference optimization's cheapest gradient is "long
|
| 158 |
-
completions are bad." If negatives are systematically longer than positives
|
| 159 |
-
(e.g. truncated mid-generation), the model learns to avoid long emissions —
|
| 160 |
-
which in an agentic product means avoiding exactly the file-writing and
|
| 161 |
-
deployment turns that finish a task. All pairs are length-linted.
|
| 162 |
-
- *Degeneracy filters.* High-scoring but degenerate completions (repetitive
|
| 163 |
-
filler around a correct answer) are excluded from positives.
|
| 164 |
-
- *Format-mass balance.* Required output markers (answer wrappers, artifact
|
| 165 |
-
emissions) must appear with at least as much probability mass in positives
|
| 166 |
-
as negatives, or the model learns to drop the format itself.
|
| 167 |
-
- *No anti-format gradients, ever.* Negatives never consist of "the right
|
| 168 |
-
answer in the right format, penalized for another reason."
|
| 169 |
-
|
| 170 |
-
**Capability anchors.** Every preference run mixes in regenerated on-policy
|
| 171 |
-
traces of the capabilities being protected (agentic episodes, math, reasoning),
|
| 172 |
-
so the adapter's gradient has an explicit "do not move" component. Anchor
|
| 173 |
-
weight is a first-class hyperparameter.
|
| 174 |
-
|
| 175 |
-
**Hygiene.** Evaluation fixtures and live benchmark questions are excluded from
|
| 176 |
-
mining pools by construction; held-out probe sets are never trained on;
|
| 177 |
-
training-data canaries in third-party benchmarks are respected.
|
| 178 |
-
|
| 179 |
-
## 4. Architecture-specific weight merging
|
| 180 |
-
|
| 181 |
-
DeepSeek-V4-Flash ships with a heterogeneous quantization layout: attention
|
| 182 |
-
matrices in block-FP8 (e4m3 values, e8m0 scales, 128×128 blocks), routed
|
| 183 |
-
experts packed in FP4, plus a speculative-decoding module. Naive handling of
|
| 184 |
-
this layout silently destroys the model. Our merging procedure:
|
| 185 |
-
|
| 186 |
-
1. **Adapt only the MLA attention factor matrices** (the low-rank query/output
|
| 187 |
-
projection factors; 129 matrices total). Experts, router, embeddings, and
|
| 188 |
-
the speculative module are never touched — they remain byte-identical to
|
| 189 |
-
the official release, packed FP4 included.
|
| 190 |
-
2. **Full-delta composition.** Each adapter's contribution is applied as its
|
| 191 |
-
complete ΔW = s·BA at trained scale, adapters summed in sequence order —
|
| 192 |
-
**no SVD re-factorization, no rank truncation**. We measured rank
|
| 193 |
-
truncation directly: combining three adapters (aggregate rank ~192) into a
|
| 194 |
-
rank-64 addon cost several points across coding and reasoning; rank-128
|
| 195 |
-
recovered most but not all. Truncation is not free; full deltas are.
|
| 196 |
-
3. **Surgical requantization.** Touched matrices are dequantized to bf16,
|
| 197 |
-
deltas added, then requantized to the *checkpoint-native* format (e4m3
|
| 198 |
-
values, e8m0 per-block scales recomputed per 128×128 block). Round-trip
|
| 199 |
-
relative error ≈ 3×10⁻³ per matrix. Every untouched tensor is copied
|
| 200 |
-
byte-for-byte.
|
| 201 |
-
4. **Serve in the native format.** Re-quantizing merged weights into a
|
| 202 |
-
different scheme (e.g. per-32-element MXFP8 at load time) measurably
|
| 203 |
-
degrades precision-sensitive behavior — in our measurements, up to ~10
|
| 204 |
-
points of instruction-following at identical weights, scaling with adapter
|
| 205 |
-
delta mass. Coarse capabilities are insensitive; constrained writing is
|
| 206 |
-
not. If your serving stack requantizes on load, benchmark against a
|
| 207 |
-
native-format reference before trusting any number.
|
| 208 |
-
|
| 209 |
-
A corollary we relied on throughout: because only attention matrices change,
|
| 210 |
-
any serving stack that runs the official release runs Smaug-Flash unmodified —
|
| 211 |
-
including FP4 expert kernels and speculative decoding paths.
|
| 212 |
-
|
| 213 |
-
## 5. Serving recommendations
|
| 214 |
-
|
| 215 |
-
- SGLang ≥ 0.5.15 on Blackwell: tp=4/8 with `--enable-dp-attention`,
|
| 216 |
-
`--moe-runner-backend flashinfer_mxfp4` (required for the packed-FP4
|
| 217 |
-
experts), fp8 KV cache, full 1M context.
|
| 218 |
-
- Reasoning effort **max**; sampling temperature 1.0, top-p 0.95.
|
| 219 |
-
- For agentic harnesses, note that wall-clock task budgets are effectively
|
| 220 |
-
*inference-compute* budgets: serving throughput changes measured scores on
|
| 221 |
-
timeout-bounded benchmarks. Benchmark on serving comparable to what you
|
| 222 |
-
deploy.
|
| 223 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 224 |
|
| 225 |
### Chat template and encoding
|
| 226 |
|
|
@@ -244,7 +104,7 @@ tokens = tokenizer.encode(prompt)
|
|
| 244 |
|
| 245 |
### Running with vLLM
|
| 246 |
|
| 247 |
-
Because only attention matrices differ from the official release (§
|
| 248 |
|
| 249 |
```bash
|
| 250 |
vllm serve abacusai/Smaug-Flash \
|
|
@@ -271,57 +131,11 @@ sglang serve \
|
|
| 271 |
|
| 272 |
For the `high` and `max` reasoning effort levels we recommend a maximum output length of **384K** tokens. Local weight conversion and interactive demos: see the [`inference`](inference/README.md) folder.
|
| 273 |
|
| 274 |
-
## 6.
|
| 275 |
-
|
| 276 |
-
Measured on fresh 2026 task generations, self-served under the recipe above
|
| 277 |
-
(agentic cells via the benchmarks' public harnesses), with the base model run
|
| 278 |
-
through identical harnesses for every paired comparison.
|
| 279 |
-
|
| 280 |
-
### Smaug-Flash vs its base
|
| 281 |
-
|
| 282 |
-
*Higher is better. Paired runs under the same harness; starred base scores are vendor-reported references for the identical public task set. The AA-LCR difference is within run noise.*
|
| 283 |
-
|
| 284 |
-
<div align="center">
|
| 285 |
-
<img src="figures/smaug_flash_vs_base.png" width="100%" alt="Smaug-Flash vs DeepSeek-V4-Flash-0731 across agentic benchmarks">
|
| 286 |
-
</div>
|
| 287 |
-
|
| 288 |
-
### LiveBench category profile
|
| 289 |
-
|
| 290 |
-
*Scores 0–100; overall = mean of the seven category averages. Same harness, same questions (LiveBench 2026-06-25 release), paired against the base model.*
|
| 291 |
-
|
| 292 |
-
<div align="center">
|
| 293 |
-
<img src="figures/smaug_flash_livebench_categories.png" width="100%" alt="Smaug-Flash LiveBench category profile vs base">
|
| 294 |
-
</div>
|
| 295 |
-
|
| 296 |
-
Terminal Bench 2.1 (terminus-2) remeasured 2026-09-02 on the dedicated FP8 Fireworks deployment: 89 tasks, temperature 1.0, top_p 0.95, reasoning_effort max, 32768-token per-step cap, interleaved thinking (reasoning_content carried across steps). 62/89 = 69.7 at uniform 1× task timeouts; the 9 timed-out tasks rerun at 3× timeout converted exactly one, giving the reported 63/89 = 70.8. Supersedes the earlier 65.9 (pre-interleaved-thinking serving).
|
| 297 |
-
|
| 298 |
-
DeepSWE v1.1 measured 2026-09-02 on the official leaderboard protocol (datacurve-pier 0.3.1 driving stock mini-swe-agent 2.4.6, native tool calling): full 113-task corpus, temperature 1.0, top_p 0.95, reasoning_effort max, 65536-token per-step cap, no step limit; 64/113 = 56.6, zero harness errors (the single verifier timeout is a model-induced test hang, counted as a fail). Smaug-Flash served in checkpoint-native FP8 on a dedicated Fireworks deployment.
|
| 299 |
-
|
| 300 |
-
AA-LCR (Artificial Analysis Long Context Reasoning) measured 2026-09-01: temperature 1.0, top_p 1.0 (non-agentic regime), reasoning_effort max, 65536-token output cap, pinned LLM judge; 3 runs (Smaug-Flash) vs 2 runs (base), run-to-run spread ±2 points; both models served in checkpoint-native FP8 on Fireworks (dedicated vs serverless).
|
| 301 |
-
|
| 302 |
-
Reproducibility notes, in the spirit of honest reporting: vendor-published
|
| 303 |
-
agent-benchmark numbers are frequently not reproducible under released
|
| 304 |
-
harnesses (we could not reproduce the base model's published Terminal Bench
|
| 305 |
-
2.1 score with either public scaffold, from either of two serving providers);
|
| 306 |
-
paired same-harness comparisons are the only numbers we consider load-bearing.
|
| 307 |
-
Cross-scaffold analysis of all four Terminal Bench runs shows **zero tasks
|
| 308 |
-
where Smaug-Flash robustly regresses** from base under both scaffolds.
|
| 309 |
-
|
| 310 |
-
## 7. Known behaviors and limitations
|
| 311 |
-
|
| 312 |
-
Smaug-Flash is more decisive than its base: it finishes tasks in fewer, denser
|
| 313 |
-
turns and submits sooner. Under tight wall-clock budgets this is an asset (it
|
| 314 |
-
wins several timeout-bound tasks the base loses); under hidden-test grading it
|
| 315 |
-
can submit at ~98% spec coverage without spending remaining budget on
|
| 316 |
-
self-verification. If your use case rewards exhaustive verification over
|
| 317 |
-
decisiveness, prompt for explicit self-testing before completion. Improving
|
| 318 |
-
autonomous verification discipline is the focus of our next training round.
|
| 319 |
-
|
| 320 |
-
## 8. License
|
| 321 |
|
| 322 |
This repository and the model weights are licensed under the [MIT License](LICENSE), matching the base release.
|
| 323 |
|
| 324 |
-
##
|
| 325 |
|
| 326 |
```bibtex
|
| 327 |
@misc{abacusai2026smaugflash,
|
|
@@ -345,11 +159,9 @@ The Smaug line and the DPO-Positive method behind it:
|
|
| 345 |
}
|
| 346 |
```
|
| 347 |
|
| 348 |
-
## 10. Base model
|
| 349 |
-
|
| 350 |
Smaug-Flash builds on DeepSeek-V4-Flash-0731 by DeepSeek-AI:
|
| 351 |
|
| 352 |
-
```
|
| 353 |
@misc{deepseekai2026deepseekv4,
|
| 354 |
title={DeepSeek-V4: Towards Highly Efficient Million-Token Context Intelligence},
|
| 355 |
author={DeepSeek-AI},
|
|
@@ -357,6 +169,6 @@ Smaug-Flash builds on DeepSeek-V4-Flash-0731 by DeepSeek-AI:
|
|
| 357 |
}
|
| 358 |
```
|
| 359 |
|
| 360 |
-
##
|
| 361 |
|
| 362 |
-
|
|
|
|
| 10 |
- smaug
|
| 11 |
- abacusai
|
| 12 |
---
|
|
|
|
| 13 |
<div align="center">
|
| 14 |
<picture>
|
| 15 |
<img src="https://cdn-avatars.huggingface.co/v1/production/uploads/63128dd099791aa61d180c72/dJ6uR23m09M-YEafBpmea.png" width="20%" alt="Smaug-Flash">
|
|
|
|
| 28 |
|
| 29 |
**Abacus.AI** · August 2026
|
| 30 |
|
| 31 |
+
Smaug-Flash is an agentic-coding finetune of [DeepSeek-V4-Flash-0731](https://huggingface.co/deepseek-ai/DeepSeek-V4-Flash-0731). It improves end-to-end agentic performance by a wide margin (+14.3 on LiveBench agentic-coding, +5.6 on Terminal Bench 2.1 under the DeepSeek Harness, +9.6 on AutomationBench, +19 on NL2Repo-Bench) while holding the base model's general capabilities at parity (overall LiveBench +3.4). The weights load exactly like the official release: same layout, same quantization formats, same context length (1M), same reasoning interface.
|
| 32 |
+
|
| 33 |
+
This card describes the training approach and the evaluation results. Dataset contents are not disclosed; training data consists of curated agentic loop traces from various sources — public repositories and traces synthesized from agentic product use cases — plus programmatically generated and verified instruction-following tasks.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 34 |
|
| 35 |
---
|
| 36 |
|
| 37 |
## 1. Training regime: match the serving regime
|
| 38 |
|
| 39 |
+
Smaug-Flash follows the same central thesis as our other Smaug releases: **finetune in exactly the regime the model will be served in.** For this model that means multi-turn agentic episodes in the model's native request format (Responses API semantics) — tool schemas, tool results, and interleaved reasoning present in context exactly as at inference time — generated and evaluated at maximum reasoning effort, with **reasoning tokens loss-masked everywhere**: gradients flow only through action tokens (tool calls) and user-visible message content, never through chain-of-thought, preserving the base model's reasoning distribution while steering its actions.
|
| 40 |
+
|
| 41 |
+
## 2. Training method
|
| 42 |
+
|
| 43 |
+
Smaug-Flash is the composition of three LoRA adapters trained in sequence and merged as full deltas: an **agentic SFT** backbone (teacher-agreement action cloning on top of the model's own on-policy reasoning, plus self-distillation of verifier-passing rollouts), a small **decision-point KTO** stage on minimal pairs targeting perseveration loops and premature finalization, and a **targeted repair SFT** for constrained instruction-following, trained on the already-merged model. Training data is mined at decision points with on-policy resampling and single-decision labels, with anti-confound lints (length matching, format-mass balance) and capability anchors protecting base skills; evaluation fixtures and live benchmark questions are excluded from mining pools by construction.
|
| 44 |
+
|
| 45 |
+
Only the MLA attention factor matrices (129 in total) are adapted; experts, router, embeddings, and the speculative-decoding module remain byte-identical to the official release, packed FP4 included. Adapter deltas are applied in full (no rank truncation) and touched matrices are requantized to the checkpoint-native block-FP8 format. Because only attention changes, any serving stack that runs the official release runs Smaug-Flash unmodified — FP4 expert kernels and speculative decoding paths included. One caution: serve in the checkpoint-native format; requantizing merged weights into a different scheme at load time measurably degrades constrained instruction-following.
|
| 46 |
+
|
| 47 |
+
## 3. Evaluation
|
| 48 |
+
|
| 49 |
+
Measured on fresh 2026 task generations, self-served under the recipe in §5 (agentic cells via the benchmarks' public harnesses), with the base model run through identical harnesses for every paired comparison.
|
| 50 |
+
|
| 51 |
+
### Smaug-Flash vs its base
|
| 52 |
+
|
| 53 |
+
*Higher is better. Paired runs under the same harness; starred base scores are vendor-reported references for the identical public task set. The AA-LCR difference is within run noise.*
|
| 54 |
+
|
| 55 |
+
<div align="center">
|
| 56 |
+
<img src="figures/smaug_flash_vs_base.png" width="100%" alt="Smaug-Flash vs DeepSeek-V4-Flash-0731 across agentic benchmarks">
|
| 57 |
+
</div>
|
| 58 |
+
|
| 59 |
+
### LiveBench category profile
|
| 60 |
+
|
| 61 |
+
*Scores 0–100; overall = mean of the seven category averages. Same harness, same questions (LiveBench 2026-06-25 release), paired against the base model.*
|
| 62 |
+
|
| 63 |
+
<div align="center">
|
| 64 |
+
<img src="figures/smaug_flash_livebench_categories.png" width="100%" alt="Smaug-Flash LiveBench category profile vs base">
|
| 65 |
+
</div>
|
| 66 |
+
|
| 67 |
+
Terminal Bench 2.1 (terminus-2) remeasured 2026-09-02 on the dedicated FP8 Fireworks deployment: 89 tasks, temperature 1.0, top_p 0.95, reasoning_effort max, 32768-token per-step cap, interleaved thinking (reasoning_content carried across steps). 62/89 = 69.7 at uniform 1× task timeouts; the 9 timed-out tasks rerun at 3× timeout converted exactly one, giving the reported 63/89 = 70.8. Supersedes the earlier 65.9 (pre-interleaved-thinking serving).
|
| 68 |
+
|
| 69 |
+
DeepSWE v1.1 measured 2026-09-02 on the official leaderboard protocol (datacurve-pier 0.3.1 driving stock mini-swe-agent 2.4.6, native tool calling): full 113-task corpus, temperature 1.0, top_p 0.95, reasoning_effort max, 65536-token per-step cap, no step limit; 64/113 = 56.6, zero harness errors (the single verifier timeout is a model-induced test hang, counted as a fail). Smaug-Flash served in checkpoint-native FP8 on a dedicated Fireworks deployment.
|
| 70 |
+
|
| 71 |
+
AA-LCR (Artificial Analysis Long Context Reasoning) measured 2026-09-01: temperature 1.0, top_p 1.0 (non-agentic regime), reasoning_effort max, 65536-token output cap, pinned LLM judge; 3 runs (Smaug-Flash) vs 2 runs (base), run-to-run spread ±2 points; both models served in checkpoint-native FP8 on Fireworks (dedicated vs serverless).
|
| 72 |
+
|
| 73 |
+
Reproducibility notes, in the spirit of honest reporting: vendor-published agent-benchmark numbers are frequently not reproducible under released harnesses (we could not reproduce the base model's published Terminal Bench 2.1 score with either public scaffold, from either of two serving providers); paired same-harness comparisons are the only numbers we consider load-bearing. Cross-scaffold analysis of all four Terminal Bench runs shows **zero tasks where Smaug-Flash robustly regresses** from base under both scaffolds.
|
| 74 |
+
|
| 75 |
+
## 4. Known behaviors and limitations
|
| 76 |
+
|
| 77 |
+
Smaug-Flash is more decisive than its base: it finishes tasks in fewer, denser turns and submits sooner. Under tight wall-clock budgets this is an asset (it wins several timeout-bound tasks the base loses); under hidden-test grading it can submit at ~98% spec coverage without spending remaining budget on self-verification. If your use case rewards exhaustive verification over decisiveness, prompt for explicit self-testing before completion. Improving autonomous verification discipline is the focus of our next training round.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 78 |
|
| 79 |
+
## 5. Deployment
|
| 80 |
+
|
| 81 |
+
- SGLang ≥ 0.5.15 on Blackwell: tp=4/8 with `--enable-dp-attention`, `--moe-runner-backend flashinfer_mxfp4` (required for the packed-FP4 experts), fp8 KV cache, full 1M context.
|
| 82 |
+
- Reasoning effort **max**; sampling temperature 1.0, top-p 0.95.
|
| 83 |
+
- For agentic harnesses, note that wall-clock task budgets are effectively *inference-compute* budgets: serving throughput changes measured scores on timeout-bounded benchmarks. Benchmark on serving comparable to what you deploy.
|
| 84 |
|
| 85 |
### Chat template and encoding
|
| 86 |
|
|
|
|
| 104 |
|
| 105 |
### Running with vLLM
|
| 106 |
|
| 107 |
+
Because only attention matrices differ from the official release (§2), any stack that serves DeepSeek-V4-Flash-0731 serves Smaug-Flash unmodified, DSpark speculative decoding included. Example, single 4×GB300 node (see the base model's [vLLM recipe](https://recipes.vllm.ai/deepseek-ai/DeepSeek-V4-Flash?hardware=b300&features=tool_calling,reasoning) for other hardware):
|
| 108 |
|
| 109 |
```bash
|
| 110 |
vllm serve abacusai/Smaug-Flash \
|
|
|
|
| 131 |
|
| 132 |
For the `high` and `max` reasoning effort levels we recommend a maximum output length of **384K** tokens. Local weight conversion and interactive demos: see the [`inference`](inference/README.md) folder.
|
| 133 |
|
| 134 |
+
## 6. License
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 135 |
|
| 136 |
This repository and the model weights are licensed under the [MIT License](LICENSE), matching the base release.
|
| 137 |
|
| 138 |
+
## 7. Citation
|
| 139 |
|
| 140 |
```bibtex
|
| 141 |
@misc{abacusai2026smaugflash,
|
|
|
|
| 159 |
}
|
| 160 |
```
|
| 161 |
|
|
|
|
|
|
|
| 162 |
Smaug-Flash builds on DeepSeek-V4-Flash-0731 by DeepSeek-AI:
|
| 163 |
|
| 164 |
+
```bibtex
|
| 165 |
@misc{deepseekai2026deepseekv4,
|
| 166 |
title={DeepSeek-V4: Towards Highly Efficient Million-Token Context Intelligence},
|
| 167 |
author={DeepSeek-AI},
|
|
|
|
| 169 |
}
|
| 170 |
```
|
| 171 |
|
| 172 |
+
## 8. Contact us
|
| 173 |
|
| 174 |
+
For questions about Smaug-Flash, reach out at [https://abacus.ai](https://abacus.ai).
|
figures/smaug_flash_livebench_categories.png
CHANGED
|
Git LFS Details
|
|
Git LFS Details
|