2022-8-24
学习目的:
- 了解prompt的相关知识
- 学习使用openAI的API
0 Introduction
LLM可以分为两类:
- Base LLM:基于文本训练数据,预测下一个词。
- Instruction LLM:前期用Base LLM,加入Fine-tune,根据prompt和answer进行调整,加入有人工反馈的强化学习。Helpful,Honest,Harmless。(目前的主流趋势)
1 Guidelines
1.1 如何写prompt的两个关键原则:
- Write clear and specific instructions.
- Give the model time to think.
1.2 实践
step 1:
- 获取openAI的API keys
- 使用分隔符’‘’ ‘’'来提示model分隔符中的内容是要进行操作的文本
- 可以要求model输出固定格式的结果
- 可有告诉model让model去检查条件是否满足,检查任务所需要的假设是否符合
- LLM在某些任务上可以理解为是Few-shot prompting,当你给一个成功的例子后,LLM就可以给出你想要的答案。
step 2:
- Specify the steps to complete a task.
- Instruct the model to work out its own solution before rushing to a conclusion.(可以获得更准确的结果)
1.3 Model Limitation
模型在训练过程中接触了大量的知识,但是他可能并没有完全记住或学会,他并不清楚自己的知识边界。因此他在面对一些晦涩难懂的问题时,可能会编造一些看起来似乎合理,实际上并不正确的答案。目前吧这种捏造的想法称为幻觉(Hallucination)。
3 Iterative(Iterative Prompt Development)
如何构建你自己的prompt,如何写一个清晰而具体的prompt。
Prompt Guidlines:
- Be clear and specific.
- Analyze why result does not give desired output.
- Refine the idea and the prompt.
- Repeat
举了一个制作椅子的例子,可以控制model对哪一部分详细描述,写多少词或者输出固定的格式(如HTML)……
记住这个prompt development是一个循环的过程。首先你要尝试一些例子(尽量让你的prompt清晰具体);如果结果不尽人意,要分析为什么结果不是你想要的;clarify your instructions(让它更清晰易懂),给model一些时间去思考;重复这个循环,迭代的去修改你的prompt直到获得你想要的结果。
4 Summarizing(Summarizing Text)
举了一个买小熊的例子,想给女儿买一个小熊,但是描述的十分口语化,并且有一些不重要的冗余内容,让ChatGPT生成一段总结。
LLM不仅可以summarize还可以extract,可以从一段话中提取出一些想要的或者重要的信息。
5 Inferring
可以推理情绪(积极的/消极的)以及更多内容。
5.1 Traditional Machine Learning Workflow
- Collect the label data set.
- Train a model
- Figure out how to deploy the model somewhere in the cloud.
- Make inferences.
每做一项任务可能就要训练一个机器学习模型,但LLM可以通过不同的prompt完成不同的任务。
6 Transforming
可以完成把一段话翻译成不同的语言,格式转换等等工作。
- 学习语法,可用于语法校正、拼写错误校正
- ChatGPT可以作为一个通用翻译,可以翻译成多国不同语言
- ChatGPT could produce different tones.表达不同的语气、口吻、风格。
- 可以把日常对话转换成Business Letter(readlines库能够展示修改模式)
7 Expanding
Expand a shorter text to a longer text. (email, essay……)
可以作为AI客服,自动回复客户邮件(可根据客户邮件内容的细节、情绪,回复感谢或道歉)
设置参数Temprature,Temperature越大,生成的内容越随机,越富有想象力。
8 Chatbots
message作为input,response作为output,对message中的角色进行设定,比如让他扮演一个客服。
9 Conclusion
- Two Principles
- Iterative Prompt Develpment
- Capabilities:Summarizing,Inferring,Transforming,Expanding
- Building a chatbot