Prompt

文章目录

  • ChatGPT Prompt Engineering for Developers(吴恩达)
    • 引言
    • 指南
      • Principle
        • principle 1 - Use delimiters
        • principle 1 - Ask for structured output
        • principle 1 - Check whether conditions are satisfied
        • principle 1 - Few-shot prompting
        • principle 2 - 指定完成任务所需的步骤
        • principle 2 - 明确指示模型在做出结论之前推理出自己的解决方案
      • Model Limitations
    • 迭代
    • 摘要
    • 推理
    • 转换
    • 扩展
  • ChatGPT Prompt提示词工程 基础>少样本>思维链
    • 资源

ChatGPT Prompt Engineering for Developers(吴恩达)

引言

base llm : predicts next word based on text training data.

instruction-tuned llm : finetune on instructions and good attempts at following those instructions. often use RLHF to finetune. easy to use.

指南

Principle

  1. 编写明确和具体的指令;
  2. 给模型思考的时间 : 模型因为急于作出结论而出现推理错误/给出过于少的提示以及过于复杂的问题, 模型瞎猜一个答案.
principle 1 - Use delimiters

使用分隔符清楚地指示输入的不同部分:''',""",---,<>,,<\tag>
Prompt_第1张图片
上图用三引号让模型知道这是一个单独的部分, 避免提示词冲突.

principle 1 - Ask for structured output

可以请求使用HTML或者JSON等结构化的输出.

Prompt_第2张图片

或者手工编写 format

principle 1 - Check whether conditions are satisfied

在不同文本下测试prompt.
Prompt_第3张图片

Prompt_第4张图片

principle 1 - Few-shot prompting

给予一些成功的示例.然后再要求模型去执行任务.
Prompt_第5张图片

principle 2 - 指定完成任务所需的步骤

Prompt_第6张图片

principle 2 - 明确指示模型在做出结论之前推理出自己的解决方案


Prompt_第7张图片

Model Limitations

  1. Hallucination : 发表一些听起来晦涩难懂且虚假的言论. 解决策略是: 要求模型找到一些相关的信息再基于这些信息回答问题.

迭代

不断根据需求修改prompt.

摘要

Prompt_第8张图片

Prompt_第9张图片

添加文本的来源, 添加提取的要求.

推理

比如: 情感, 主题, 实体…

分析情感:
Prompt_第10张图片

格式化输出:
Prompt_第11张图片

提取更多的情感关键词并进行其他角度的推理:

Prompt_第12张图片

实体识别与格式化输出:
Prompt_第13张图片

将情感识别, 情感判断, 实体识别统一到一个prompt之中, 并格式化输出:
Prompt_第14张图片

主题判断:
Prompt_第15张图片

转换

比如: 翻译, 格式, 语法…

单语言翻译, 语言判断, 多语言翻译

Prompt_第16张图片

对目标语言, 可以有更细粒度的展示, 比如翻译成不同场合下的文本.
Prompt_第17张图片

格式转换:

Prompt_第18张图片

语法校正
Prompt_第19张图片

扩展

将短文本转化为长文本.

Temperature控制文本的随机性, 值越高, 随机性越强.

ChatGPT Prompt提示词工程 基础>少样本>思维链

视频参考

在LLM中, Prompt指的是用于引导模型生成文本的输入文本.

Prompt的选择和设计影响输出的质量和性能.

不能做什么:

  1. 无法获取外部信息(offline);
  2. 数学计算;
  3. 代码执行.

一个规范的prompt应该包含的要素:

  1. Instruction, 指示模型去执行某一任务, 比如:翻译, 总结, 扩展等;
  2. Context, 提供外部信息或额外的上下文, 引导模型更好地响应, 比如:例子, 角色扮演;
  3. Input Data, 使用分隔符号以突出输入内容;
  4. Output Data, 说明输出的格式.

在Prompt中提供几个样本, 启用模型的In-Context Learning的能力.

思维链: 给出步骤/ “Let’s think step by step”

资源

promptingguide.ai
https://github.com/f/awesome-chatgpt-prompts
https://github.com/PlexPt/awesome-chatgpt-prompts-zh
https://github.com/openai/openai-cookbook

你可能感兴趣的:(prompt,人工智能)