编写提示词的两个原则:
原则一:清晰、明确
原则二:由提示词编写者自己提供解决问题的思考过程
大家可以看到这个指令里面
中间这个部分是用三个引号引起来的,我们希望这部分其实就是一个变量
每个人可以按照自己的想法要求去输入自己想要的内容
那我们如何通过一套指令把这个事情做好呢,我们就需要把这个,就是模型做这件事情思考的过程尽可能的讲清楚。
首先整个这个指令也很好的遵循了第一个原则,清晰、明确
我们在这里面定义清楚了
求职信他的要求
以及这里面的一些希望它完成求职信的风格,在这个过程当中额外的还定义出了写这个求职信的思考路径是什么
这里面标黄的三部分
希望在开头的时候,通过要提及说你是如何获取到这个岗位信息的
然后在中间的部分呢,要去描绘说你的哪些经验和这个岗位是匹配的
然后最终在结尾的地方要标示对这个岗位的期待等等
我们可以看到在右侧的生成结果里面,第一段的结尾就确实提到了相关的内容,说持续关注着ai的发展,然后在得知了贵司在招聘这样一个岗位,然后第二段关于自己的技能和岗位的关系,它讲了三点,1,2,3。
在指令里面增加这样一些内容,给模型一个具体的思考逻辑,让它去想说完成这个事情该怎么去做
那总结下来,其实大模型工作的过程,还是非常相似人脑的工作过程,就像我们招聘一个刚毕业的学生,那让这个学生去做这个事情,就是第一个原则,你必须给他一个清晰的目标,然后
做这个事情的第一个原则
你必须给他一个清晰的目标
然后他才有可能把这个事情做好,那有的问题呢比较有难度,你光给它目标也不够,那么有的时候就需要把自己的,特别是有些问题,你其实有自己的思路。
就是想把一个事情做好,可能大家的思路也不一样,就是你要把你的独特的思考的逻辑,也变成一个指令给它,大模型。
这两个信息都给到之后,大模型才有可能把这个事情做好。
然后我一直觉得你能够把这个指令写好,其实就好像你能设计出一个非常好的产品功能,需要你有非常好的、清晰的逻辑思路,逻辑思维。
其实原则上就是这么两条
那有什么好的方案,能够在我们写的过程中,帮助我们把这个逻辑梳理清楚呢
那就是有一些大家总结出来的指令开发的框架,
比如最常见的这个icio,它的这个做法就是把指令分成四个部分
第一部分是context,然后呢在这个环节里面,一般我们会去讲一讲这个角色、任务还有需要完成这个任务的背景知识
第二个环节(部分),就是步骤
然后在这个里面会把这个执行的步骤、思维链、样例数据给出来,让模型遵守这样一个执行的步骤去完成这个任务
第三个就是输入的数据
第四部分就是给出一个输出的一个定义和一个输出的指引
这是一个比较常见,也是比较灵活的一个架构
其实指令的结构会有很多
像icio这样的架构其实就是灵活性比较高
但是它也并没有说有很详细的定义告诉编写指令的人,你一定要写一个角色,要去写一个目标等等
除了icio
还有其他的开发框架
比如说langgpt
还有crispe是一个专门写广告的一个框架
每一个框架都有一个适合自己的场景
我们可以拿写广告的案例来去看
说在不同的框架下,每个框架分别有什么优劣
在写广告的这个案例当中
我们看到icio这个框架是会把这个写作的要求,身份等等其他信息都集中在一起
所以在icio这种框架下,编写指令的方式比较灵活,大家要怎么去把指令写好,更大程度上发挥我们这个,写指令同学自己的主观能动性【让编写的人自己去想办法】
没有什么具体的固定规则 = 什么都没说
什么都可以写= 什么都没说
比较灵活=没有什么具体的固定规则=什么都可以写=什么都没说
那对我这个初学者而言,就更不知道该从哪里开始了
当然你也可以按照icio的四个要素作为一个基础模板先写一个作为一个做这个事情的一个切入点,起始点,开始点,不然就一直没有动手做
而langgpt这种框架,更偏开发,给了很多细节的要求,在这里面会明确的定义出来为了把这个广告写好,你应该给我一个goal、然后为了把这个广告写好你的限制是什么,通过把这些东西拆解出来,然后给我们一个思考的路径 ,让我们把写指令过程当中应该关注的逻辑都提炼出来
最后一个框架他本身就是一个营销工具里面迭代出来的这么一个写指令的框架,然后他在这里面专门有一个部分涉及到了洞察力,然后你到底这个指令的目标用户是什么,所以他就比较适合在这个营销场景去完成指令结构的一个设计。
总结下来,写指令需要我们的逻辑能力、产品能力。
通过这个框架
甚至不同的任务类型我们可以设计不同的框架
我们也可以设计适合自己场景的不同的框架帮我们更好更快的完成一个指令逻辑的梳理。