编排
什么是「N 选一最优」采样?
「N 选一最优」是指针对同一个问题生成多个候选答案,然后只保留其中最好的一个。这篇文章说明候选是怎样被挑选出来的,以及为什么选择器的设计比 N 本身的大小更重要。
全部文章 · 最近核实:
为什么它能奏效
语言模型的输出是采样得到的,不是确定性的。同一个提示词跑两次会给出质量不同的不同答案。如果模型的好答案多于差答案,多取几个样本就能提高至少一个是好答案的概率。
这就是全部机制。它不会让模型更聪明,只是在模型已有的能力上给你更多次机会。
挑出胜出者是难的部分
生成候选很容易。在它们之间做选择才是真正的问题,这项技术的大部分价值和大部分失败都在这里。
用自动检查来选择——能不能编译、测试能不能通过、是否符合模式——是迄今为止最可靠的,因为检查独立于模型。用另一个模型来选择就是裁判,那一页里的所有注意事项都适用。人来选择最准确,但扩展性最差。
选择 N
收益递减得很快。从一个候选到三个是很大的提升;从三个到十个只是小幅提升,代价却超过三倍。大多数实际用法落在三到五之间。
N 会精确地成倍放大成本。五个候选就是五倍的生成 token,再加上选择本身的成本。
什么时候不要用
如果你没有办法分辨好答案和差答案,「N 选一最优」帮不了你——你会从更大的一堆里随便挑一个,还要为这个特权多付钱。它的自然归宿是有客观检查手段的工作:代码、结构化输出,任何能明确解析成功或失败的东西。
常见问题
- 「N 选一最优」和调高温度是一回事吗?
- 不是,尽管两者会相互影响。温度控制每个答案的多样性有多大。「N 选一最优」关心的是你取多少个、怎么挑。一定的多样性有帮助,因为完全相同的候选没有什么可挑的。
- 候选可以用不同的模型吗?
- 可以,而且往往有帮助——模型失败的方式各不相同,所以候选池比同一个模型的重复采样更多样。到这个程度,你已经接近共识了,只是用选择代替了一致性。
- 这对事实准确性有帮助吗?
- 只有在你的选择器能检测出事实错误时才有帮助。没有外部检查,你只是在几个都很自信的答案里挑一个,而自信不等于准确。
与其阅读,不如亲自试试
「N 选一最优」是 ClawAI 9 种编排模式之一,它生成的每个候选都会被记录,并对照该次运行的成本。