OpenAI官方Prompt工程指南详解:六大原则助力高效人机交互
创作时间:
作者:
@小白创作中心
OpenAI官方Prompt工程指南详解:六大原则助力高效人机交互
引用
CSDN
1.
https://blog.csdn.net/weixin_59191169/article/details/137587207
随着人工智能技术的不断发展,大模型在各个领域的应用越来越广泛。然而,如何有效地与大模型进行交互,使其更好地满足我们的需求,成为了许多用户关注的问题。近日,OpenAI在其官方文档中发布了Prompt engineering(提示词工程)指南,为用户提供了权威且有效的指导。本文将对这份指南进行详细解读,帮助读者掌握与大模型交互的核心技巧。
OpenAI在指南中提出了六大核心原则:
- 写出清晰的指令
- 提供参考文本
- 将复杂的任务拆分为更简单的子任务
- 给模型时间“思考”
- 使用外部工具
- 系统地测试变更
接下来,本文将对这些原则进行详细解读,并结合具体示例帮助读者更好地理解。
一、写出清晰的指令
这是所有原则中最核心的一条。清晰的指令能够帮助大模型更好地理解用户的需求,从而提供更准确的回复。OpenAI给出了以下六条小技巧:
- 把话说详细:尽量提供详细的上下文信息,避免过于笼统的表述。
- 示例:不要说:“总结会议记录”,而是说:“用一个段落总结会议记录。然后写下演讲者的Markdown列表以及他们的每个要点。最后,列出发言人建议的后续步骤或行动项目(如果有)。”
- 让模型充当某个角色:通过设定角色,使模型能够更专业地完成任务。
- 示例:让模型扮演一个喜欢讲笑话的喜剧演员,要求其在回复中加入幽默元素。
- 使用分隔符清楚地指示输入的不同部分:使用三引号、XML标签等分隔符可以帮助模型更好地理解文本结构。
- 示例:使用三引号分隔文本:“”“在此插入文字”“”
- 指定完成任务所需的步骤:将复杂任务分解为一系列步骤,使模型更容易完成。
- 示例:分步说明:“步骤1 - 用户将为您提供三引号中的文本。用一个句子总结这段文字,并加上前缀“Summary:”。步骤2 - 将步骤1中的摘要翻译成西班牙语,并添加前缀“翻译:”。”
- 提供例子:通过few-shot prompt的方式,给模型提供参考示例。
- 示例:要求模型模仿特定风格:“”“落霞与孤鹜齐飞,秋水共长天一色。渔舟唱晚,响穷彭蠡之滨”“”
- 指定输出长度:明确要求模型生成特定长度的输出。
- 示例:要求模型生成两个段落的摘要:“”“在此插入文字”“”
二、提供参考文本
通过提供参考文本,可以显著降低大模型胡说八道的概率,提高回答的准确性和可靠性。
- 让模型使用参考文本作答:直接要求模型基于提供的文档回答问题。
- 示例:“使用提供的由三重引号引起来的文章来回答问题。如果在文章中找不到答案,请写“我找不到答案”。”
- 让模型通过引用参考文本来回答:要求模型在回答时引用具体文档段落,增加答案的可验证性。
- 示例:“您将获得一份由三重引号和一个问题分隔的文档。您的任务是仅使用提供的文档回答问题,并引用用于回答问题的文档段落。如果文档不包含回答此问题所需的信息,则只需写:“信息不足”。如果提供了问题的答案,则必须附有引文注释。使用以下格式引用相关段落({“引用”:…})。”
三、将复杂的任务拆分为更简单的子任务
将复杂任务分解为更简单的子任务,可以显著提高模型的处理效果。
- 使用意图分类来识别与用户查询最相关的指令:通过意图识别,可以更准确地定位用户需求。
- 示例:对于“我断网了咋整”这类问题,先进行意图识别,再给出具体解决方案。
- 对于需要很长对话的对话应用,总结或过滤之前的对话:解决模型上下文长度限制的问题。
- 解决方案:可以采用对话摘要、异步总结或向量库存储等方式。
- 分段总结长文档并递归构建完整总结:处理超长文档时,可以采用分段总结再递归汇总的方式。
- 参考研究:OpenAI在《Summarizing Books》中详细介绍了这种总结方法的有效性。
四、给模型时间“思考”
通过chain-of-thought(CoT)提示,可以让模型逐步推理,提高答案的准确性和可靠性。
- 让模型在急于得出结论之前找出自己的解决方案:避免模型过早下结论。
- 示例:要求模型先制定解决方案,再与参考答案进行比较。
- 使用内心独白来隐藏模型的推理过程:对于某些应用场景,可能需要隐藏模型的推理过程。
- 示例:通过多次API调用,隐藏模型的推理过程,仅展示最终结果。
- 询问模型在之前的过程中是否遗漏了什么内容:确保模型充分考虑所有相关信息。
- 示例:要求模型检查是否遗漏了相关片段:“还有更多相关片段吗?注意不要重复摘录。还要确保相关片段包含解释它们所需的所有相关上下文。”
五、使用外部工具
大模型并非万能,对于某些特定任务,使用外部工具会更有效。
- 使用基于嵌入的搜索实现高效的知识检索:通过RAG(Retrieval Augmented Generation)方式增强知识检索能力。
- 实现步骤:加载文件 -> 读取文本 -> 文本分割 -> 文本向量化 -> 问句向量化 -> 匹配相似文本 -> 生成回答。
- 使用代码执行来进行更准确的计算或调用外部API:对于计算任务,让模型生成Python代码进行计算。
- 示例:求解多项式方程:“求以下多项式的所有实值根:3x**5 - 5x4 - 3*x3 - 7*x - 10。”
- 给模型提供特定的功能:通过API传递函数描述,让模型生成函数参数。
- 应用场景:数据查询、数据处理等。
六、系统地测试变更
对于开发者来说,系统地测试Prompt变更非常重要,以确保改进是有效的而非偶然。
- 建议:建立评估程序,判断Prompt优化是否真正有效。
- 参考链接:https://platform.openai.com/docs/guides/prompt-engineering/strategy-test-changes-systematically
写在最后
OpenAI的Prompt engineering指南内容详尽且实用,远胜于市面上大多数零散的框架和课程。掌握这些原则和技巧,能够显著提升与大模型交互的效果。值得注意的是,良好的日常表达能力和沟通能力,对于Prompt的编写同样至关重要。
正如某公司的一条价值观所言:“布阵清晰、传球舒服、接球靠谱”,无论是与人还是与AI交互,清晰的表达和有效的协同都是成功的关键。
热门推荐
贴玉米面饼子怎么做的又松又软
固态硬盘使用寿命一般是几年?固态硬盘寿命一般几年?看这篇够了
海棠四季开花吗?如何实现四季开花的效果?
四季开花的长春花如何养护
高血压用药指南:奈必洛尔 vs 贝凡洛尔,谁更适合你?
《海底两万里》阅读与作业完成攻略
从《海底两万里》到现代潜水艇:科学幻想成真!
从《海底两万里》到《三体》,科幻迷必读
福岛核废水排海争议再起波澜
福岛核污水排海:全球健康的隐形威胁?
双11后,拼多多“百亿补贴”的真实效果如何?
广州南沙湿地:小白鹭的最佳约会地
如何用手机拍出小白鹭的高光瞬间?
黄嘴白鹭:亟需保护的湿地精灵
西溪湿地:小白鹭的秘密栖息地
秋冬湿地里的白鹭:生态守护者
秋冬养生:肝气郁滞人群的营养秘籍
缅甸北部电影产业:从神秘之地走向世界舞台
春季养肝小妙招:情绪调节很重要!
肝气郁结?这些中医调理方法让你轻松应对
女性如何应对肝气郁结?从情绪管理到日常调理全攻略
克拉霉素正确使用全攻略:从剂量到禁忌,这些要点你必须知道
冬季高发!克拉霉素对抗上呼吸道感染的秘密武器
秋冬流感高发,抗生素不是万能药
如何确保个人财务数据的安全
如何正确连接音频功放与音箱?选择合适功放机至关重要,优化音响效果
不同年龄,血糖正常值有所不同?
明确!事关退休!上海办理退休需要什么条件?
警惕“换钱”陷阱:微信支付宝互转安全指南
武夷山:碧水丹山间的文化瑰宝