人类思维VS ChatGPT思维
现在大多人使用GPT的时候都很容易陷入两类误区,一种是觉得GPT太牛叉了,它居然能这么丝滑地进行聊天,居然懂量子力学,还能跟我探讨哲学,我是不是可以把我所有的工作和学习的内容交给它,真的这么做的时候就会遇到很多困扰。还有一类是觉得GPT就是一帮卖课的和搞互联网的在瞎鼓吹,明明我尝试过问他“鲁迅和周树人有什么分歧”他都不知道这俩是同一个人,问它类似于89×78这样的乘法,给的结果也不对,简直太垃圾了。
这两类觉得GPT太牛叉和太蠢了其实属于同一类观点,都是盲人摸象,只了解的GPT微小的特点就推及全部,觉得那是GPT完整的特点了。这个思维的问题是,我们用人类一般具备的能力和常识去评价了解GPT了,因为GPT在跟人类对话过程中所表现出来的逻辑能力和表达能力都太像人了。
然而,GPT并不是人。他的思维模式和他的优缺点都和人类存在巨大的差异。我们先来讲讲人的思维模式是什么样的。
人类思维示例-常识、反思、工具使用 假设你要写一个财经类的文章,因为某种原因,你要写这么一段话,“截止6月28日,拼多多的市值是B站的xx倍”。
在写这个对话的时候,首先你会启动自己的反思能力,你知道要比较拼多多和B站的市值,还是最新的市值差异,估计没人写过这个准确的数据,所以最好的方式不是直接搜拼多多的市值是B站的多少倍,而是去找到拼多多和B站截止昨天分别的市值,再除一下。
接着,你知道自己的大脑里肯定没有这种数据,但是你知道雪球大概能查到这个数据,你上去查到了,截止昨天,拼多多的市值是932.8亿美元,B站的市值是63.6亿美元。
接下来你会把两者记一下,你知道你脑子里也不好一下算清楚932.8/63.6等于多少,所以你可以用个计算器算一下,发现是14.7倍。
这时候你可能会想拼多多居然比B站值钱这么多,你是没想到的,但是再确认一眼你的信息来源和数字,好像是对的。
然后你开始写这段话,“拼多多比B站股价贵13.7倍”。
你会实时反思不对这句话写得不准确,你重新调整自己的措辞,把时间限制加上去,把描述变得更准确,“截止6月28日,拼多多的市值是B站的14.7倍”。
这就是你写一下这么一句简单的话的时候可能会经历的一系列全过程,但是对GPT来说,它就不是这样的,它只会是讲你输入的信息就行一层一层的关系分解,然后开始预测它自己下一个单词应该写什么会更准确,并且没写一个字的时候,都会再把它自己的写的那个字纳入进去思考,然后kua、kua、kua地不断产生下一个字,形成完整的句子。
所以最终结果来说就是,人的思维过程和ChatGPT是有巨大的差异的。
prompt engineering(提示词工程)的本质就是去缝合这种差异,最大化地发挥GPT的优势,规避它的缺陷。
1、提供充足背景和知识
你知道自己不知道什么,但是GPT是不知道自己不知道什么的,所以你在跟ChatGPT沟通的时候需要完整地把你的任务背景信息和你认为它需要的知识提供给他。
2、给GPT提供工具武装
你知道自己不擅长什么,你会使用搜索引擎、计算器等工具帮自己完成任务,GPT也是这样的。所以当你需要GPT完成需要含2021年9月以后知识的任务时,你应该使用带web browsing的能让GPT浏览网页的插件去完成任务。其他像是数学计算,或者阅读pdf文本,买机票之类的也是同理,你可能需要不同的plugins插件去让GPT能使用对应工具。
3、允许GPT回溯和反思
GPT的生成机制导致它不能回溯发现自己的错误,但是你可以要求他回溯,比如在GPT回答完问题之后,你问他你觉得自己的回答是准确的吗,有完成我的要求吗,是可以让它会成对自己回答的反思和分析的。
4、对于复杂问题,激发GPT的“系统二”慢思维模式
GPT这kua、kua、kua不断生成文本的过程实际上很像认为的“系统一”的思维系统,如果你看过诺贝尔经济学奖得主“丹尼尔卡尼曼”的《思考快与慢》那本书的话,你大概会知道人类包含“系统一”直觉式的快思考和“系统二”比较审慎的慢思考两者思维模式,在一些复杂任务上,你可以让GPT采用慢思考的方式去做。有几个方式可以让GPT慢思考,因为GPT本质上是通过一个个token去实现思考的,所以只要让GPT有更多的token去完成最后的回答,也就等于让他获得了充足的思考时间,有这么几个不同的方式可以让GPT慢下来思考。
把复杂任何拆解成多个小任务,使得每个任务都有足够的token去思考,比如你把关于拼多多和b站的市值对比问题,拆解成先问它截止昨天拼多多的市值是多少,B站的市值是多少,等等。
用few shot少示例提示让GPT模仿这个思维过程,比如你写个“北京的常驻人口数量是香港的3倍”,你先把你是怎么得到这个结果的方式告诉GPT,它也会进行模仿。
告诉模型think step by step,让他把思维过程一步步放出来,相当于让每个token都承担更少的思考任务,也能获得更好效果。
5、GPT不想要成功,但你可以要求成功
最后还有一点,就是GPT具有的知识非常丰富,它学习了大量的互联网公开资料,并且大概80%以上都是质量比较一般的,所以通常情况为了生成文本的内容能跟接近它训练语料里文本的质量,它并不会给你提供最好的结果,虽然实际上它可以。OpenAI的联合创始人Andrej karpathy对这个问题有个很生动的说话,就是GPT并不想要成功,但是你可以要求成功。具体做法很多人已经很熟悉了,就是根据你期望GPT完成的任务,告诉GPT它是这个领域的专家,让他以专家视角来给你输出结果。
希望对你有所启发。