《ChatGPT Prompt Engineering for Developers》
面向开发者的ChatGPT提示工程
shadow
趁着假期,学习了prompt课程,做了一些精简和关键知识点的梳理,分享给大家。
LLM 可完成的任务
包括:
总结(如总结用户评论)
推断(如情绪分类、主题提取)
转换文本(如翻译、改写)
扩展(如自动写电子邮件)
用ChatGPT总结概括https://chirper.ai/shadowai
推断 - 情感分类
转换文本,把一篇深奥的文章变成适合讲解给小朋友的故事
扩展,自动写电子邮件,介绍文章
prompt技巧
当您使用prompt调整LLM时,请考虑将prompt发送给一个聪明但不了解您任务细节的人。如果LLM不能正常工作,有时是因为prompt不够清晰。
第一个原则:编写明确和具体的指令。
第二个原则:给模型足够的时间思考。
不要混淆清晰的提示与简短的提示,因为在许多情况下,更长的提示实际上提供了更多的清晰度和上下文,这有利于LLM符合预期输出。
原则一:明确具体的指令
技巧1:使用区分符
使用分隔符,明确指示输入的不同部分。区分符可以是任何符号,比如```, """, < >, <tag> </tag>,让模型清楚地知道哪些是独立的部分,以避免提示注入。
提示注入(Prompt Injection)是指输入中可能会与我们的指令相矛盾的用户指令,导致模型遵循用户的指令而不是我们的指令。
如果没有区分符,用户可能会添加不相关的输入,导致模型输出错误的结果。因此,使用区分符可以提高模型的准确性和稳定性。
技巧2:结构化输出
为了更容易解析模型输出,要求模型以HTML或JSON等结构化格式输出可能是有帮助的。
技巧3:是否满足条件
如果任务有一些假设并不一定满足,我们可以告诉模型先检查这些假设,如果不满足,则指出并停止任务。
技巧4:少样本提示
few-shot prompting。这种方法是在让模型执行实际任务之前,提供已经成功执行所需任务的示例。
原则二:给模型思考时间
如果你给模型一个太复杂的任务,在短时间内它可能会得到不正确的结果。
技巧1:分步骤补全
首先,我们可以使用明确的步骤来完成一个任务。在这个例子中,我们给模型提供了一个包含Jack and Jill故事的段落,并且使用明确的步骤指示模型完成四个任务:
1.首先,用一句话来概括文本
2.其次将概述翻译成法语
3.然后列出法语概述中的每个名称
4.并且输出一个JSON对象包含"French summary"和"num names"两个key。
运行这个模型后,我们可以看到模型分别完成了这四个任务,并按照我们要求的格式输出了结果。
技巧2:让模型先梳理再给结论
有时,当我们明确指示模型在得出结论之前先理清事情的顺序时,我们会获得更好的结果。
在这个问题中,我们要求模型判断学生的解答是否正确。首先,我们有这个数学问题,然后是学生的解答。
小白的prompt入门实验指南&Mixlab推荐
opus
更多提示工程技巧可以关注社群or知识星球噢~~