03 学习地图 | 编写清晰的说明 - 分隔符的重要作用

分隔符使用 提示词编写 模型理解优化 Prompt 设计
在编写提示词时,使用分隔符可以有效区分不同内容,防止模型混淆。常用的分隔符包括三引号、XML标记、章节标题和Markdown代码块分隔符。这些分隔符帮助模型清晰识别提示词设定、引用内容或任务文本,确保生成结果准确。例如,使用三连符号或三引号可以框定参考文本或任务设定,避免与上下文混淆。通过合理使用分隔符,模型能够更好地理解并执行复杂的提示词任务。
文章内容
思维导图
常见问题
社交分享

在编写提示词的时候,当我们想要标注一整块独立的内容,我们需要使用分隔符清楚标明输入内容的不同部分。这样做可以防止模型误解这段文本,把它和我们其他提示语句混淆。

分隔符可以这样使用:

**三引号:“”" **这里是要分隔的内容文本 “”"

XML 标记:<引文> 这里是引用的文本

**章节标题:**用不同的章节标题来划分生成的内容段落:第一章、第二章

**Markdown 的代码块分隔符: **这里是要分隔的内容

也可以是一些通常不会连续出现的符号的连续使用,例如

—···+++

但为了避免和其他代码语言或格式混淆,尽可能使用前三种分隔符方式。

但是,我们通常会在什么样的场景下使用这些分隔符呢?

为了把我们的提示词设定,和引用的内容区隔开,以便模型理解它们是不同的部分(而不都是你给出的设定)

这里是一个例子:

在这个例子中,

第一次我们用 — 这样的三连符号(Markdown 中的分隔符),框起了一段参考文本。

这是为了避免我们引用的这段参考文本,和我们本身对模型提出的要求相互混淆,导致模型理解错误。

第二次我们用 — 这样的三连符号,框起了一段特定格式。

这是为了避免我们希望模型采用的生成格式,和我们前文给出的设定和我们给出的参考文本相互混淆,导致混乱的生成结果。

我们再来看一个更容易理解的简单例子:

在这个例子中,我们把需要模型单独处理的任务文本用 ``` 这样的分隔符隔开,以便它清晰的区分任务文本和任务设定。

有的时候,我们也可以直接使用三引号:

在上面这个例子中,黄色框起的部分展示了这样一种用法:我们把需要用户输入的内容简略的用分隔符区分,这样模型会基于这部分信息执行 Prompt,而不是自己生成内容。

如果我们需要 ChatGPT 理解整段 Prompt 并进行进一步的对话和操作,我们需要同时使用两个符号:

橙色框中是为了把这段 Prompt 单独以代码块的形式分隔出来,这样不会和我们的上下文相互混淆。

绿色框中是上一段落提到的三引号引文的作用。

✨ 如果觉得有收获,请点一点下方的“有启发” ✨

🌱 这可以让我知道你们的阅读情况 🌱

思维导图生成中,请稍候...

问题 1: 为什么在编写提示词时需要使用分隔符?
回答: 使用分隔符可以清楚标明输入内容的不同部分,防止模型误解文本,避免与其他提示语句混淆。

问题 2: 常用的分隔符有哪些?
回答: 常用的分隔符包括三引号(“”")、XML 标记(<引文>)、章节标题(如第一章、第二章)、Markdown 的代码块分隔符()以及一些特殊符号组合(如 —···+++)。

问题 3: 在什么场景下需要使用分隔符?
回答: 分隔符通常用于将提示词设定与引用的内容区隔开,以便模型理解它们是不同的部分,避免混淆。

问题 4: 如何避免分隔符与其他代码语言或格式混淆?
回答: 尽可能使用三引号、XML 标记或章节标题等常见分隔符,以减少与其他代码语言或格式的混淆。

问题 5: 如何使用分隔符来区分任务文本和任务设定?
回答: 可以使用 Markdown 的代码块分隔符(```)将任务文本单独隔开,以便模型清晰区分任务文本和任务设定。

问题 6: 三引号在分隔内容时有什么作用?
回答: 三引号用于将需要用户输入的内容简略区分,确保模型基于这部分信息执行 Prompt,而不是自己生成内容。

问题 7: 如何让 ChatGPT 理解整段 Prompt 并进行进一步操作?
回答: 可以同时使用代码块分隔符和三引号,将 Prompt 以代码块的形式分隔出来,避免与上下文混淆,并确保模型正确理解引文部分。

问题 8: 使用分隔符的好处是什么?
回答: 使用分隔符可以提高模型的准确性,避免生成混乱的结果,确保模型正确理解和处理不同部分的内容。

问题 9: 有没有具体的例子展示分隔符的使用?
回答: 文章提供了多个示例,展示了如何使用不同的分隔符(如 —、```、三引号)来区分参考文本、生成格式和任务文本。

问题 10: 如何选择合适的分隔符?
回答: 根据具体场景和内容类型选择合适的分隔符,优先使用三引号、XML 标记或章节标题等常见且不易混淆的分隔符。