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交互,清晰的表达和有效的协同都是成功的关键。
热门推荐
减肥期间如何计算每日脂肪摄入量
撤回与撤销的区别详解
锂电池截止电压及电流的设定:安全与性能的平衡
侯宗原国学易经五行的相互作用和变化
如何编写高效的登录界面测试用例?
火爆全球的基因Akg到底是何方神秘物质?对大健康从业者有何机遇?
微信群中遭到污蔑、造谣如何维权?
戏曲爱好者,从零开始,助你逐步掌握锣鼓经的精髓!
都是血缘近亲,马和驴能跨物种基因交流,为啥人与黑猩猩却不行?
毛驴与马的杂交:驴骡的奇特之路与科学揭秘
上海久事男篮问鼎首届CBA俱乐部杯 西安“金牌球市”再现辉煌
企业会计准则第6号:无形资产
Amesim应用篇-制冷剂压焓图软件Coolpack简介与冷媒流量评估
焊缝尺寸的计算公式
嗓子里总有痰?五种情况五种药,对症下药效果好!
富贵竹晒太阳会怎样?晒太阳对富贵竹有什么影响?
太空为什么是黑色的?揭秘宇宙中最基本的现象
弥补亏损如何做账务处理?
三棱的功效与作用
高血压患者慎食这五种蔬菜,科学饮食助力血压控制
网络安全专业建设的未来方向:跨界融合与协同创新
用力性头痛有危险吗
一文详解网线直通线、交叉线的制作标准、用途、区别及各线芯引脚功能
如何合理设置卖出限价?这样的设置有哪些影响因素?
为什么晚上睡得很充足了,白天却还是犯困?看专家怎么说
植筋深度一般多少d,植筋施工中的注意事项
基金定投操作指南:市场下跌时的应对策略
AI数字人直播变现:从技术突破到商业落地
电吉他音箱和效果器选购指南:新手必读
《地理标志产品 永川豆豉》地方标准启动实施