一个主动驾驶产物司理的ChatGPT办法论:BORE
作者 | 陈财猫
我是一个主动驾驶行业的产物司理,也是ChatGPT的第一批用户。第一次遇见ChatGPT是在客岁十二月的第一个星期,有一个搞AI的伙伴在群里发了一张与ChatGPT的谈天截图,惹起了我的兴致,自此我便一发不成拾掇。
刚开头,我与ChatGPT的交互主要限于找乐子:我和ChatGPT一同写小说,叫它读我伙伴写的诗,用它和楼上一大早就开头装修的邻人吵架。
△一些关于风水的友好发起
厥后,我用它画流程图,做数据分析,帮我读懂武艺与代码,它以前成为了我事情中不成或缺的消费力东西。
△该时序图的内容天生+画图干系事情由chatGPT完成
我也发觉了种种使用ChatGPT的本事,乃至构成了一套可利用,可反复的ChatGPT办法论"BORE"。用这套办法论,每一局部都可以成为ChatGPT的进阶玩家。
一眼看下去是不是有点繁复?别担心,后方的文章里,我会为各位讲清晰这套办法,并团结例子教会各位它怎样在事情中发扬ChatGPT的威力,接下去我们就一同开头看看吧。
BORE:一套ChatGPT提示计划流程
众所周知,一个形貌不佳需求、发言糊里懵懂的产物会让步骤员痛楚无比,不仅影响步骤员的心境,也直接影响产出的质量。从这个角度看,用户在与ChatGPT的交互中就富裕扮演了产物司理“给步骤员派活”的人物,写得稀烂的需求天然只能取得稀烂的回应,而假如“需求”计划妥当,ChatGPT会给你超乎渴望的惊喜。
△我的大学舍友,一位热情弥漫的步骤员伙伴
写好“需求”是一门武艺,在天然言语处理中这门武艺但是以前有了本人的名字,我们的输入被叫做"prompt",也就是提示。而写好提示的武艺就叫做“prompt engineering”,也就是提示工程。这是一门高度依托履历的武艺,我在接下去的文章中会总结我的提示工程实践,教各位怎样以这个“步骤员”写好“需求”。我总结的本事中会包含一些具体的使用场景,协助各位更好地域解。
讲清晰背景,为ChatGPT提供富裕信息
在我们见告它之前,ChatGPT关于种种具体的业务场景(背景)所知甚少。讲清晰背景是发扬ChatGPT强壮才能的紧张。
使用场景1:干活前先让ChatGPT进入人物
“主线物流主动驾驶“现在在主动驾驶范畴是一个很火的朝向,那么如今我们就以这个朝向作为例子,伪装本人是一家主线物流驾驶公司的产物。
来看看使用场景1,由于我们如今伪装本人是一家主线物流主动驾驶企业的产物,可以在必要chatGPT帮助我事情前先运转这条prompt:
"我们公司研发L4级别的主动驾驶卡车体系。我们的车辆拥有一辆L4主动驾驶车辆所必要的算力,传感器与才能,但是现在车上会有司机作为宁静员,主动驾驶体系会帮助司机的驾驶,协助卡车司机开车更轻松,更宁静,更节油。我将提供产物司理平常事情中的一些实践成绩。这约莫触及计划具体的主动驾驶功效,举行数据分析,分析具体的行驶场景并提供好效的反应等。你可以明白这件事吗?”
这个例子中,我们报告了ChatGPT大局的业务背景,并特地查验了prompt的后果。在读到外表的内容后,ChatGPT就主动代入了主动驾驶产物司理的人物。后文的一切其他例子都是在ChatGPT进入人物的条件下举行的。
我们来具体拆解这条prompt的计划:
1. 论述背景,点明如今的业务范围及业务目标:“我们公司研发L4级别的主动驾驶卡车体系。”然后进一步见告如今业务的细节:“我们的车辆拥有一辆L4主动驾驶车辆所必要的算力,传感器与才能,但是现在车上会有司机作为宁静员,主动驾驶体系会帮助司机的驾驶,协助卡车司机开车更轻松,更宁静,更节油。”报告chatGPT大抵的职责范围:“我将提供产物司理平常事情中的一些实践成绩。这约莫触及计划具体的主动驾驶功效,举行数据分析,分析具体的行驶场景并提供好效的反应等。”
2. 确定后果,我寻常会反问一句它对否了解,以此来查验转达的信息对否清晰,有没有被准确地域解。
底下是场景1的运转后果:
△场景1的运转后果
使用场景2:草拟文档的布局与框架
熟习了业务,就要开头干活了。ChatGPT进入人物后,我们来试试让它提供一个产物试乘报告的框架。我们为ChatGPT提供了“背景”,界说了“职责目标”:
"如今,作为一个产物司理,你必要去试乘我司的产物,用敏锐的目光去发觉改良点,并提供发起。请为我提供一个试乘体验报告框架模板,模版要涵盖产物体验的不同方面,使用逻辑精密,清晰的言语,有优雅,明晰,易于了解的布局。
这是一款主动驾驶卡车。这辆卡车上有司机,它将在一条主要是高速的远程货运路途上装载货品运营。"
我们给ChatGPT的prompt可以被拆解成以下的局部
1. 论述背景:这是一款主动驾驶卡车,车上有司机,跑的是远程
2. 界说职责目标:扮演的人物是产物,职责是写试乘报告模版框架,内容涵盖哪些方面,必要使用言语特点怎样等等
底下是场景2的运转后果:
△场景2的运转后果
小作业:ChatGPT十分仔细,可以捕捉到弱小的细节,以是“写背景”这件事很紧张。不信把场景1中的"我们公司研发L4级别的主动驾驶卡车体系”换成”我们公司研发L4级别的主动驾驶卡车“,再运转场景2试试。
给ChatGPT打绩效:界说目标&紧张后果,实验并调停
列位在科技公司事情的同砚们一定对OKR十分熟习:这是一个标准绩效办理东西,我信赖这篇文章的很多读者都写过OKR,被OKR打过绩效。不外表这里,我们主要是运用OKR来形貌职责目标,办理职责的预期后果,并在任责的目标和希冀上与ChatGPT告竣共鸣。
那么,OKR是什么呢?我们先往返忆OKR的内容:OKR的英文是Objectives and Key Results,由两个局部,"Objectives",职责目标和"Key Result",紧张后果构成。界说“职责目标”表达了我们渴望完成什么,而界说“紧张后果”则让ChatGPT晓得完成目标所必要告竣的具体、可权衡的后果。
我们在之前的场景中但是以前为ChatGPT界说了OKR,比如在“使用场景2 草拟文档的布局与框架”里,“提供一个试乘体验报告框架模板”就是“O”,而"要涵盖产物体验的不同方面,使用逻辑精密,清晰的言语,有优雅\明晰\易于了解的布局"则可以看做“KR”。
添加细节在ChatGPT的prompting中会起到立竿见影的后果,ChatGPT会对这些小细节做出宏大的反响。比如,有研讨职员发觉在GPT-3(可以了解为ChatGPT的爸爸)的输入前到场"Let's think step by step",就让它的推理准确率从17.7%暴增到78.7% [1]。
如今,作为ChatGPT的使用者,列位天然是恨不得它可以发扬出全部功能,又快又好地出活。既然以前有了随手的胡萝卜(OKR),那么是时分请我们热爱的小毛驴(ChatGPT)拉磨了
。
△设定了好的目标就是告捷了一半
接下去我们看一个具体的例子,更好地域解这种头脑与ChatGPT提示工程的团结。
使用场景3:分析具体业务场景
我们来看使用场景3,主动驾驶产物司理在事情中常常要界说种种繁复场景,我们在这个prompt中要求ChatGPT帮助我们界说一个简便的他车冒进切入场景:
“在我车在高速抬升驶时,常常会有他车从相邻车道从十分近的距离切入我车车道,形成碰撞风险。请用天然言语形貌与界说这个场景。
言语作风:明晰,有逻辑性,可靠,容易使用盘算机步骤建模。
建模要求:形貌清晰事变的历程和时序干系。注意用数字量来界说临界点。将切入的步调编好序号。建模要体现两辆车的交互
我们的主动驾驶车辆被称为ego,他车被称为npc。”
在这个例子中,我们在论述了背景,界说了职责目标的基本上再给出对职责的具体要求(也就是key results)。prompt从多个方面划定了关于抱负答案的标准。
用刚刚的框架对这条prompt举行拆解:
1. 论述背景:大局的业务背景以前在“让ChatGPT快速进入人物”中给出。以是我们进一步为ChatGPT形貌了微观的具体业务场景(高速上被他车切入)。
2. 界说职责目标:职责目标O是“用天然言语形貌与界说这个场景。”
3. 界说紧张后果:这里的KR有“a. 言语作风:明晰,有逻辑性,可靠,容易使用盘算机步骤建模。b. 建模要求:形貌清晰事变的历程和时序干系。注意用数字量来界说临界点。将切入的步调编好序号。建模要体现两辆车的交互。c. 我们的主动驾驶车辆被称为ego,他车被称为npc。”
KR可以依据一局部需求定制。比如在这个例子中,我们用天然言语给场景建模的目标约莫是想要给步骤员写PRD,以是要求“有逻辑,容易使用盘算机步骤建模”。而公司内假如有“黑话”,好比把主动驾驶车叫做ego,也可以报告它。
4. 实验并调停,改良:这是一个实验并调停的历程。假如对ChatGPT天生的内容不克不及让人满意,有三种约莫性:第一种是我们这个老板当得不佳,指令给得不够清晰。这时分可以调停prompt,看看背景和OKR有没有必要增补的场合。重重天生回复。颠末多次调停后,就可以取得比力满意的答案。第二种是ChatGPT这位员工干得不佳,这时分我们可以指出天生内容中的错误,让它重新回复。第三种是你运气比力背,碰到一次不太好的后果。这时分你可以优中选优,相反prompt让ChatGPT多天生多次,然后选一次最满意的,让我们一同称赞AI的勤勤奋恳。
在这个历程中,我们给ChatGPT定了“OKR”,干完活了还要“复盘”,一个不合错误还要打回返工,是不是像极了屏幕后方的列位打工人们。
底下是这条prompt的运转后果,以及为答案纠偏的历程。
△场景3的运转后果
△经过“打绩效”来对ChatGPT纠偏
ChatGPT天生的回复不是完善的,以是经过"实验并调停"来纠偏十分紧张。
小作业:外表回复的第4点中,有什么分明违异知识的错误?我们可以经过什么办法来让ChatGPT修正这个错误?
小结
讲到这里,我们复习一下外表所讲的内容。我们以背景,目标,紧张后果,改良四个步调为抓手,打出了组合拳,沉淀了一套ChatGPT prompting办法论
。那么,接下去,我们给这种办法取一个好记又动听的名字:BORE,读作[b??r],记取这个名字就即是记取了这套办法。在“BORE”办法中,四个字母分散是四个单词的首字母,B代表Background,O代表Objectives,R代表key Results,E代表Evolve,“BORE"本身也是个英文单词,有“钻孔”的意思,很好记。
最初我们给出这四个流程的具体界说:
1. 背景B(Background):论述职责的大局背景和微观场景,让ChatGPT取得富裕的信息。
2. 目标O(Objectives):明白职责的目标,报告ChatGPT必要天生的内容是什么。
3. 紧张后果R(key Results):列出完成职责所需告竣的紧张后果,即必要满意的具体要求和目标。这些紧张后果可以依据实践需求举行定制。
4. 改良E(Evolve):实验并调停,底下三种改良办法举行机动组合,终极取得满意答案。
a. “从答案的不敷之处动手,更新并迭代prompt”,
b. “在后续对话中指正ChatGPT答案缺陷”,
c. “在prompt安定的情况下多次天生后果”
撬动外部东西,扩大ChatGPT才能
这里,我们另有一些其他的ChatGPT进阶本事:将ChatGPT的才能与外部东西团结,扩大ChatGPT的才能。
作为产物司理,我们要为业务画时序图,画流程图等。偶尔我们也要用一些生动的图像,数据的分析去支持需求窜改,让我们的需求更有压服力,如此我们会更有约莫经过产物评审会。
△很多步骤员都想要的实用职场本事
但是,到此为止,ChatGPT展现的才能都是笔墨 or 代码上的,岂非就没有办法了吗?
等等?ChatGPT可以天生代码?
使用场景4:使用ChatGPT画时序图
既然ChatGPT可以天生代码,那么代码是不是可以转化为种种千般的图像?感激列位步骤员的开源精力,现在我们有很多基于代码的东西可以使用,让我们搜刮一下“code to diagram”(代码转图表)试试。
好得很,固然有,出来的第一个后果就提供了足足6种东西,那么接下去就赶忙试一下。
在这里,我们选择mermaid(意思是尤物鱼),不仅是由于它支持十几种图像,并且它还提供了一个在线编纂器,代码贴进入就可以立刻天生图像。天生器的网址在:https://mermaid.live/
△mermaid项目主页
那么,我们试着在使用场景3的基本上深化,以ChatGPT已有的输入为基本,要求它画出“在我车在高速抬升驶时,常常会有他车从相邻车道从十分近的距离切入我车车道,形成碰撞风险。”的时序图。
请看底下的prompt:
"现在有一款用来将代码转化为种种图表的东西,叫做mermaid。请阅读底下的内容,写一份可以天生mermaid时序图的代码。请注意,时序图要与我提供的内容坚持完全一律。
内容:在高速公路上,当ego车行家驶历程中,一个npc车辆忽然从相邻车道切入ego车道,且距离十分近,这种场景可以形貌为:
1.NPC车辆在相邻车道以速率V_npc接近ego车辆。
2.当水平距离d_npc到达阈值d_critical时,NPC车辆开头切入利用:
a. NPC车辆向内侧车道转向,同时NPC车辆的前轮触碰到ego车道的车道线,并压在车道线上。
b. NPC车辆渐渐进入ego车道,直到完全进入,并摆正地点。
3.在这个历程中,ego车辆应该举行以下反响:
a. 主动驾驶体系应该可以检测到NPC车辆的切入举动,并识别它的举动意图。
b. 假如检测到了NPC车辆的切入举动,主动驾驶体系应该可以举行敏捷反响,接纳避让办法以确保宁静行驶。
c. 具体的避让办法可以包含刹车、增速、转向等,以确保制止与NPC车辆产生碰撞。
4.当NPC车辆完成切入利用后,NPC车辆的速率会渐渐回到原始速率V_npc,并行驶在ego的前线。"
我们来拆解这段prompt,仍旧是上文中提到的BORE办法:
1.论述背景:我们提示了ChatGPT对话中所说的mermaid是代码转图表东西,并在“内容”中提供了必要他转换成时序图的笔墨。
2.界说职责目标:请阅读底下的内容,写一份可以天生mermaid时序图的代码。
3.界说紧张后果:时序图要与我提供的内容坚持完全一律。
4.改良,实验并调停:这段prompt颠末多次调停,我也多次让ChatGPT打回重做,取得的后果是优中选优的(在图中我们可以看到调停prompt+重重天生加起来共9次)。
最初,我们取得了可以天生时序图的代码:
△场景4的运转后果
将取得的代码粘贴到mermaid live editor中,就可以天生后果了
△mermaid在线天生图表页面
最初是制品图。
不外,mermaid提供的才能远远不止时序图,现在官网上就有13种可用的图表,包含流程图,排序图,类图,形态图,实体干系图,用户旅程,甘特图,饼状图,需求图,Git图,C4C图,头脑导图,和时间轴。请在事情中自在取用。除了mermaid之外,另有像plantUML,Diagrams,markmap之类的code to diagram东西,这里就不赘述了。
使用场景5:用ChatGPT做数据分析
主动驾驶产物司理是一个十分必要实事求是的事情,要计划一个什么功效,空口说是不算证据的,数据很紧张。再加上我司的数据基本建立做得挺好,以是我在事情中会交往到多量的数据,做很大多据分析事情。精良的数据分析也可以协助产物计划的功效更好更公道,固然也就更容易经过需求评审会。
从东西和范围上去说,写一两行excel公式是数分,用hadoop,写spark算大数据也是数分。从办法上去说,算均匀数是数分,用种种千般的机器学习办法做回归,分类也可以叫数分。数分前偶尔分还要做举行数据洗濯,数据预处理等等。这是一门独立完备的学科,话题要掀开真实是太大,我就不在这里提供具体例子了。
用ChatGPT做数分可以使用的数据分析东西
这里提供一些简便的摆列,假如不晓得我在说什么,可以上网搜一搜教程。
1. excel:列位最熟习,也是最简便的就是excel了。写点公式就算进阶用法(好比说有的岗亭的JD乃至明白要求会用vlookup这一个函数),再进一步,我们可以写一点Excel宏,也就是在excel内里运转VBA步骤。在excel界这以前好坏常高等的用法了,它十分强壮,作为产物你能用到的绝大局部需求都可以用它处理。(另有人用excel宏来写盘算机病毒,叫做宏病毒,毕竟VBA也是编程言语)ChatGPT可以十分轻松地依据你的需求和形貌写出可以用的excel宏。
2. python:python有很多强壮的数据分析库。数分有pandas,numpy等,画图有seaborn,plotly,matplotlib等,机器学习的就更多了。这是个很大的话题,但是产物平常事情学点pandas+画图库就够用。寻常数据分析的代码可以用jupyter notebook来运转(十分切合数据分析!),用anaconda办理安装的种种包,具体请看网上的python数据分析教程。
3. R言语:这是一个专门用来搞统计的言语,不外Python以前够用,在此按下不表。
用ChatGPT做数分的一些小tips
1. BORE框架仍旧管用:之条件到的计划准则仍旧管用,比如“提供背景Background”,偶尔分你无碍把取得的运转后果直接粘贴给它看(假如是笔墨的话)。而ChatGPT仍旧也会对你设定的“紧张后果key Result”起反响,好比画图画得太丑,你就可以催促它画顺眼点,配色好一些等等,它会有反响的。
2. ChatGPT会有一定瞎编&错误的情况:偶尔分ChatGPT会对不了解的信息乱编一气,代码中的盘算历程也不一定对。你必需充足警惕,看看有没有错的场合,这要求你对它使用的数学办法与东西都比力了解。
3. 上下文仅限:ChatGPT现在上下文才能仅限,只能读到上下文的几千个字,以是会有“忘记”的情况,这种时分你可以把前方的内容重新粘贴到最新的对话里,提示它一下。别的,这也意味着chatGPT只切合小范围数分,假如你的代码比力多,全部靠它就不实际了。
4. 头脑为主,东西为辅:数据只是数据,怎样表明数据才是其真正代价地点。别忘了在事情中业务代价才是数据分析的终极目标,你的思索不克不及省,ChatGPT只能作为帮助东西。
一些关于ChatGPT与人工智能的想法
使用ChatGPT的注意事项&想法网上有很多,我提出一局部感受比力深的几点
1. ChatGPT的使用者要负起责任,当好“把关人”。这个东西颠末了人类反应的强化学习练习,十分喜好讲一些“看起来是对的,完全切合言语逻辑,但是但是是乱说八道”的东西。使用者一定要当一个及格的把关人,要对天生内容有基本的推断才能。特别是主动驾驶产物司理,我们计划的车辆将会在路途抬升驶,是性命关天的事变,一定要有责任感。同时,openai会搜集对话信息用于改良产物,要注意保密成绩。
2. ChatGPT“省工不省脑”。“形貌清晰毕竟想要什么”和“晓得必要做什么”这两件事并不比上手去做简便太多。关于第一件事,明晰地形貌需求是每个产物的基本功,很多人做不到这一点。关于第二件事,你也必需够懂业务,内心多数,才干晓得“要做什么才是对的”。在这个层面上,我们和ChatGPT之间倒是有点像向导和员工的干系了(老板卖力方案战略,想活派活,发射指令,而员工卖力实行)。
3. 人工智能是人类新长出来的器官,将来天下里每一局部都是通才。有个比如说互联网和手机是新的器官,极大地扩展了人类的影象容量。每一局部都可以经过手机,即时从互联网获取多量的信息,就像多了一个用来影象的器官一样,人工智能也是云云。每一局部工智能都是人类新长出来的器官,用于完成特定的职责。在它们的帮助下,每一局部在将来天下里都将成为通才。
4. 要用ChatGPT创新?想点不一样的组合。在心思学中,心思学家从两个方面评价创造力。第一个是发散头脑(对某一成绩产生不寻常想法的才能)。第二个是聚合头脑(整合不同泉源的信息,从而处理成绩的才能)。从这个角度看,“把两个看似不干系的东西团结在一同,发扬出更大的威力”这件事约莫就有点创造力的意思。除了文中把ChatGPT和绩效评价,ChatGPT和图表言语团结以外,有人现在还整了很多更新更狠的活。有人给小爱同砚接了openai的api就变成了人工智能音箱,让ChatGPT写AI画图的prompt就能出很多顺眼的图,ChatGPT和搜刮引擎团结在一同就做出了new bing。就在迩来(2月20日),微软公布了一篇叫做“ChatGPT for Robotics”的文章,研发职员就创建了一套用于给机器人职责撰写prompt的办法论和计划准则,用ChatGPT调api,试着让机器人也听得懂人话 [2]。在想"ChatGPT可以做什么"的时分无碍当一下缝合怪,可谓宽广天地,大有可为。
△ChatGPT for Robotics论文配图
这是一个极新的年代,种种宏大的事物不休地诞生。祝各位接下去玩得愉快,可以用BORE“钻”出更多ChatGPT的潜能!
引用1 Kojima, Takeshi, et al. "Large language models are zero-shot reasoners." arXiv preprint arXiv:2205.11916 (2022).
引用2 https://www.microsoft.com/en-us/research/group/autonomous-systems-group-robotics/articles/ChatGPT-for-robotics/