如何编写高质量 Prompt

2024/3/15 LLMChatGPTPromptLangGPT

# 结构化提示词

# 什么是结构化提示词

像写文章一样写 Prompt,使用各种各样的模板。

LangGPT Demo:

# Role: 诗人

## Profile

- Author: YZFly
- Version: 0.1
- Language: 中文
- Description: 诗人是创作诗歌的艺术家,擅长通过诗歌来表达情感、描绘景象、讲述故事,具有丰富的想象力和对文字的独特驾驭能力。诗人创作的作品可以是纪事性的,描述人物或故事,如荷马的史诗;也可以是比喻性的,隐含多种解读的可能,如但丁的《神曲》、歌德的《浮士德》。

### 擅长写现代诗
1. 现代诗形式自由,意涵丰富,意象经营重于修辞运用,是心灵的映现
2. 更加强调自由开放和直率陈述与进行“可感与不可感之间”的沟通。

### 擅长写七言律诗
1. 七言体是古代诗歌体裁
2. 全篇每句七字或以七字句为主的诗体
3. 它起于汉族民间歌谣

### 擅长写五言诗
1. 全篇由五字句构成的诗
2. 能够更灵活细致地抒情和叙事
3. 在音节上,奇偶相配,富于音乐美

## Rules
1. 内容健康,积极向上
2. 七言律诗和五言诗要押韵

## Workflow
1. 让用户以 "形式:[], 主题:[]" 的方式指定诗歌形式,主题。
2. 针对用户给定的主题,创作诗歌,包括题目和诗句。

## Initialization
作为角色 <Role>, 严格遵守 <Rules>, 使用默认 <Language> 与用户对话,友好的欢迎用户。然后介绍自己,并告诉用户 <Workflow>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

# 结构化 Prompt 的优势

  • 层级结构:内容与形式统一
    • 结构清晰,可读性强
      • Role:作为标题,明确角色
      • Profile:角色的基本信息
        • Author:作者
        • Version:版本
        • Language:语言
        • Description:描述
      • Skill:技能描述
      • Rules:规则
      • Workflow:工作流程
      • Initialization:初始化
    • 结构丰富,内容详尽
  • 提升人和模型对 Prompt 的语义认知
    • 标识符标识
    • 属性词提示和归纳
  • 特定属性词唤醒大模型深度能力
    • Role 属性词,唤醒模型角色认知
  • 像代码开发一样构建生产级 Prompt
    • 有规范
    • 可复用

# 写好结构化 Prompt

  • 构建全局思维链
    • 好的结构化 Prompt 模板,某种意义上是构建了一个好的全局思维链

    Role (角色) -> Profile(角色简介)—> Profile 下的 skill (角色技能) -> Rules (角色要遵守的规则) -> Workflow (满足上述条件的角色的工作流程) -> Initialization (进行正式开始工作的初始化准备) -> 开始实际使用

  • 保持上下文语义一致性
    • 格式语义一致
      • 标识符功能全局一致
    • 内容语义一致
      • 属性词语义合适
  • 灵活结合其他 Prompt 技巧
    • 细节法
      • 更清晰的指令,包含更多的细节
    • 分解法
      • 将复杂的任务分解为更简单的子任务
      • Let's think step by step,CoT,LangChain
    • 记忆法
      • 构建指令使模型时刻记住任务,确保不偏离任务解决路径
      • system 级 Prompt
    • 解释法
      • 让模型回答之前进行解释,说明理由
      • CoT
    • 投票法
      • 让模型给出多个结果,然后使用模型选择最佳
      • ToT
    • 示例法
      • 提供一个或多个具体例子,提供输入输出示例

# 结构化模型对不同模型的适用性

不同模型的能力维度不同,从最大化模型性能的角度出发,有必要针对性开发相应的 Prompt。

发现结构化 Prompt 在 GPT-3.5 表现不佳时,可以考虑降低结构复杂度、调整属性词、迭代修改 Prompt。

# 结构化 Prompt 的局限性

  • Prompt 依赖于基座模型能力,不能解决模型本身的问题
    • 幻觉问题
    • 知识时效性问题
    • 数学推理能力弱问题
    • 视觉能力弱问题
    • 字数统计问题
    • 相同 Prompt 在不同模型间的性能差异问题
最近更新: 4 个月前