跳至主要内容

编排

什么是「N 选一最优」采样?

「N 选一最优」是指针对同一个问题生成多个候选答案,然后只保留其中最好的一个。这篇文章说明候选是怎样被挑选出来的,以及为什么选择器的设计比 N 本身的大小更重要。

全部文章 · 最近核实:

为什么它能奏效

语言模型的输出是采样得到的,不是确定性的。同一个提示词跑两次会给出质量不同的不同答案。如果模型的好答案多于差答案,多取几个样本就能提高至少一个是好答案的概率。

这就是全部机制。它不会让模型更聪明,只是在模型已有的能力上给你更多次机会。

挑出胜出者是难的部分

生成候选很容易。在它们之间做选择才是真正的问题,这项技术的大部分价值和大部分失败都在这里。

用自动检查来选择——能不能编译、测试能不能通过、是否符合模式——是迄今为止最可靠的,因为检查独立于模型。用另一个模型来选择就是裁判,那一页里的所有注意事项都适用。人来选择最准确,但扩展性最差。

选择 N

收益递减得很快。从一个候选到三个是很大的提升;从三个到十个只是小幅提升,代价却超过三倍。大多数实际用法落在三到五之间。

N 会精确地成倍放大成本。五个候选就是五倍的生成 token,再加上选择本身的成本。

什么时候不要用

如果你没有办法分辨好答案和差答案,「N 选一最优」帮不了你——你会从更大的一堆里随便挑一个,还要为这个特权多付钱。它的自然归宿是有客观检查手段的工作:代码、结构化输出,任何能明确解析成功或失败的东西。

常见问题

「N 选一最优」和调高温度是一回事吗?
不是,尽管两者会相互影响。温度控制每个答案的多样性有多大。「N 选一最优」关心的是你取多少个、怎么挑。一定的多样性有帮助,因为完全相同的候选没有什么可挑的。
候选可以用不同的模型吗?
可以,而且往往有帮助——模型失败的方式各不相同,所以候选池比同一个模型的重复采样更多样。到这个程度,你已经接近共识了,只是用选择代替了一致性。
这对事实准确性有帮助吗?
只有在你的选择器能检测出事实错误时才有帮助。没有外部检查,你只是在几个都很自信的答案里挑一个,而自信不等于准确。

与其阅读,不如亲自试试

「N 选一最优」是 ClawAI 9 种编排模式之一,它生成的每个候选都会被记录,并对照该次运行的成本。