在和 ChatGPT 对话中,Prompt 提示词的选择,如果遵循以下六种策略,我们将获得更好、更符合要求的回答。
这些策略,后几种更适合在编程调用 ChatGPT API 时使用,不过也适用直接和 ChatGPT 对话,让它更好的理解我们的意图。
1、写清楚说明,
2、提供参考文本,
3、将复杂任务拆分为更简单的子任务,
4、给 ChatGPT 时间“思考”,
5、使用外部工具,
6、系统地测试更改。
本篇先对前两个策略及具体操作进行说明和举例:
策略一、写清楚说明
ChatGPT 无法去猜测提问者的期望想法,它是一个通用模型。如果输出太长,您可以要求简短的答复。如果输出太简单,您可以请要求专家级的写作。如果您不喜欢这种格式,请展示您希望看到的格式。ChatGPT 对您想要什么的猜测越少,回答正确的可能性就越大。
具体操作
提问中包含详细信息来获得更相关的回答;要求 ChatGPT 采用角色;使用间隔符清楚地指示输入的不同部分;指定完成任务所需的步骤;提供例子;指定所需的输出长度。
策略二、提供参考文本
ChatGPT 可以自信地编造假答案,尤其是当被问及深奥的话题或引用和 URL 时。就像一张笔记可以帮助学生在考试中取得更好的成绩一样,为 ChatGPT 提供参考文本可以减少这种造假情况。
具体操作
指示模型使用参考文本回答;指示模型使用参考文本中的引用来回答。
下面是两种策略下,具体操作做法举例说明。
1.1 在提问中包含详细信息来获得更相关的回答
为了获得高度相关的回答,请确保请求提供任何重要的细节或上下文。否则的话,ChatGPT 就会按一般通用想法来猜测您的意思。
如何在 Excel 中添加数字?
更好的提问:如何在 Excel 中将一行美元金额相加?我想对整张行自动执行此操作,所有总计都在右侧的名为“总计”的列中结束。
谁是总统?
更好的提问:谁是 2021 年的墨西哥总统,选举的频率如何?
编写代码来计算斐波那契数列。
更好的提问:编写一个 TypeScript 函数来高效地计算斐波那契数列。自由地评论代码以解释每一部分的作用以及为什么这样写。
总结会议记录。
更好的提问:在一个段落中总结会议记录。然后写下演讲者的降价清单和他们的每个要点。最后,列出演讲者建议的后续步骤或行动项目(如果有)。
1.2 要求 ChatGTP采用角色
指定 ChatGPT 在其回复中使用的角色。
“当我请求帮助写东西时,你会回复一份文档,每个段落至少包含一个笑话或俏皮的评论。”
“给我的钢螺栓供应商写一封感谢信,感谢他在短时间内准时交货。这使我们能够交付重要订单。”
1.3 使用间隔符清楚地指示输入的不同部分
三重引号、XML 标记、章节标题等分隔符可以帮助区分要区别对待的文本部分。
用俳句总结由三重引号分隔的文本。”””在此插入文本“””
对于诸如此类的简单任务,使用间隔符可能不会对输出质量产生影响。然而,任务越复杂,消除任务细节的歧义就越重要。不要让 GPT 工作以准确理解您对它们的要求。
1.4 指定完成任务所需的步骤
有些任务最好指定为一系列步骤。明确地写出步骤可以 ChatGPT 更容易遵循步骤回答。
“接下来的回答请使用以下步骤。第 1 步 – 用户将用三重引号为您提供文本。在一个句子中总结这段文字,并加上一个前缀“Summary:”。第 2 步 – 将第 1 步中的摘要翻译成中文,并加上前缀“Translation:”。你明白了吗?”
1.5 提供例子
如果您打算让模型复制一种难以明确描述的特定样式来响应用户查询。这被称为“适当”的提示。
以一致的风格回答。询问:“教我耐心。”回答:“开辟最深山谷的河流从温和的泉水流出;最伟大的交响乐源于一个音符;最复杂的挂毯始于一根单独的线。”
提问:教我认识海洋。
如果不给提示,模型将会使用通用模型风格回答这个问题。
1.6 指定输出的所需长度
您可以要求模型生成具有给定目标长度的输出。目标输出长度可以根据单词、句子、段落、要点等的计数来指定。但是请注意,指示模型生成特定数量的单词并不能实现高精度。
2. 提供参考文本
2.1 指示模型使用参考文本回答
如果我们可以为模型提供与当前查询相关的可信信息,那么我们可以指示模型使用提供的信息来编写其答案。
使用由三重引号分隔的提供的文章来回答问题。如果在文章中找不到答案,写“我找不到答案”。
<插入文章,每篇文章用三重引号分隔> 问题:<在此处插入问题>
2.2 指示模型使用参考文本中的引文来回答
如果输入已补充相关知识,则可以直接要求模型通过引用所提供文档中的段落来为其答案添加引文。请注意,输出中的引用可以通过提供的文档中的字符串匹配以编程方式进行验证。
您将获得一份由三重引号和一个问题分隔的文件。您的任务是仅使用提供的文件回答问题,并引用用于回答问题的文件中的段落。如果文档不包含回答此问题所需的信息,则只需写上:“信息不足”。如果提供了问题的答案,则必须用引文进行注释。使用以下格式引用相关段落 ({“citation”: …})。
“””<在此处插入文档>””” 问题:<在此处插入问题>
下期预告:六种策略(中)