ChatGPT Prompt工程 笔记

https://www.bilibili.com/video/BV1Mo4y157iF

第1课 引言

LLM:Large Language Model

两种类型的LLMs:

  1. Base LLM 基础大模型:基于文本训练数据来预测“文字接龙”
  2. instruction tuned LLMs 指令调整型模型:遵循指示的培训 RLHF 人类反馈强化学习 reinforcement learning from human feedback

第2课 指南

Principle 1 编写简洁明确的指示

Write clear and specific instructions

(clear != short)

Tactic 1 使用分隔符

Use delimiters

Tactic 2 请求使用结构化的输出

Ask for structured output

比如HTML格式或者JSON格式

Tactic 3 检查条件是否满足需求

Check whether conditions are satisfied

Check assumptions required to do the task 检查结果是否满足需求

Tactic 4 少量样本的提示

Few-shot prompting (少样本提示)

  • Give successful examples of completing tasks 给一些样例
  • Then ask model to perform the task 然后让模型按照样例完成任务

Principle 2 给模型思考的时间

Give the model time to think

Tactic 1 明确按步完成任务

Specify the steps to complete a task

Step 1:...
Step 2:...
...
Step N:...
Tactic 2 指示模型自己完成任务

Instruct the model to work out its own solution before rushing to a conclusion(在匆忙得出结论之前,指示模型自己找出解决方案)

第3课 迭代 Iterative Prompt Development

迭代提示开发

  • Try something
  • Analyze where the results does not give what you want
  • Clarify instructions, give time to think
  • Refine prompts with a batch of examples

第4课 摘要 Summarize text

直接使用文本输入的形式,同时设置prompt,直接让模型输出总结/摘要。

根据 摘要需求 不断调整Prompt。可利用 for+列表 的形式不断询问。

第5课 推理 Inferring

模型以文本为输入并执行某种分析的任务(例如提取标签、提取名称、理解文本情感)

代替传统的数据集处理、训练、部署模型的步骤

使用通常的分隔符进行处理,可以让模型仅输出一些词汇(例如positive/negative)

《零样本学习》

第6课 转化 Transforming

语言翻译、纠正拼写和文法、转换格式(代替正则表达式)

例子:翻译(正式或非正式)、判断为何种语言、使用不同语气翻译、转换至JSON/HTML格式、检查文本错误、检查差异并改写错误、改变语气

第7课 扩展 Expanding

将短文本(如一组说明或主题列表)通过大模型转化为更长的文本(例如电子邮件)

Temperature:模型的探索程度/随机性 为0的时候:准确性最高(相当可预测的)

第8课 聊天机器人 ChatBot

利用提示词将大模型设置为一个聊天机器人

利用上下文提示聊天机器人(以点单机器人为例)

第9课 总结

原则:

  • 编写清晰明确的指示
  • 在适当情况下给模型思考的时间

迭代提示:定制提示词

LLM的有用作用:总结、推理、转换和拓展

自定义ChatBot