ChatGPT Prompt工程 笔记
https://www.bilibili.com/video/BV1Mo4y157iF
第1课 引言
LLM:Large Language Model
两种类型的LLMs:
- Base LLM 基础大模型:基于文本训练数据来预测“文字接龙”
- 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