同一个 LLM 可以写出五个版本的函数。下面介绍如何让它们真正不同。
基于 LLM 的 N 版本编程不需要多个模型。通过变化提示词、角色设定和推理约束,你可以从单个模型中提取多样化且正确的实现。
N 版本编程默认多样性来自不同的作者。对 LLM 来说,这意味着不同的模型、不同的提供商,甚至不同的训练批次。但这个假设是错的。你可以通过改变提问的方式,而不是提问的内容,从同一个模型中获得有意义的多样性。 问题在于:把 temperature 调到 1.0…
2 posts
基于 LLM 的 N 版本编程不需要多个模型。通过变化提示词、角色设定和推理约束,你可以从单个模型中提取多样化且正确的实现。
N 版本编程默认多样性来自不同的作者。对 LLM 来说,这意味着不同的模型、不同的提供商,甚至不同的训练批次。但这个假设是错的。你可以通过改变提问的方式,而不是提问的内容,从同一个模型中获得有意义的多样性。 问题在于:把 temperature 调到 1.0…
N-version programming 曾承诺独立团队会犯独立的错误。Knight 和 Leveson 在 1986 年的实验证明了相反的事实,NASA 悄然放弃了这条路线。
20 世纪 80 年代初,NASA 面临着一个至今仍在困扰安全关键工程领域的问题:如何容忍那些尚未发现的 bug?他们的答案是 N-version programming。将同一份规范交给三个独立团队。并行运行三个程序。对输出结果进行投票。如果其中一个团队写出了 bug,另外两个团队会通过多数票将其压倒。…