编辑
2024-11-18
ChatGPT进阶:提示工程入门
00

目录

BROKE框架
背景(Background):信息传达与角色设计
角色(Role):AI助手的角色扮演游戏
目标与关键结果(Object&Key Results):给ChatGPT“打绩效”
目标
关键结果
改进(Evolve):进行试验与调整

BROKE框架模板。对于简单的问题可以不使用框架。

BROKE框架

  • 阐述背景B(Background):说明背景,为ChatGPT提供充足的信息。
  • 定义角色R(Role):给ChatGPT定义角色。
  • 定义目标O(Objectives):指我们希望ChatGPT能够实现什么目标。
  • 定义关键结果K(KeyResults):指我们想要什么具体效果。
  • 试验并调整,改进E(Evolve):将以下三种改进方法自由组合。
    • 改进提示:从答案的不足之处着手改进背景、目标与关键结果。
    • 改进答案:在后续对话中指正ChatGPT答案的缺点。
    • 重新生成:尝试在提示不变的情况下多次生成结果,优中选优。

背景(Background):信息传达与角色设计

Let's think step by step, 1. 接下来我会向你提一个“目标”。为了完成目标,你需要从不同方面出发,拆解问题的背景,去分析解决这个问题需要哪些信息。 - 获得这些信息后,你应该能够对这个问题进行彻底、全面、深入的分析。 2. 根据你的分析,向我提一些问题以询问你需要知道的信息,从而达成目标。 - 向我提尽可能多的问题,用于提供背景信息。 - 问题要可衡量、具体,能够回答关键信息。 目标: ### (这里写你的目标) ###

通过上面的提问,ChatGPT 会向你询问背景,这时你可以提供一些原始文档或链接来避免自己去思考。注意 ChatGPT 有限的上下文和单次对话的字数限制。

在处理简单问题时,我们无须花费大量时间和精力去使用复杂的框架,只需要根据实际需求来设计简洁明了的问题背景即可。

  • 任务的宏观背景:提供整体背景,如行业、技术领域、业务范围等。
  • 任务的微观场景:提供具体的问题背景,帮助ChatGPT理解具体发生了什么,为什么会有这个需求。
  • 相关知识或信息:包括解决问题所需技能、概念、术语、已知限制或约束等。
  • 提问者的角色和立场:明确提问者的身份、需求和期望,使ChatGPT能够更好地定制回应。

角色(Role)
助手的角色扮演游戏

设计角色的框架

  • 明确角色定位:让ChatGPT清楚地知道这个角色是做什么的。
  • 界定角色功能:清晰地告诉ChatGPT这个角色可以解决哪些问题。
  • 设定互动规则:指导ChatGPT如何与用户进行有效的互动。

例子

(明确角色定位)现在我希望你扮演一个世界一流的中国川菜厨师,(界定角色功能)你擅长将各种各样的食材灵活组合,做出好吃又营养的家常菜。(设定互动规则)我会告诉你我的冰箱里有什么食材,而你需要根据现有的食材,告诉我利用它们可以做什么菜。你可以自由灵活地组合食材,制作出各种新的菜肴,无须拘泥于已有的菜谱。你将为我提供菜谱。 - 我是贵州人,喜欢吃辣椒。 - 提供的菜肴要好吃,符合做菜的规则。 - 冰箱里有猪肉、芹菜、豆腐、胡萝卜、鸡蛋。

目标与关键结果(Object&Key Results):给ChatGPT“打绩效”

目标与关键结果是相辅相成的:明确的目标有助于我们制定出可衡量的关键结果,而具体的关键结果则可以帮助我们对目标进行微调,以便更精确地满足需求。

目标

清晰明确

如果我们要求ChatGPT写一篇“有关××的文章”​,这个目标就太过宽泛。我们可以要求它“写一篇关于××的议论文”​“写一篇关于××的科幻剧本”等,限定的文章体裁“议论文”或“剧本”就比“文章”更清晰明确。

目标导向

我们需要ChatGPT帮助解决一个数学问题,我们应该让它“求解方程2x+3=7”​,而不是让它“用减法和除法求解方程”​。不过如果你有特殊的个性化需求,这条规则也是可以改变的,即可以根据需求指定过程。

适度的范围和难度

不要让ChatGPT预测下周的股票走势,因为这个任务超出了它的能力范围。如果目标太大,可以对其逐步拆解。

保持目标简洁

尽量避免过长的目标描述,以便让ChatGPT能更好地抓住问题关键与核心需求。

关键结果

在设计关键结果时,我们可以遵循SMAR原则,即具体(Specific)、可衡量(Measurable)、可实现(Attainable)、相关(Relevant)。

具体

  • 明确描述预期输出,如“生成一篇1000字以上的文章”​;
  • 避免过于宽泛的描述,如“写一篇长文章”​。

可衡量

  • 为关键结果设定数量或百分比,如“列出至少10种麻辣口味的炒菜菜谱”​;
  • 为关键结果设定质量标准,如“回答中的理论需要是学术领域的共识,并有权威的来源”​。

可实现

关键结果应符合ChatGPT的能力范围,并要考虑任务的难度和复杂性。过高的期望可能会导致不理想的输出,而过低的期望则可能无法充分发挥ChatGPT的潜力。

相关

  • 保持关键结果与目标的一致性,如目标是“写一篇关于气候变化的文章”​,关键结果可以是“包含3个主要观点和相关证据”​;
  • 避免不相关的关键结果,如“使用5种不同的文学手法”​,这可能导致输出偏离主题。不过这条规则并非固定的,在使用过程中可根据需求灵活变动。

改进(Evolve):进行试验与调整

根据不同情境与生成答案的缺点,我们需要对指令进行调整、在对话中加以指正或重新生成回答。

在使用ChatGPT的过程中,我们可能会遇到三种情况

指令给得不够清楚

  • 改进背景:检查提供给ChatGPT的信息是否充足。
  • 改进角色:可以酌情添加修饰词,或更换新角色。
  • 改进目标:检查是否明确说明了要生成什么内容。
  • 增加/修改关键结果:若ChatGPT的回答没有体现出你想要的内容,可以在关键结果中补充说明要求。

ChatGPT做得不好,或回答有错误

在后续对话中要求ChatGPT改进有缺点的回答。

运气不好,遇到糟糕的回答

尝试在提示不变的情况下重复生成回答,优中选优。ChatGPT的回答是具有随机性的,使用相同的提示也会输出不同的回答。

以上三种解决方案通常需要组合起来重复、多次使用,才可以得到满意回答。

本文作者:jdxj

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!