Demo
We gave the base Qwen3.8-Flash-Next and Swift 1.5 Qwen3.8-Flash-Next the same prompt: build a 3D endless runner with the fast, playful feel of Subway Surfers, with its own world and characters, dodging, rewards, rising pace, and instructions to launch it locally.
The base model took 8 minutes 52 seconds to build its game. Swift 1.5 took 4 minutes 56 seconds. Play both games here.
Training approach
We identified reasoning-marker tokens associated with overthinking and penalized their use during fine-tuning. We then used reinforcement learning (RL) and on-policy distillation (OPD) to recover accuracy while keeping reasoning traces shorter. In our testing, we also observe fewer overthinking errors.
We then applied several post-training methods built for long-horizon, multi-turn agent work such as terminal use, coding, and software engineering. In our testing, this makes Swift 1.5 faster and better on those tasks. The agent data behind it is our multi-turn agent SFT dataset.
Benchmark results
All scores compare the Qwen3.8-Flash-Next BF16 base with the Swift 1.5 BF16 checkpoint. Token columns report thinking tokens, except Terminal-Bench 2.1, which reports total generated output tokens.
| Benchmark | Score | Mean tokens | Median tokens | |||
|---|---|---|---|---|---|---|
| Base | Swift 1.5 | Base | Swift 1.5 | Reduction | Reduction | |
| General reasoning | ||||||
| GPQA-Diamond | 89.80% | 89.60% | 17,683 | 7,823 | ↓ 55.8% | ↓ 63.4% |
| MMLU-Pro | 87.75% | 87.20% | 3,528 | 1,519 | ↓ 57.0% | ↓ 24.0% |
| C-Eval | 93.27% | 93.60% | 1,048 | 586 | ↓ 44.1% | ↓ 7.1% |
| IFBench | 73.20% | 70.13% | 8,310 | 4,411 | ↓ 46.9% | ↓ 55.6% |
| Mathematics | ||||||
| AIME 2026 | 98.67% | 96.67% | 23,015 | 15,806 | ↓ 31.3% | ↓ 51.1% |
| HMMT November 2025 | 98.00% | 97.33% | 25,487 | 16,530 | ↓ 35.1% | ↓ 54.7% |
| Multimodal | ||||||
| ERQA | 70.80% | 69.30% | 4,036 | 1,788 | ↓ 55.7% | ↓ 47.7% |
| Agentic coding | ||||||
| DeepSWE 1.1 | 54.87% | 48.97% | 70,861 | 52,986 | ↓ 25.2% | ↓ 27.6% |
| Terminal-Bench 2.1* | 67.64% | 69.66% | 40,591 | 45,428 | ↑ 11.9% | ↓ 17.9% |
| LiveCodeBench v6 | 88.40% | 90.39% | 17,833 | 9,849 | ↓ 44.8% | ↓ 52.0% |
* Note: Terminal-Bench 2.1 results for Flash-Next are not an apples-to-apples comparison with Swift 1.5 27B. Flash-Next used default task timeouts, leading to lower scores for both the base model and Swift Flash-Next.
Swift 1.5 stays within one point of the base on the general-reasoning, mathematics, and multimodal benchmarks while cutting thinking tokens by 31–57% on average, and scores higher on C-Eval, Terminal-Bench 2.1, and LiveCodeBench. IFBench and DeepSWE 1.1 are the two larger losses. On Terminal-Bench it generates 12% more output on average but solves more tasks.
How to reproduce
Serving configuration
BF16 · Qwen3 reasoning parser · context 262,144 · thinking xhigh · MTP disabled. Sampling: temperature 1.0, top_p 0.95, top_k 20, min_p 0, presence_penalty 0, repetition_penalty 1.
Benchmark configurations
Five seeds (0–4) for the seeded question benchmarks; DeepSWE uses three attempts per task and Terminal-Bench 2.1 five attempts per task. LiveCodeBench is the full release v6, mean pass@1 over seeds.
Terminal-Bench 2.1: Harbor 0.20.0 / Terminus-2 2.0.0, the pinned 89-task dataset, JSON parser, interleaved thinking, temperature 1, top_p 1, a 131,072-token server context, a 3,600-second LLM call timeout and native per-task limits. Swift used concurrency 8; its context-recovery fix was applied during the run.
| Benchmark | Output cap |
|---|---|
| GPQA-Diamond | 100,000 |
| MMLU-Pro | 100,000 |
| C-Eval | 16,384 |
| IFBench | 81,920 |
| AIME 2026 | 250,000 |
| HMMT November 2025 | 250,000 |
| ERQA | 100,000 |
| DeepSWE 1.1 | Agent/task limits |
| LiveCodeBench v6 | 100,000 |
Reasoning effort
Qwen3.8's reasoning_effort setting lets users choose how much the model thinks. We measured GPQA-Diamond at each setting, Swift 1.5 against the base at the same setting.
| Reasoning effort | Score | Mean tokens | Median tokens | |||
|---|---|---|---|---|---|---|
| Base | Swift 1.5 | Base | Swift 1.5 | Reduction | Reduction | |
| Xhigh | 89.80% | 89.60% | 17,683 | 7,823 | ↓ 55.8% | ↓ 63.4% |
| Medium | 86.36% | 83.74% | 4,157 | 2,483 | ↓ 40.3% | ↓ 25.1% |
| Low | 87.17% | 84.75% | 3,966 | 2,645 | ↓ 33.3% | ↓ 19.7% |
At xhigh, Swift 1.5 trails the base by 0.20 percentage points while using 55.8% fewer mean and 63.4% fewer median thinking tokens. Medium and low save tokens but also lose 2.62 and 2.42 percentage points respectively.
Quantized models
The BF16 checkpoint is about 360 GB and needs a multi-GPU node; we evaluated it with tensor parallelism 8. Smaller builds are published alongside it.
| Format | Repository | Runtime |
|---|---|---|
| AWQ INT4 (W4A16) | Swift-1.5-Qwen3.8-Flash-Next-W4A16-AWQ | vLLM (compressed-tensors) |
| AutoRound INT4 (W4A16) | Swift-1.5-Qwen3.8-Flash-Next-W4A16-AutoRound | vLLM (auto-round) |
| NVFP4 | Swift-1.5-Qwen3.8-Flash-Next-NVFP4 | NVIDIA Blackwell |
| GGUF | Swift-1.5-Qwen3.8-Flash-Next-GGUF | llama.cpp |
| GSQ-RCO GGUF | Swift-1.5-Qwen3.8-Flash-Next-GSQ-RCO-GGUF | llama.cpp |
Run Swift 1.5 Flash-Next
Swift 1.5 Flash-Next is served through an OpenAI-compatible API at https://ukisai.com/api/flash-next/v1, free for research and without an API key; the model id is flash-next. To run it yourself, use a vLLM or SGLang build with Qwen3.8-Flash-Next support and adjust tensor parallelism and context length to your GPU memory. Reasoning effort is set per request through the chat template; xhigh is the default, medium and low are also supported.
vLLM configuration
vllm serve ukisai/Swift-Qwen3.8-Flash-Next \
--dtype bfloat16 \
--tensor-parallel-size 8 \
--max-model-len 262144 \
--reasoning-parser qwen3 \
--enable-auto-tool-choice \
--tool-call-parser qwen3_xml \
--trust-remote-code \
--port 8000SGLang configuration
sglang serve \
--model-path ukisai/Swift-Qwen3.8-Flash-Next \
--tp 8 \
--context-length 262144 \
--mem-fraction-static 0.85 \
--reasoning-parser qwen3 \
--tool-call-parser qwen3_coder \
--port 8000UkisAI API
curl https://ukisai.com/api/flash-next/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model": "flash-next", "messages": [{"role": "user", "content": "Hello, Swift."}]}'Optional MTP decoding
# vLLM
--speculative-config '{"method":"mtp","num_speculative_tokens":1}'
# SGLang
--speculative-algorithm NEXTN --speculative-num-steps 3 \
--speculative-eagle-topk 1 --speculative-num-draft-tokens 4For hardware-specific options, see the base model's vLLM recipe or SGLang cookbook. The checkpoint includes the base model's one-layer MTP head; the benchmark scores above were measured without it. Transformers usage and the YaRN settings for a 1,000,000-token context are in the model card.
License
Swift 1.5 Qwen3.8-Flash-Next is a derivative of Qwen3.8-Flash-Next (Qwen Community License 1.0). UkisAI's contribution, including the adapted weights, is licensed under the Swift Open License v1.0. Personal, research, educational, evaluation, and commercial use of the Swift contribution are free for individuals and organizations with gross annual revenue, including affiliates, of up to US$1 million. Above that threshold, commercial use requires a separate Swift Enterprise License.
The base model's terms still apply to it. Under the Qwen Community License 1.0, organizations that run a Model-as-a-Service or AI Work Assistant business need a separate license from Qwen before any commercial use, and products above 100 million monthly active users or US$20 million monthly revenue must prominently display the model name. Nothing in the Swift Open License limits your rights in Qwen3.8-Flash-Next itself under the Qwen Community License.
Contact us for enterprise licensing. For the 27B model, see Swift 1.5 Qwen3.8-27B and the Swift 1.0 technical report.
Acknowledgements
We acknowledge the NVIDIA Innovation Lab, Amazon Web Services, and Google Cloud for providing compute credits and infrastructure support for Swift's development, training, and evaluation.
