提高可靠性的技巧
当 GPT-3 在某个任务上失败时,你应该怎么做?
- 寻找一个能引发更可靠答案的更好提示?
- 投入数千个示例来微调一个定制模型?
- 假设模型无法完成该任务,然后继续前进?
没有简单的答案——这取决于具体情况。然而,如果你的任务涉及逻辑推理或复杂性,可以考虑尝试本文中的技巧来构建更可靠、高性能的提示。
为什么 GPT-3 在复杂任务上失败
如果你被要求计算 13 乘以 17,答案会立即出现在你的脑海中吗?对于我们大多数人来说,可能不会。但这并不意味着人类无法进行两位数的乘法。只需几秒钟,再加上纸和笔,计算出 13 x 17 = 130 + 70 + 21 = 221 并不太费力。
同样地,如果你给 GPT-3 一个过于复杂的任务,以至于它在计算下一个标记的时间内无法完成,它可能会虚构一个错误的猜测。然而,类似于人类,这并不一定意味着模型无法完成该任务。如果有时间和空间进行推理,模型仍然可能可靠地回答。
例如,如果你向 gpt-3.5-turbo-instruct
提出以下关 于杂耍球的数学问题,它会给出错误答案:
Q: 一个杂耍者有 16 个球。其中一半是高尔夫球,而高尔夫球中有一半是蓝色的。有多少个蓝色高尔夫球?
A:
有 8 个蓝色高尔夫球。
这是否意味着 GPT-3 不能解决简单的数学问题?不;事实上,通过向模型提示 让我们一步一步来思考
,模型可以可靠地解决问题:
Q: 一个杂耍者有 16 个球。其中一半是高尔夫球,而高尔夫球中有一半是蓝色的。有多少个蓝色高尔夫球?
A: 让我们一步一步来思考。
总共有 16 个球。
其中一半是高尔夫球。
这意味着有 8 个高尔夫球。
其中一半是蓝色的。
这意味着有 4 个蓝色高尔夫球。
当然,仅从一个例子很难判断 让我们一步一步来思考
这个技巧是否普遍有效,或者只是在这个特定问题上碰巧成功。但它的确有效。在一个文字数学问题的基准测试中,让我们一步一步来思考
这个技巧将 GPT-3 的解决率大幅提升,从毫无价值的 18% 提高到不错的 79%!