最近学了DeepLearning.AI的 ChatGPT Prompt Engineering for Developers课程,总结思维导图➕实操笔记,保留英文以方便学习。
✅课程目标: 关于instruction-tune LLMs/大语言模型的指令微调(Instruction Tuning) 的基础学习
🌸难度:beginner⭐️
-----------------------------------------------------------------
LLM:Large Language Model (大语言模型)
🙋为啥你的LLM不管用?
就像你初次接触陌生人(如服务员),没有交代背景、自我介绍和表达需求,对方无法知晓你到底想要什么样的服务和内容(咖啡,茶,还是juice?//日常的small talk,还是严谨的学术探讨?)
微调(fine-tune)可以更好地遵循指令
-----------------------------------------------------------------
两大原则
1️⃣prompt 必须清晰➕仔细 (Write clear and specific instructions)
💡啥叫清晰?根据《金字塔原理》,“总分总”的结构是较好的表述。
在和模型对话的时候,最原始的基础,也就是语言的清晰表达。
总结来说,你的信息对方能够懂、不误解,切记不可以自说自话。
-----------------------------------
<<<方法一:使用分隔符号 ```, """, < >作为分隔>>>
text = f"""
通过提供清晰且尽可能具体的表达,指导模型执行操作。在多数情况下,越长的 prompts 会带来更好的结果。
"""
prompt = f"""
在三个反引号中总结上述内容,用一句话总结。
```{text}```
"""
response = get_completion(prompt)
print(response)
💡具体见图1
-----------------------------------
<<<方法二:结构化输出,形成JSON,HTML格式>>>
prompt = f"""
生成三个虚构的书名\以JSON格式输出:包含ID、标题、作者和种类
"""
response = get_completion(prompt)
print(response)
💡具体见图2
-----------------------------------
<<<方法三:让模型检查条件是否满足>>>
text = f"""
成为懒羊羊很简单!/ 主要有三个步骤,首先你要是一只可爱的小羊,其次你必须得非常非常懒,每天都不想起床并且/要和喜羊羊沸羊羊和美羊羊做好朋友/然后是发型必须得是螺旋式的像一坨便便/最后你不能被灰太狼抓去,不然就会成为烤全羊。
"""
prompt = f"""
如果上述由"""内的文章包含具体步骤,请以以下形式改写,
步骤1 -
步骤2 -
……
步骤N -
如果text没有提供任何步骤,则回复:\"无步骤"\
\"\"\"{text}\"\"\"
"""
response = get_completion(prompt)
print("Completion for text ")
print(response)
💡具体见图3
-----------------------------------
<<<方法四:依葫芦画瓢式prompts>>>
大致意思是,A问:“什么是小猫?” B答:“喵喵喵”。
提问:“什么是小狗?”
模型输出如下:“汪汪汪”
2️⃣给时间“思考”(Give the model time to “think”)
💡就像你刚买了苹果手机,在网上搜索教学文章《一文带你玩转Iphone》,结合分段的文字和图解,一步步掌握ios系统的用法,so easy。
相反,在职场上,如果遇到表述不清楚的leader,不给新手期,一上来就让你做某事,也不给公司之前的案例和材料,最后还说结果不满意,你也一脸懵。
那么,你作为模型的“leader”,也需要一步一步带着它了解你的工作。
-----------------------------------
<<<方法一:一步步教模型怎么做>>>
<<<方法二:指示模型在得出结论之前,先尝试找出自己的解决方案>>>
你的任务是看看学生的答案是否正确,按照以下步骤完成指令:
- 第一步,你先解题,并找出最后答案
- 第二步,将你的答案与学生的答案进行比较,然后评估学生的答案是否正确
你还没有解出问题的答案前,不要判定学生的答案正确与否
"""
使用如下格式:
问题:
```
学生答案:
```
真正答案:
```
解题步骤:
```
学生的答案和实际答案一样吗
```
学生分数:
```
"""
问题:
小明有 10 个苹果,他给了小红 3 个,又给了小强 2 个。现在小明还剩下多少个苹果?
学生答案:
8
-----------------------------------------------------------------
优化输出的结果
💡Chatgpt输出文案,总是一股“AI味”,想要避免需要优化结果
常见错误:输出太长、内容重点错误、没逻辑不好读
#prompts:
最多500个字,把重点放在xxxxx,并用比较表格的格式方便阅读
-----------------------------------------------------------------
其他优化输出的方式
用提取(extracts)代替总结(summarize)
给模型以情绪提示(喜悦/赞美/负面/制造情感冲突)
#prompts:
文案情绪 = "焦虑"
文案情绪 = "激发消费者想要购买"
-----------------------------------------------------------------
总结
两个原则: 清晰➕仔细 (Write clear and specific instructions)
给时间“思考”(Give the model time to “think”)
重点:优化/迭代 prompt
💡💡思维导图
课程链接:
learn.deeplearning.ai参考教学:13 分鐘精通 ChatGPT Prompt-工程师给旅