[通往AGI之路]社区在10月8日发起全国AIPO校园创投活动
( AIPO:校园 AI 创投活动,开放报名!)
点击下方图片, 开启AI之路
两周内已经有170所高校报名参与活动, 10月8日-18日共11场共学课, 几千名同学参加课程并完成作业, 包括手搓智能机器人、从0学习文生图等, 详细课表如下
以下是 [Prompt(提示词)的道和术 ] 课程内容精选总结, 由张梦飞整理,
看的时候频频感叹李继刚老师对提示词的理解之深刻,思路之清晰,多处的总结都让我有一种茅塞顿开,醍醐灌顶之感。
顿感此等分享如不整理为文稿,让更多人看到,简直是藏之名山,却未传其人。
建议学习!!
全文约14000字,阅读大约需要25分钟,建议先关注和收藏,以防丢失~
大家好,我是梦飞。
今天补听了@李继刚Arthur 老师在AIPO共学中的直播,本次是李继刚老师第一次的直播分享,颇为难得。
因此,我斗胆自己动手整理了全篇分享。整场直播约2小时,原分享文本约32000字。因为是直播,所以原文本表述中有非常多的口语化和一些评论交谈。
为了保持全文通畅,尊重继刚老师分享和方便大家阅读,我对整个文稿内容进行了纯人工整理,尽量保留了原话,全篇没有用到任何AI处理。以此保证在做了些许调整和精简的情况下,保留原汁原味的阅读体验。
本篇全文约14000字,阅读大约需要35分钟,建议先关注和收藏,以防丢失。
- 读书多,脑海中有很多方法论,把那些方法论一封装就是一个场景,所以写起来就有源源不断的想法会冒出来。
- read in. prompt out. 因在前边,果在后边。
- 事物当前的本质,它不是客观的,而是取决于当时的社会的对它的意义的诠释。
- 提示词写不好就在外边去找,不断地试词,不断地调,那是跑偏了,真正的效果不好的时候,要回退,先回到自己脑海中,去想脑海中那个东西。
- 虽然只写了这三个字,但是哲学家这三个字是一个大的压缩包。
- 因为你措辞的足够精准,那个词在大模型向量与 embedding 那个向量空间中足够精准,相当于一支箭直接射在点上。
- 我觉得写提示词是有味道的一件事情,这个提示词,一看就是你的味道。
以下是分享整理稿:
ChatGPT 最早出来的时候开始学着去使用提示词跟大模型做交互,大概学了有一两个月,把网上能找着的提示词都给翻了一遍。接触到了结构化提示词,然后就开始疯狂地去写各种场景下的提示词。因为跟之前的读书多有关系,所以就会脑海中有很多方法论,把那些方法论一封装就是一个场景,所以写起来就有源源不断的想法会冒出来。然后就基于这个想法就去年写了大概有七八十个不同场景的,这也是最早大家对我有的认识。最近这半年有了一个新的收获,整个心路过程就从在今天的分享里。如果让我用一句话来总结去年写的七八十个提示词,我浓缩一句话就是:清晰表达。就是你和大模型对话,你只要能清晰地把你真正想要的那个东西给表达出来,这个事就成了。至于说你用了什么语法,用了什么框架,那都是次要的,只要你能表达清楚,你就赢了,这是根本。然后使用的框架,它使用的哪个词、其实去复制、去传词包这种往提示词上堆叠是没有意义的。这种方法就是在“模其形,未得其意”,这个意就是清晰表达,这是我去年整个一整年总结下来的心得。
想清晰地表达,首先得有一个内核。你想表达什么东西这个事得先有,然后才有的写。当大家都面对同样一个东西,比如说都是写《金字塔原理》的提示词,那金字塔原理就是那一本书,大家都看了,脑海吸收完之后,都有思路了,内核就是他了。那这时候怎么办?就是开始把你脑海中的那个印象、那个认知、那个框架给写出来,写成提示、写给大模型。你可以用自然语言,一段一段地写,没问题的,你也可以用结构化提示词,所以这个事情我理解怎么写不是那么的本质,框架是一个好用的工具,但它不是那个本质,本质是通过这些工具框架帮你去把你脑海中的东西清晰呈现出来。只要做到这两步,我理解提示词这个事,你就成功了,这就是我去年的理解。
经历了一段时间的抽象总结,我最终总结出了这么一句,就是 read in. prompt out。比如:你要写一个商业分析的Prompt,你如果没有读过《商业模式新生代》,你不知道商业模式画布这个事的话,你琢磨了半天你都是在外围打转,你没有进到那个内核。而你一旦读了它这个商业模式画布这几个字符,你输进去直接就出一个非常惊艳的效果。因为大模型也学了它。大模型是知道所有通用的知识。但是不同的人去用跟他对话去交流,针对同样一个场景去拿到的结果是不一样的,有些非常惊艳,有些很一般。为什么?根源在于不同人给模型的输入。编程界有一句话叫 garbage in, garbage out 垃圾进去,垃圾出来。如果你的输入是一个没有信息量的,全是一些片汤话进去的:我想写商业计划书,你给我一个。那他一定给你一个中庸的 40 分、 30 分的东西。就是你,你说它不是计划书,它也是。你说它是,但他压根就不能用,所以就大家会觉得大模型很鸡肋,但其实是没用好它。大模型智商已经在了,怎么让他输出很惊艳呢?同时他又不是很长的描述就能写好,这一块就是要求你脑海里得有那个概念。那个概念来自于哪?只能是先输入。也就是说你想写好提示词,这个结果不来自于这个结果的1234,而来自于源头,这是果,不是因,因在前边在读上,这个读当然是泛指的read。你跟别人交流行业经验、你读书、你出去旅游,去看看不同的人文环境,包括你去刷短视频,其实都是输入再内化一遍这一些东西。再抽象一下这个read,就是说你的大脑在跟这个世界做交互,这个世界的信息过你的脑,这时候只要你留心观察这个交互,其实它就是一个输入。举一个很简单的例子,大家会觉得比如我之前写的一些搞笑的段子什么的很有意思。会问我,你怎么会想到这个东西呢?其实“那不是我写的”,那是在刷抖音的时候,我心里边有一根弦,我刷到的一个短视频,我刷到它之后我笑了,这时候我就停一下,我为什么会笑?就这个东西它一定是有东西的,这个视频跟别的视频不一样,我别的都是 2 秒钟划走了,为什么它能让我笑停下来?看完它了,它一定是有东西了,就开始停下来琢磨它,他明明就说了两句话,怎么就能让我笑出来呢?它里边的结构是什么?是它的措辞还是那个反讽呢?还是什么呢?开始研究它,就这个研究绕着它去打磨的时候,就是你,你就开始有那个 read in 的内核开始形成了,然后这时候你就可会有一个冲动,“这一套东西我能不能封装一下?我批量地生产?”我也不知道第二个角度、第三个角度会写出什么,但你就可以封装,就可以写出一个idea。所以就你每天都在与世界交互,所有人都在跟世界交互,所以每天是有大量的输入的,只是很多这种想法,大家就脑子里过一下,心里笑一下或乐一下,就过去了,就划过去了,其实就放过了很多这种启发。其实只要有这根弦去抓住它,就会有源源不断的想法,就脑海中我现在每我积压的有十几个待写的,而且我随时拿起一本书,读完之后可能中间有两个概念引起兴趣了,然后就马上又想写了,永远写不完。我是真的可以,不断地输入,不断地思考,不断地输出,这个循环是转起来非常之顺畅了。但这个起点就在于输入这一部分,同时你心里有那根弦,我觉得这个地方真的是根本上的根本。提示词的技巧以及别人写得很好,你复制过来粘贴过来去使用,它是一种就是模拟别人的形象,就那个词是怎么来的?这个词很管用,它写得很好,但是你用别的场景还用这个词,就已经偏颇了这个词的来源,它是怎么提炼出来的?那个过程是值得大家去学习、总结、提炼的,而不是那个结果。当然结果我们需要学习,但它不是我们真正要去做的。因此,我回答表达什么这个问题,就是要有输入,有积累。如果说让我来说写提示词有什么经验分享的话,这是我最想分享的内容。提示词不在于如何写,而在于如何输入以及如何感知这个输入,以上是关于表达什么。
那我们就假定你有一个内核在了,你现在就想写一个场景,有一个很清晰的场景需求,你也有一个方法论,那这时候就会涉及到第二个环节了,就是如何清晰地表达出来。我觉得有两个身份的人应该是有优势的,一个是文科生,就是他们对于文字的那个细微差异会下功夫去学他们,系统性地学过,他们应该是对文字很敏感的。这一波人写提示词应该是有优势的。第二波应该是学哲学的人,他们对于词的那个压缩的语义,这些的那个浓缩程度的理解和思考的深度,对于一些提示词跟大模型交互一定是有优势的。他们只是需要一个契机,进到这个门里,跟大模型能做交互这个事就会起飞。当然那心理学可能也是,别的学科当然有别的学科的一些特点和优势,就但是文科和哲学,我觉得是比较特殊的两个学科。
去年整个提示词圈演进的过程,其实出来的是结构化提示词,但结构化再往上走一层其实是一个框架。我们可以来感觉一下,我尝试着在大家的脑海中植入这个画面,大家来跟着我一起感受一下这个画面。你脑海中有一个东西,你别管它是方的、圆的,就是有一个东西。然后围绕着这个东西,你想把这个东西的形状、颜色等等的特质把它传达给大模型。现在你准备怎么传达?你从正面看是一个形状,从背面看是一个形状,从上面看,从下面看,各个角度去看都有不同的形状。那请问:你怎么描述,来把它讲述给大模型?就这个事,我这是我去年一整年都在想的一个问题,我用了各种框架来尝试完整传达。因为我没办法用一个东西,一句话、一个词、一个意念就把它给表述好。那我所以我就不得不借助于语言来表达,那我用语言来表达的时候,我就需要线性的输出,因为字是一个一个来的,这个线性的输出其实就是一个角度,就你一定是贴着一个角度过去的。那这个角度一旦发射出去,它就是偏颇的,因为角度不是那个脑海中那个东西的本体,对吧?它是某个角度的,是看见的一个画面,所以它一定是片面的,它是错的,它不是全部。那怎么去解决这个问题呢?就开始有人提出各种框架了,这个框架是来干什么的?其实就是预置了某几个角度,比如说我内置了 5 个角度,内置了 7 个角度来描述它,然后大家你不用每次都现想。你描述任何场景都来填这个框架的 7 个空, 6 个空就能解决。提示词框架本质上是在干这事。而这事是个退而求其次不得已的事情,就是因为我没有办法把我脑海的东西直接给传达进去,所以我不得已去借助一个框架来搞。大家理解一下这个事情很有意思,就是前阵子,读了一本书叫《尼采与哲学》,然后它里边讲尼采看待事物。他是怎么看一个事件,这段话我觉得挺有意思的,大家可以给读一下。无论是事件,还是现象、词语、观念,无一不富有丰 富多彩的含义。事物有时表现为这样,有时表现为那样,有时呈现更复 杂的情形
就是无论是一个事件还是一个现象,还是一个词语,还是一个观念,就是脑海中那个有一个东西,对吧?有一个物它都含有丰富多彩的含义,就它有时候表现这样,有时候表现那样,但它为什么会这样呢?是因为有很多力在决定着它,而这个力是变化的,在某个时间它是左上角那个力占主导地位,这个力的角度,就是事物当前的本质。过了一段时间右下角的力占了上风,它就成为了这个事物的本质。尼采的视角是说这个事物当前的本质,它不是一个客观的东西,而是取决于当时的社会的对它的意义的诠释。就包括比如说唐朝审美觉得以胖为美,那胖真的是美还是瘦真的是美?其实在尼采看来是没有的,就是都美,只是说在唐朝的时间点,社会喜欢胖那个维度的而已。这个解释是基于时代的流变,当时社会的那个观念去解释它的,其实这句话在我读完之后,我脑海里的那个东西,然后这个东西现在变成什么呢?它是个物体,它上边长满了各种刺,每个刺就是决定它的各种力量。而这个这个刺呢?长短不一,有人胖、有人瘦、有人高有人矮,就是这一套东西就决定着他,他就长这个样子了。那他这个事就很有意思了,这个事物在这了,我们看见他了,你基于你的学历,你的教育背景,你的工作背景。你看见了这个物体,你看见了这个方法论,你理解了它,现在你要阐述它,你要把你脑海中那个东西阐述出来,这时候就是去年我们整个提示词圈都在用的各种框架。然后我们可以看一下,就是这里有两个扩展阅读,大家可以读一下,这是 AJ 去年收集的 Prompts(提示词)| 社区内prompt框架课程收录按使用场景导览| 各个场景提示词收录
这里边是一个一个的框架,你看这个框架得告诉什么?就是把脑海中的一个事情、一个方法论,它通过这四个角度来描述出来。其实各种框架都大同小异,就是:你要做什么事情?现在有什么背景?我有什么目标?我有什么任务?有什么数据?有什么输出?期望大概就这些东西,就大家换不同的词在弄而已。那这些框架有没有用的,它确实有用,它能帮助你很快地以某些角度给把你脑海中的那个东西给弄出来,所以它比你完全从 0 到 1 或者是空想是要快的,是要高效很多的。我去年用那个 langGPT 的框架,然后写了一整年的时间,就是大概就这么个意思,大家用不同的这个框架去写,你在用这些框架的时候可以换着不同的预设角度去描述同样一个物体。去年我用的 langGPT 的框架,就是写出发点是说我需模拟一个老师,他能以很好的、很善解人意的方式来讲任何一个概念,你输入任何学科的,它都能以很好的东西来输出。然后那你看这也写的时候,比如说我定义一个角色,首先命名它到底是你模拟是个什么人,然后会有一些基本信息。然后描述一下这个提示词是做什么事情的,然后会有一个目标。然后那这个老师会有什么风格呢?就我脑海中开始想象这么一个人,我想要我许什么愿,我要什么,然后我就会说:使用简单的语言,给人开放性想象,惜字如金,模仿费曼的教学风格,这是会要求他的这个技能。那这样就塑造好一个人物了,那这个人物是怎么干活的呢?那用户输入一个问题,他就开始思考和输出,他首先用比喻的方式,然后给那个概念下一个科班的定义,然后讲述这个概念的历史,介绍这个概念的属性,再举一些例子来证明它,再站在大模型的角度来说,哲学的角度来说,等等的角度。这里说的是什么意思呢?就是这些东西,这一整块东西其实是说我脑海里能想到的其实就是我,我读书都读了哪些书,我最终是从我喜欢从这几个角度来看,那换一个人,你完全可以从你自己的视角来出发,你可能是完全不一样的那个视角。完全不一样的要求,你不是通过历史的角度,你是通过现象学的角度,你是通过哲学发展的角度。anyway,就是通过你自己的视角来约束他。它是可以约束大模型按这个约定的视角往下去走的,你不约束的时候它走哪条路是随机的?不知道的,但有了这个角度你就可以约束它,按照你指定。比如说我这里列了 10 个角度,那它就会按照这十个角度一个一个地来描述,最终输出的就是那个你想要的这 10 个角度的结果。我的角度的也不是一次成型的,当然也迭代了好多次了,也应该有几十次的,就是不断地想。比如一个概念,看完之后我懂了这个概念吗?我没懂。那我为什么没懂呢?我觉得是缺少案例。那我就加一个案例,有了案例我懂了吗?就觉得太浅了。跟 wiki 一样。就是有没有再拔高一些的?然后就开始加哲学,你思考一下本质,思考本质之后有的时候发现太简略了。那好,那你再连续追问三次,所以就是每一句话其实都是针对一个一个效果的不好的改进去做的迭代,所以这里边东西不是去 ctrl c、 ctrl v 去抄别人的。而是提示词的每一句都是基于你的理解,你对这个事情的认知,你的 read in,然后去跟大模型做交流。你在交流过程中你觉得效果哪里不好改哪里。所以这个提示词的链路过程其实就这么过来的,这是写的当时我觉得写得最成功,也是最复杂的一个。总结一下:首先表达要有东西,有东西之后就开始要清晰表达,那就可以用框架来帮助你清晰表达。法无定法,大家要把握住那个本质,只要做到了清晰表达我脑海中那个东西,那就是成功的。提示词写不好就在外边去找,不断地试词,不断地调,那是跑偏了,你是被大模型被随机的东西给牵扯走了,真正的效果不好的时候,要回退,先回到自己脑海中,去想脑海中那个东西。你看见那个东西,再看清楚一些它到底长什么样,然后那个样和你现在用文字描述出来的这个东西契合吗?相关吗?大概率是不相关的,是大概率是有偏差的,想办法你减弱那个偏差。我去年最大的心得就在这。最终结果词的变化是由内,是大脑内部的那个形象和描述的偏差决定的,而不是说找一个词,不断地试这个词是不是好词,然后收集它,其实这就留为下层了。模型是每天都在调的,这个场景也在变,大模型能力也在变,学它是你永远学不完的。而且你没有抓住根,换一个场景你又得从 0 到 1 开始。所以回到根本上,回到大脑里,你脑海中有一个清晰的画面,大概率是不清晰的。我很多时候都是从模糊开始的。然后通过跟提示词对话,看见结果之后我反向倒逼,我脑海中的东西慢慢变得清晰。所以我觉得我跟大模型在对话这两年对我最大的感受有两个,第一个是对我帮助最大。第一个是当我脑海中有一个清晰的画面,我知道那个东西的形状,我看见它了,这时候我跟大模型对话,然后大模型基本上往往都能带着我往更深一层去理解。因为理解是分层次的,如果我现在在第三层的理解非常之清晰,我跟他对话我能进到第四层,这个事情是非常有意思的,能帮助你深度思考。第二个事情是当我脑海中是个模糊的东西,比如说战略,我读了四本书,每本书讲了一个方法论,但我感觉这四本书都没有讲到战略的本质,但每本书都有个方法论。都能够直接套用就能形成一个战略。但是,你让我说战略是个什么的时候,我说不出来。我脑海中朦朦胧胧的一个东西,然后这时候就可以跟大模型做各种对话,结构性也好,什么也好,其实都无所谓,就刚才讲的那一套框架是框架,真正的内核是你清晰表达,把脑海中已经学到的知识跟他交流,跟他对话,不断地往深了钻,他是能帮你把脑海中的那个东西慢慢地变清晰的。就这两者我觉得对我日常使用是有非常之大帮助的。工作内容每个人都不一样的,但是思考这个事情是每个人都会做的,所以他能在思考这件事上帮到大家。我觉得这个事就已经非常之牛逼了,就是他的意义和价值就在了,他应该是成为你身边的伙伴,你日常有任何想法就可以跟他聊,所以这是我整个去年的一个感受,就是清晰表达。我要表达东西,我脑海中得有个东西,我脑海中没有东西,脑海中空空如也,当然就写不出来。当你脑海中有一个东西非常之清晰的时候,你是迫不及待的那个字是追着你的手指往外蹦的,这个感觉非常之鲜明,所以不知道写什么的时候就去读吧,就是往往脑子里灌东西,把那个脑子里的东西给弄出来,让他清晰起来,让他立得住。而清晰表达的根就在:
read in. prompt out. 因在前边,果在后边。
那大家要从 0 到 1 开始 上手,那我要清晰表达我脑海中有东西了,比如说我上了一门课,然后这门课的知识方法论已经非常之清晰了,我已经学完了,我现在就想。想把它封装起来去跟大模型对话。那怎么封装呢?框架有十几个,有二十几个,我是随便选一个还是怎么地呢?有没有一些最核心的东西?有没有一些最通用的东西?然后这一部分就是想跟大家去聊一下,我提炼总结分享了好半天。
我觉得这三个是所有写提示词都绕不过去的,你如果是从 0 到 1 开始去学,我认为你应该是在这三个地方去下功夫去研究它的。
在提示词最早期的时候,这个技巧是所有人被 show 到的,大家都很惊艳的,你只要跟他说你是一个什么家,你是一个什么身份的人,他的输出就明显好于没有说这句话。这是去年刚提示词刚出来的时候,大家非常是惊艳的一点。这一点大概的我自己提炼了一下。比如我不说你是一个哲学家,就是我问你什么是生命的本质,什么是生命?生命的意义是什么?类似于这种的哲学问题,你跟他讨论,和你加上你是一个哲学家的提示词,去讨论是不一样的。• 分配角色: (做 事情) and (角色 行为模式) ⇒ 角色模式行为模式 = (知识域 语言风格 决策倾向 ...))我自己总结了一下,就你不分配这个角色的时候,其实你是让他去做一个事情,就是个动作,就是你来给我解释一下什么是生命,他就去解释去了。但是你分配角色的时候是个什么事情呢?分配角色的时候其实是一个且的关系。你注入了一个信息量进去,信息熵变低了,就是他除了知道他要做什么事情以外,这时候你额外指定了一个哲学家。你虽然只写了这三个字,但是哲学家这三个字是一个大的压缩包。哲学家会有什么行为模式隐含的被带进去了,他就以那个哲学家的行为模式来做你想让他做的事情,也就是说他从单纯的动作执行变成了角色模式。这个行为模式当然包含很多了,就是这个身份的人他会有什么知识?他是怎么表达的,语言的风格,怎么做决策的?做判断等等的。这一堆的东西其实都包含了,包含在哪呢?包含在你指定的这个身份里边。我的理解是这个词它是一个超级浓缩词。它代表着很多哲学家的人,他们会怎么思考事情,他们会怎么想事情,他们表达语言是不是有一些风格,就类似于所有的这些东西,其实都囊含在这一个小小的词里了。也就是说你在指定他的时候,你可以把这个东西给丰富化。当然你有一些东西比较知名的,比如哲学家,比如你是个作家,这个东西可能就可以,但你如果是一个细分的,比如你是写教育的,作家就过于宽泛了,你就要细化到你那个领域里边。而这里边就会有一个潜在的问题会冒出来,就是大模型,你怎么知道他是经过哪个语料训练的?你说哲学家的时候,大模型脑海中已经有这个哲学家形象了,你说你是你们公司的一个运营专员的时候,大模型压根没有这个形象,那个形象是不成立的,你看似使用了这个技巧,但是实际上是个无效信息,甚至是个干扰信息。那这时候你还是需要落地到你工作中,需要塑造那么一个角色怎么办?原来哲学家是个压缩词,它包含了很多意思,现在你塑造了一个角色,它没有那些信息,你可以把这些信息注入到这个形象中,你是一个某某公司的什么运营?这个公司的主营业务是做什么的?目标受众是什么?卖的产品是什么?价值点是什么?然后这个运营他的工作内容主要包含哪些?他工作最核心的技巧技能是什么?他要合作的,他要完成的主要工作内容是什么?就类似于这种东西注入进去。你的上下文、你的目的、你的期望、你的任务,你的目标就是有各种词、各种框架中的某一个维度,其实隐含着就是在告诉他那个角色,那你要做什么事情。我其实看过大量的提示词,有时候大家写完会发给我让我帮忙改一下,就是会看到有很多那个,一看就是不可能生效的,他就改了两个字,从你是个哲学家,改成你是一个小剧家。大模型怎么知道小剧家是什么呢?对吧?所以就是他就没有那个形象了。因此,当模型不知道某个角色的时候,你就要塑造他。就是说你在脑海中塑造的一个人物,那个角色他有没有立得住?你把自己想象成一个编剧,你通过各个维度去把那个角色立住了,这个事模型就认了,模型就按那个角色的身份往下去做事情了。所以这个技巧大家只要是接触提示词都会用到,你看似简单的几个字符指定了一个角色,其实你是指定了一堆的东西,而这个东西才是真正生效的。从信息的角度来说,就是你注入了信息量,那个不是一个简单的字符,它代表着一堆的东西进去了,所以就是有时候你看见有时候写的提示词就很精炼,它就写了几个字,怎么效果就这么好呢?但你去结合到你自己的场景,你去抄作业结合自己场景的时候,发现效果就是不行的。所以这个是这个第一板斧分配角色。非常好用,只是用的时候心里要保持一根弦,这个身份模型会不会知道?
回到我前面最早讲的脑海中你有一个东西你要表达它。比如你现在要给脱口秀写提示词,那你想写出一个非常可笑的,那你怎么描述你脑海中那个笑话的结构形状方法论是什么呢?如果你脑海中很模糊,你说那你给我讲个很好笑的笑话,所有人都能笑出来,这句话跟没说是一样的,因为没有信息量进去,大模型不知道从哪个角度去描述,怎么去输出。因为你脑海中就没有,你是空的,所以他输出的结果一定是一个泛泛的东西。那我想尝试着把脑海中隐约有的那个感觉描述了一些,但是感觉还是没有描述到精髓,怎么办?有一个辅助的技巧,就是示例,就是 few-shots。那我给模型讲个笑话,就像下面这样,这时候相当于是你把对于这个笑话本身的理解交给模型来理解。你自己没有从中提炼,那你交给模型,让模型来提炼,就是这是一个取巧的办法,也确实是一个非常管用的方法。那再提炼一下这个事,你不使用这个技巧的时候,你直接说:给我讲个脱口秀段子。这是你在描述你的想法,但是这个笑话长什么样?你要跟他说你这个笑话要反转,要在最后的时候丢出包袱,或者说你写说这个笑话需要有谐音梗,需要详细描述。要不然模型无法写出,模型写出来一定不是你想要的,因为你压根就没说你想要啥,他怎么会是你想要的呢?所以你要告诉他。你描述了这个想法,同时把这个想法的案例给模型,相当于把脑海中那个东西的一个速写丢给他。模型把这两者结合,他就开始类比这个东西往下输出。其实从信息量的角度来说,这也是注入了信息量。所以这两者结合就会比原来的单纯的说:你给我讲个脱口秀。效果要好的多。这部分只要大家在使用过程中有这根弦,然后写场景的时候你可以对比一下加这个和不加这个的效果,慢慢就有感觉了。
第三个就是最出名的 COT 了。他确实很玄妙,比如说:给我分析一下当前的股市。他给你一顿说,给我一步步思考,他的分析结果就会有拆解逻辑了。然后这一部分,其实就是在提示词里加一句话:让我们一步步思考(“Let’s think step by step.”)。提示词不变,就加这一句,效果就是有的。就是相当于是快思考和慢思考的那个感觉,当你使用这个提示词的时候,他就开始就中间步骤的 1234567 不断地给你展示出来,然后通过这个过程相当于信息量也变大了,中间过程这些信息都能作为推理的数据材料,最终达到一个有点是逻辑推理的答案。• 使用思维链: (问题 (推理步骤 1 推理步骤 2 ... 推理步骤n) 答案) ⇒ 逻辑推理我是觉得大家开始写的时候框架很多,很复杂,也很杂乱,你可以全部试,但这三个你别丢,你守着这三个去写,从 0 到 1 的开始练。然后比较一下,你自己就有感觉了。我最近的一个感悟就是放当做彩蛋了,前面说的提示词之道,这个“道”我用着,其实我心里是嘀咕的,这个词太大了。我后边为什么停了半年?是因为我觉得我摸到了一个天花板,就是我写来写去都是在清晰地说事情。但是他就是在用同样的技能表达不同的场景,就是能感觉到使用的技巧,跟大模型对话的这个功力是没有长进的,所以后来就感觉是纯体力活了。然后就停了停,停了之后就真的去读书去了,就读了半年书,在这个过程中我摸到了另外一个词叫:压缩。
我通过这个词开始尝试着去写新的提示词,然后就发现拿当下的这个理解回头去看去年写的提示词。我觉得我看到了“洞”,就是字与字、词与词,语句和语句之间有大量的空洞。这个空洞是语义上的空洞,也是智力上的空洞,就是它会让大模型输出的时候,其实大量的字。服务是没有太大意义的,你可以把那一段都给删掉,效果是没什么太大影响的。那怎么把这些内容给浓缩?我自己总结了一下,修炼法门:- 一个词, 意思不变, 是否可能使用「一个字」来表达?
第一个效果是精准。
你不能去通过一堆的话去描述你脑海的意思,就会倒逼自己精准表达。
其实我经常这么去逼自己,我写了一段话,我怎么用一句话来表达保持意思不变?我怎么去压缩它,就这时候你会有一种感觉是在压缩你自己的大脑,你在压缩你自己的思考。然后你写完这句话之后,你好不容易压缩到了这时候,再逼自己一下,这一句话我意思不变,我怎么用一个词来表达?我只用一个词就能把这句话的意思给表达完,准确,没有偏差。然后你当你好不容易想出来这个词了,这时候你再琢磨一下有没有可能再进一步用一个字来搞,就是核心这一段就是在压缩,压缩完之后,压缩后的词会出来两个效果。大家可以捋一下刚才的那个过程,你有一段话,你用一句,然后压缩,再压缩到一个词,不断地压,把那个包压得越来越精准。就好比上面说你是一个哲学家,那个哲学家就是一个超级好的压缩包,你压完之后这个压缩包是个什么东西?它出现了两个效果,第一个是精准,第二个凝练。我自己的理解,没有科学实验,就是纯感觉,纯我个人感悟跟大家就纯,纯是纯分享。我自己的感觉它对应着两个东西。因为你措辞的足够精准,那个词在大模型向量与 embedding 那个向量空间中足够精准的相当于一支箭直接射在那个点上了。而你用一段话去描述的时候,你不是一支箭射出去了,你是一片云飘过去了,所以它输出的时候是看似是那一片空间,但其实中间是因为有偏差,因为你输进去的时候就是一片,而不是精准的那一个点。所以你脑海中那个东西,你越形象,你用词越凝练、越精准,那个影射出那根箭越准,然后出来的东西就越准,这是那个词精准这一部分。第二部分是因为这个准,你的长度其实也在缩小,恰好满足了 attention 工作机制。也就是说你看以前你输入大量的时候,你会发现提示词经常性的某一句的要求它没生效,他生效了前两句,第三句他丢了,这时候你强调一下第三句,工作中他又丢掉了前两句。他会这样,因为什么?因为 attention 在动态分配权重,有些词的权重,他这一次的分配和下一次是不一样的,因为你写太长了,所以他回头看他会这样,但因为你输入短了之后,他注意力更加集中全面了。大家可以好好看看我那个写的“汉语新解”,它的核心只有 5 个词。其他的像什SVG 画图那个东西其实是个工程上的一个东西,它不是核心。只是为了分享方便所以加了它而已。那个的真正核心只有 5 个词,这也是为什么那个 0.1 版本泛化能力那么强。大家各行各业各种词弄进去,输出的东西效果会那么好,就是因为它过于凝练之后attention 的时候它就没有漂移空间了,就那五个词,你怎么分配它都是满足的,所以那五个词那个意思完全被它给释放出来了。不是为了压缩而压缩,是压缩本身是有意义和价值的。你一旦入了这个门,之后你会回头去看自己写之前的提示词,你会觉得那一大段话其实是在表达一个很小的点,那个点是因为脑海中那个地方你没有办法清晰表达,所以你不得以用一段话换着角度地去说它。这个事其实如果说得再玄妙一些,这个感觉就是:得其意,忘其言。语言是障碍,我是不得以用语言,所以,我真正想要传达进去的是我脑海中那个“意”,我从语句、从段落凝练到了词,我通过用词,我不断地丢词包的方式让它 get 到那个“意”。不是在故弄玄虚,是有逻辑,有一套机制,他不是随便再丢词的随机尝试。所以就是尝试着把那这又说回到最开始的地方了,你脑海中有没有一个清晰的东西?如果你脑海中就没有一个清晰的东西,那就更不用谈什么凝练、精准了。你都没有东西,你往哪准呢?你脑海中必须把那个东西树立起来,这个树立我理解它不是一个空想的东西,它是需要输入的,它需要浸泡的。你在这个行业经营了 5 年,你这 5 年就没有白费,你泡在那得到了大量的隐含知识,那个东西就是你独特的资产。那个东西你来写,就是跟别人不一样。我觉得写提示词应该是有味道的一件事情,就这个词,这个提示词你一看你就这是你的味道。
第四个技巧,为什么我的效果会更好呢?是我会把这个场景当做画布,我把 AI 当做画笔,这个画笔是有一定的机动性的,它可以在画布上生成画,但是这时候人在哪?人是画师,人应该来执这支笔。再夸张点的说就是人要比 AI 凶,你需要有sense,有case,有感觉。你对你写的那个场景脑海中是有一个东西的,你要把那个东西的感觉,那你来拿捏,你来把握以那个来评判 AI 画的那个画好还是不好的话,你应该指挥他怎么干,人要比 AI 凶,所以我是不建议大撒把,就是说我不知道要什么,但是我想写一个这个场景,我把背景告诉你了,你给我写一个吧。我理解这是大撒把,是你放弃了这支笔,你让这支笔去随机画,你指望着他给你一个好的东西,如果他没搞出来,你就骂说这模型不好用。我理解这是道上的不一样,就是你放弃了这个指挥权。跟 AI 对话,有一个东西是不能丢的:你是画师的身份。我理解我在中间学到的所有的东西都是在注释这四个字,或者说都是这个东西的脚手架,都会流变,模型能力也在流变,写作技巧也在流变,这些东西都是不一样的。去年生效的,今年效果可能没那么好,这都是变的。但是压缩表达在我看来是不变的,是目前我找到的最有效的、最好玩的,也是最有用的一个。我觉得是我找到的提示词之道。当然明年有可能我可以再冲破这一层,再找到一个更好的,更契合大模型的一个道。但是当前我的理解就是这一层,今天的分享就到这了。
整理不易,既然看到这里了,如果对你有帮助就顺手点个关注、在看、转发三连吧~