虽然提示设计方法没有正确或错误一说,但您可以使用常见的策略来影响模型的回答。严格的测试和评估对于优化模型性能仍然至关重要。
大语言模型 (LLM) 使用大量文本数据进行训练,以学习语言单元之间的模式和关系。在获得一些文本(提示)后,语言模型可以预测接下的内容,就像一个复杂的自动补全工具。因此,在设计提示时,请考虑可能影响模型预测结果的不同因素。
提示工程工作流
提示工程是一个测试驱动的迭代过程,可以增强模型性能。创建提示时,请务必明确定义每个提示的目标和预期结果,并系统性地测试它们以找出需要改进的方面。
下图显示了提示工程工作流:
如何创建有效的提示
提示最终会影响其效果的两个方面:内容和结构。
- 内容:
为了完成某项任务,模型需要与该任务相关的所有信息。这些信息可能包括说明、示例、上下文信息等。如需了解详情,请参阅提示的组成部分。
- 结构:
即使提示中提供了所有必需信息,提供信息结构也有助于模型解析信息。排序、加标签和分隔符的使用都会影响回答的质量。如需查看提示结构的示例,请参阅提示模板示例。
提示的组成部分
下表展示了提示的基本组成部分和可选组成部分:
组件 | 说明 | 示例 |
---|---|---|
目标 | 您希望模型实现的目标。明确并且包含所有总体目标。也称为“任务”或“目标”。 | 您的目标是帮助学生求解数学题,而无需直接给他们提供答案。 |
说明 | 有关如何执行手头任务的分步说明。也称为“任务”“步骤”或“说明”。 |
|
可选组件 | ||
角色 | 模型充当谁或什么角色。也称为“角色”或“愿景”。 | 您是数学教师,帮助学生完成数学作业。 |
限制条件 | 对模型在生成回答时必须遵循的事项的限制,包括模型可以执行和不能执行的操作。也称为“保护措施”“边界”或“控制措施”。 | 请勿直接向学生提供答案。相反,请在下一步解决问题时提供提示。如果学生一片茫然,请为他们提供解决问题的详细步骤。 |
语气 | 回答的语气。您还可以通过指定角色来影响风格和基调。也称为“风格”“语态”或“语气”。 | 请以随意的技术方式进行回答。 |
上下文 | 模型为执行手头的任务需要参考的任何信息。 也称为“后台”“文档”或“输入数据”。 | 学生的数学课程计划副本。 |
少样本示例 | 给定提示的回答应是什么样的示例。也称为“范例”或“样本”。 | input: 我正在尝试计算在具有一立方米体积的箱子中可以容纳多少个高尔夫球。我已将一立方米转换为立方厘米,并除以高尔夫球的体积(以立方厘米为单位),但系统显示我的答案是错误的。output: 高尔夫球是球体,无法以完美效率打包到空间中。您的计算会考虑球体的最大打包效率。 |
推理步骤 | 告诉模型解释其推理。这有时可以提高模型的推理能力。也称为“思考步骤”。 | 分步解释推理。 |
响应格式 | 您希望回答采用的格式。例如,您可以指示模型以 JSON、表格、Markdown、段落、项目符号列表、关键字、电梯间推销等形式输出回答。也称为“结构”“演示文稿”或“布局”。 | 在 Markdown 中设置回答的格式。 |
回顾 | 在提示末尾精确重复提示的要点,尤其是约束和回答格式。 | 不要给出答案,而应提供提示。始终采用 Markdown 格式设置回答。 |
系统说明 | 可能涉及控制或更改模型在一组任务中的行为的技术或环境指令。对于许多模型 API,系统说明均在专用参数中指定。 | 不适用 |
保护措施 | 根据聊天机器人的使命提出问题。也称为“安全规则”。 | 不适用 |
根据手头的特定任务,您可以选择包含或排除一些可选组成部分。您还可以调整组件的顺序,并检查这对回答有何影响。
提示模板示例
以下提示模板向您展示了结构良好的提示的示例:
< Objective and persona (optional) > You are a [XYZ expert | ABC specialist | math teacher | etc.]. Your task is to... < Instructions > To complete the task, you need to follow these steps: 1. 2. ... ------------- Optional Components ------------ < Constraints > DOs and DONTs for the following aspects 1. DOs 2. NOT DOs ... < Context > The provided context < Output format > The output format must be 1. 2. ... < Few-shot examples and reasoning steps > Here we provide some examples: 1. Example #1 Input: Thoughts: Ouptput: ... < Recap > Re-emphasize the key aspects of the prompt, especially the constraints, output format, etc.
最佳实践
提示设计最佳实践包括: