OpenAI官方的Prompt工程指南:你可以这么玩ChatGPT( 二 )


策略 4:给模型时间去思考
对于人类来说,要求给出 17 X 28 的结果,你不会立马给出答案,但随着时间的推移仍然可以算出来 。同样,如果模型立即回答而不是花时间找出答案,可能会犯更多的推理错误 。在给出答案之前采用思维链可以帮助模型更可靠地推理出正确答案 。需要做到三点:
首先是指示模型在急于得出结论之前找出自己的解决方案 。
其次是使用 inner monologue 或一系列查询来隐藏模型的推理过程 。前面的策略表明,模型有时在回答特定问题之前详细推理问题很重要 。对于某些应用程序,模型用于得出最终答案的推理过程不适合与用户共享 。例如 , 在辅导应用程序中,我们可能希望鼓励学生得出自己的答案,但模型关于学生解决方案的推理过程可能会向学生揭示答案 。
inner monologue 是一种可以用来缓解这种情况的策略 。inner monologue 的思路是指示模型将原本对用户隐藏的部分输出放入结构化格式中,以便于解析它们 。然后,在向用户呈现输出之前 , 将解析输出并且仅使部分输出可见 。
最后是询问模型在之前的过程中是否遗漏了任何内容 。
策略 5:使用外部工具
通过向模型提供其他工具的输出来弥补模型的弱点 。例如,文本检索系统(有时称为 RAG 或检索增强生成)可以告诉模型相关文档 。OpenAI 的 Code Interpreter 可以帮助模型进行数学运算并运行代码 。如果一项任务可以通过工具而不是语言模型更可靠或更有效地完成,或许可以考虑利用两者 。

  • 首先使用基于嵌入的搜索实现高效的知识检索;
  • 调用外部 API;
  • 赋予模型访问特定功能的权限 。
策略 6:系统的测试变化
在某些情况下,对提示的修改会实现更好的性能,但会导致在一组更具代表性的示例上整体性能变差 。因此,为了确保更改对最终性能产生积极影响,可能有必要定义一个全面的测试套件(也称为评估),例如使用系统消息 。
更多内容 , 请参考原博客 。




推荐阅读