wenyii commited on
Commit
b2b189f
·
verified ·
1 Parent(s): 2d2b5ea

Add README for dt-4bT-mixed-s50

Browse files
Files changed (1) hide show
  1. README.md +82 -0
README.md ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ base_model: Qwen/Qwen3-4B-Thinking-2507
4
+ tags:
5
+ - multi-turn-agent
6
+ - search-r1
7
+ - cross-domain-transfer
8
+ - sft
9
+ pipeline_tag: text-generation
10
+ ---
11
+
12
+ # wenyii/dt-4bT-mixed-s50
13
+
14
+ **Multi-turn agent SFT on Qwen3-4B-Thinking-2507** — `mixed` arm,
15
+ checkpoint at training step `s50`.
16
+
17
+ Part of an ICLR-target analysis study on cross-domain transfer of multi-turn
18
+ agent SFT (Qwen3-4B-Thinking, dual-terminator recipe). Sister checkpoints in
19
+ the same family:
20
+
21
+ | Arm | Steps available |
22
+ |---|---|
23
+ | `r2e` (code) | `s50`, `s100`, `ep1` (=s218) |
24
+ | `search` | `s50`, `s100` |
25
+ | `mixed` (50/50) | `s50`, `s100` |
26
+
27
+ Full step curves (s50/s100/s150/s200/ep1/ep2) available on request.
28
+
29
+ ## Training recipe ("dt" = dual-terminator)
30
+
31
+ - **Base**: `Qwen/Qwen3-4B-Thinking-2507`
32
+ - **Data**: 3500 multi-turn trajectories per arm
33
+ - `r2e`: code-agent trajectories (R2E / SWE-Gym style, ending in
34
+ `<tool_call>{finish}`)
35
+ - `search`: search-agent trajectories (OpenSeeker + NQ-style, ending
36
+ in `Final answer: X`)
37
+ - `mixed`: 50/50 shuffle of r2e + search
38
+ - **Recipe diff vs. v5 (one-line edit)**: for the r2e arm, append
39
+ `Final answer: <pr_description-headline, ≤200 chars>` epilogue AFTER
40
+ the standard `<tool_call>{finish}`. This dual-terminates the trajectory
41
+ so a downstream literal-EM evaluator (Search-R1) can still extract the
42
+ final answer.
43
+ - **Optimizer**: LR 1e-5, cosine schedule, warmup 0.03, weight decay 0,
44
+ grad clip 1.0, batch 16, FSDP1 + Liger + flash-attn (bf16).
45
+ - **Saves**: steps 50, 100, 150, 200, 218 (=ep1), 436 (=ep2 for
46
+ search/mixed; r2e capped at ep1).
47
+
48
+ ## How to use
49
+
50
+ ```python
51
+ from transformers import AutoModelForCausalLM, AutoTokenizer
52
+ tok = AutoTokenizer.from_pretrained("wenyii/dt-4bT-mixed-s50")
53
+ mdl = AutoModelForCausalLM.from_pretrained("wenyii/dt-4bT-mixed-s50", torch_dtype="bfloat16")
54
+ ```
55
+
56
+ Or with vLLM:
57
+
58
+ ```bash
59
+ python -m vllm.entrypoints.openai.api_server \
60
+ --model wenyii/dt-4bT-mixed-s50 --port 8000 --tensor-parallel-size 1
61
+ ```
62
+
63
+ For full multi-turn agent inference (retriever + tool-call parsing + answer
64
+ cascade extractor), see the reference SR1 7-bench eval pipeline
65
+ distributed alongside the paper.
66
+
67
+ ## Headline numbers (Search-R1 7-bench, N=500 per bench, mml=16384)
68
+
69
+ dt-r2e-s100 reaches **EM 0.344 / F1 0.430** on SR1 7-bench, vs Qwen3-4B-Thinking-2507
70
+ base + `Final answer:` prompt nudge anchor at EM 0.302 / F1 0.389. See the
71
+ companion paper for the full 7-bench / per-arm / multi-seed analysis.
72
+
73
+ ## Citation
74
+
75
+ ```bibtex
76
+ @inproceedings{wenyimo2027dt4b,
77
+ title={...},
78
+ author={Mo, Wenyi and ...},
79
+ booktitle={ICLR 2027},
80
+ year={2027}
81
+ }
82
+ ```