LongBench icon indicating copy to clipboard operation
LongBench copied to clipboard

关于cot

Open Violettttee opened this issue 1 year ago • 6 comments

看代码里如果设置了cot,会请求llm两次,是我理解错了吗?为什么会考虑请求两次呢

Violettttee avatar Dec 26 '24 13:12 Violettttee

你好,cot第一次请求会让模型输出chain of thought (let's think step by step),第二次请求会让模型根据题目以及上一步输出的chain of thought输出最终选择。请参考我们的prompt:https://github.com/THUDM/LongBench/blob/main/prompts/0shot_cot.txt https://github.com/THUDM/LongBench/blob/main/prompts/0shot_cot_ans.txt

bys0318 avatar Dec 29 '24 03:12 bys0318

@bys0318 你好,收到~有一个小小的疑惑,我看第二次输出最终选择的时候,也有一个think step by step的prompt,但是昨天实际测试的时候发现第二次输出最终选择模型似乎不会再cot了,而是直接回复answer,这里和你们测试其他模型时遇到的情况是一样的吗?另外想请教下这种两次cot会比一次cot更好吗?(看了一下那部分相关的论文好像没有直接提到两次cot的方法,可以请教下出处吗。)

Violettttee avatar Dec 29 '24 04:12 Violettttee

第二次请求Let’s think step by step: COT的"COT"是要用第一次请求得到的CoT输出替换掉的,第二次请求只是要求模型根据上一次请求得到的CoT总结得到答案。我们在论文附录D中讲了CoT的测试方法,这种方法参考自GPQA

bys0318 avatar Dec 29 '24 06:12 bys0318

@bys0318 明白~但我疑惑的点主要是为什么没有考虑直接一次cot拿结果呢?

Violettttee avatar Dec 29 '24 06:12 Violettttee

只用一次prompt应该也可以,但是模型在zero-shot下可能不能很好地follow指令。

bys0318 avatar Dec 29 '24 06:12 bys0318

@bys0318 明白,感谢~

Violettttee avatar Dec 29 '24 06:12 Violettttee