最近在测试千问系思考模型的表现,意外发现从QWQ开始到Qwen 3.6的一系列模型都存在reasoning loop的问题。具体而言就是模型在cot里不断重复类似的内容或者不断进行检查,导致达到max_token从而不输出content。不知道佬友们有没有遇到过类似的情况 ![]()
我使用QWQ-32b,Qwen-3.6-35BA3B,Qwen-3.6-27B在trivial QA,GSM8K,HotpotQA,CoQA上进行测试,具体结果如下:
使用参数为: (点击了解更多详细信息)数量结果
模型 / 运行 数据集 样本数 尝试数 成功 失败 成功率 失败类型 失败样本数 reasoning 长度中位数qwen36-35BA3B
GSM8K
100
500
464
36
0.928
32 length_no_content, 4 length_truncated
24
12718
qwen36-35BA3B
HotpotQA
100
500
403
97
0.806
94 length_no_content, 3 length_truncated
39
14330
qwen36-27b dense
HotpotQA
10
50
33
17
0.660
17 length_no_content
6
13829
qwen36-27b dense
TriviaQA
100
500
446
54
0.892
52 length_no_content, 2 length_truncated
29
14642
qwen36-27b dense
CoQA
100
500
500
0
1.000
无
0
无
qwq-32b targeted rerun
GSM8K 历史失败样本
24
120
107
13
0.892
12 length_no_content, 1 length_truncated
5
15460
qwq-32b targeted rerun
HotpotQA 历史失败样本
42
210
180
30
0.857
29 length_no_content, 1 length_truncated
17
16183
qwq-32b targeted rerun
TriviaQA 历史失败样本
29
145
129
16
0.890
14 length_no_content, 2 length_truncated
10
17076.5
qwq-32b targeted rerun
合计
95
475
416
59
0.876
55 length_no_content, 4 length_truncated
32 个仍失败
16045
单例诊断
模型 / 运行 样本 设置 结果qwen36
HotpotQA 5a85ea095542994775f606a8
temperature=0.2/0.5/0.7/1.0/1.2,各 3 次
15/15 均为 length_no_content
qwen36-27b dense
同一 HotpotQA 样本
temperature=1.0,5 次
5/5 均为 length_no_content
qwq-32b
同一 HotpotQA 样本
temperature=1.0,5 次
4 次成功,1 次 length_no_content
我检查了一些reasoning的模式,发现存在这样几种情形,就像前面的例子那样。为了阅读体验我就不一一截取具体状况了。
第一类是数值题中的边界解释循环。比如GSM8K的lemon tree问题,模型反复在12年break-even和13年开始盈利之间切换。它已经完成主要计算,但无法停止在一个答案上。
第二类是速度、比例和时间关系的解释循环。比如GSM8K中400-meter hurdles的速度提升问题,模型已经得到400/11秒附近的候选答案,但继续反复确认速度提升10%应该如何作用在时间上,直到耗尽token。
第三类是HotpotQA/TriviaQA的多跳实体候选循环。模型会在多个可能实体、作品、学校、城市、人物之间反复切换,常见语言模式包括repeatedly saying Wait, Hmm, Alternatively, maybe。模型似乎无法停止搜索候选。
第四类是有限成功和失败并存。同一个问题在QWQ-32b上可能有的sample成功、有的sample失败。这说明对于QWQ模型似乎是sampling下的reasoning trajectory可能进入不收敛状态。
我打算接下来再去测试Qwen3-32B,看看更早期的模型是不是还是存在这种情况,如果不是的话,也许是千问内部训练策略发生了转变导致的?另外,我使用了Llama3.3-70B进行过对照,没有出现任何的overthinking的问题。剧透
1 个帖子 - 1 位参与者