Prompt 提示词原理/组成/编写原则/编写技巧

Source

Prompt 原理

  • GPT在处理Prompt时,GPT模型将输入的文本(也就是Prompt)转换为一系列的词向量。
  • 然后,模型通过自回归生成过程诸葛生成回答中的词汇。在生成每个词时,模型会基于输入的Prompt以及前面生成的所有词来进行预测。
  • 这个过程不断重复,直到模型生成完整的回答

你认为Prompt Engineering的重要性如何?

一个有效的Prompt 可以:

  • 提升AI 模型给出的答案的质量
  • 缩短与AI模型的交互时间,提高效率。

提示词策略差异

  • 通用模型
    • 需要显示引导推理步骤, 比如通过CoT提示,否则可能会忽略关键逻辑
    • 依赖提示词补偿能力短板,比如要求分步骤思考,提供few-shot参考示例等。
  • 推理模型
    • 提示语更简洁,只需要明确任务目标和需求,因为模型已经内化了推理逻辑
    • 无需逐步指导,模型会自动化生成结构化推理过程。如果强行分步骤拆解,反而会降低其推理能力

提示词关键原则

  • 模型选择
    根绝任务类型选择,而非模型热度
    比如创意类任务选择用通用模型,数学、无力、编程等理科推理等推理类任务选择推理模型。
  • 提示词设计:
    通用模型:结构化、补偿性和引导=>缺什么,补什么
    推理模型:简介指令、聚焦目标、信任其内化能力=>要什么,直接说
  • 避免误区:
    不要对通用模型过度信任,如直接问复杂推理问题,需要分步骤进行
    不要对推理模型急性启发式(简单)提问,推理模型会给你过于复杂的深度结果。对于复杂问题,推理模型依然会有错误的可能,或存在忽略某些细节的可能,这时需要多次交互。

Prompt 编写原则

  • 明确目标:清晰定义任务,以便模型理解
  • 具体指导:给予模型明确的指导和约束
  • 简洁明了:使用简练、清晰的语言表明Prompt
  • 适当引导:通过示例或问题边界引导模型
  • 迭代优化:根据输出结果,持续调整和优化
    一些有效做法
    • 强调,可以适当的重复命令和操作
    • 给模型一个出路,如果模型可能无法完成,告诉他说“不知道”
    • 尽量具体,对于专业性要求强的,少留解读空间

Prompt 的组成

  1. 任务(Task): 始终以动词开始任务句子(如“生成”,“给予”,“写作”等),明确表达你的最终目标,可以有多个。
  2. 上下文(Context):提供上下文背景、所处环境等。
  3. 示例(Exemplars): 提供具体的例子,用于可以提高输出质量。有时候我们没有示例,这时可以让GPT帮忙生成示例。
  4. 角色(Persona): 你希望AI 扮演的角色。可以是具体的人,也可以是虚构的角色。
  5. 格式(Format): 你希望输出的格式,如表格、列表、段落等。
  6. 语气(Tone): 制定输出的语气,如正式、非正式、幽默等。
    重要性排序:任务>上下文>示例>角色>格式>语气
    写prompt是一个不断尝试和调整的过程

Prompt编写技巧

  1. 限制模型输出的格式
  2. 使用分隔符区分输入的不同部分
  3. 提供样例
  4. CoT思维工具 :(Chain of Thought 思维链)通过将复杂任务分解为多个简单的步骤,帮助模型系统的思考并解决问题。
  5. 面向不同的角色进行详解