| --- |
| license: apache-2.0 |
| language: |
| - en |
| datasets: |
| - AweAI-Team/CalibForge |
| base_model: |
| - Qwen/Qwen3.5-35B-A3B |
| --- |
| |
| # CalibForge-35B-A3B |
|
|
| <p align="center"> |
| <img src="assets/calibforge-overview.png" alt="Overview of CalibForge and its evaluation results" width="100%"> |
| </p> |
|
|
| <p align="center"> |
| 📄 <a href="https://arxiv.org/abs/2608.06352">Paper</a> · |
| 💻 <a href="https://github.com/AweAI-Team/CalibForge">Repository</a> · |
| 🤗 <a href="https://huggingface.co/datasets/AweAI-Team/CalibForge">Dataset</a> · |
| 🤖 <a href="https://huggingface.co/AweAI-Team/CalibForge-30B-A3B">30B Model</a> |
| </p> |
|
|
| CalibForge-35B-A3B is a terminal-agent model fine-tuned from [Qwen3.5-35B-A3B](https://huggingface.co/Qwen/Qwen3.5-35B-A3B) using full-parameter, multi-turn supervised fine-tuning. Its training trajectories were distilled from **5,431** calibrated terminal tasks spanning 16 domains. **CalibForge** uses verified solver outcomes and full trajectories to revise executable terminal tasks toward a solver-relative learnable zone. See the [paper](https://arxiv.org/abs/2608.06352) for the task-construction pipeline. |
|
|
| ## Evaluation Results |
|
|
| | Model | Terminal-Bench 2.0 Acc. (%) ↑ | SWE-bench Pro Resolved (%) ↑ | Doc2Repo Pass Rate (%) ↑ | |
| |---|---:|---:|---:| |
| | Qwen3.5-35B-A3B (base) | 39.10 ± 1.09 | 41.29 | 44.92 ± 1.14 | |
| | **CalibForge-35B-A3B (this model)** | **47.57 ± 0.99** | **44.32** | **48.77 ± 0.90** | |
|
|
| Terminal-Bench 2.0 and Doc2Repo results are reported as mean ± SEM over three runs; SWE-bench Pro is evaluated once. Terminal-Bench 2.0 uses [CalibForge-Eval](https://github.com/AweAI-Team/AweAgent/tree/main/recipes/terminal_bench_v2) with a 500-step limit, a one-hour per-task timeout, and sandboxes capped at 16 CPUs and 32 GB RAM. SWE-bench Pro and Doc2Repo use their official evaluation scaffolds; corresponding AweAgent recipes are available for [SWE-bench Pro](https://github.com/AweAI-Team/AweAgent/tree/main/recipes/swe_bench_pro) and [Doc2Repo through BeyondSWE](https://github.com/AweAI-Team/AweAgent/tree/main/recipes/beyond_swe). See the paper for comparisons with other training-data sources and for the complete evaluation and decontamination protocols. |
|
|
| <p align="center"> |
| <img src="assets/tb2-category-results.png" alt="Terminal-Bench 2.0 tasks solved by category for CalibForge-35B-A3B and its base model" width="400"> |
| </p> |
|
|
| ## Usage with SGLang |
|
|
| Install a recent SGLang release with Qwen3.5 MoE support, then launch an OpenAI-compatible server: |
|
|
| ```bash |
| uv venv --python 3.12 .venv |
| source .venv/bin/activate |
| uv pip install "sglang[all]" |
| |
| python -m sglang.launch_server \ |
| --model-path AweAI-Team/CalibForge-35B-A3B \ |
| --tp 8 \ |
| --dp 1 \ |
| --trust-remote-code \ |
| --enable-metrics \ |
| --max-running-requests 40 \ |
| --reasoning-parser qwen3 \ |
| --tool-call-parser qwen3_coder \ |
| --mem-fraction-static 0.85 \ |
| --host :: \ |
| --port 40003 |
| ``` |
|
|
| ## Model Details |
|
|
| | Property | Value | |
| |---|---| |
| | Backbone | Qwen3.5-35B-A3B | |
| | Precision | BF16 | |
| | Configured maximum positions | 262,144 | |
| | Training method | Full-parameter, multi-turn SFT | |
| | Training context length | 131,072 tokens | |
| | Training epochs | 10 | |
| | Optimizer | AdamW (`β₁=0.9`, `β₂=0.999`) | |
| | Learning rate | `1.0e-5`, cosine schedule, 0.05 warmup ratio | |
| | Global batch size | 128 | |
| | Training hardware | 64 × NVIDIA H20 GPUs | |
|
|
| ## License |
|
|
| The model is released under the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). |
|
|
| ## Citation |
|
|
| If you use this model, please cite the CalibForge paper: |
|
|
| ```bibtex |
| @misc{meng2026calibforge, |
| title = {CalibForge: Adversarial Solver Calibration for Scaling Learnable Terminal Tasks}, |
| author = {Fanzhe Meng and Guoxin Chen and Jiale Zhao and Shuang Sun and Zhiyu Lin and Wayne Xin Zhao and Ruihua Song and Ji-Rong Wen and Kai Jia}, |
| year = {2026}, |
| eprint = {2608.06352}, |
| archivePrefix = {arXiv}, |
| primaryClass = {cs.LG}, |
| url = {https://arxiv.org/abs/2608.06352} |
| } |
| ``` |
|
|