AI研究者如何使用ChatGPT和Notion AI
林纳斯·李希望在我们求助于人工智能进行创意工作时,重新聚焦于人类的主观能动性。
Every发布了最新播客《你如何使用ChatGPT?》的新一集。我和Notion研究工程师Linus Lee深入探讨了他如何利用ChatGPT和Notion AI来最大限度地发挥创意控制。在X、Spotify或YouTube上观看。
你可能会认为,作为一名人工智能研究员,主要工作是解决复杂的编程问题和思考数学方程。但事实上,工作的很大一部分是以大写字母重写提示的部分,以确保你正在使用的AI模型遵循你的指示。在这次采访中,Linus Lee告诉我:“全大写是有效的!如果你看看OpenAI的系统提示,很多工具都是用全大写。”
Linus是Notion的研究工程师,他在AI团队工作,原型设计新的体验,比如一个问答聊天机器人。他是一个深思熟虑的人,他着迷于构建能够促进人类创造力和主动性的人工智能。他上节目谈论了人工智能如何增强我们的思维,他如何考虑提示以获得最佳结果,以及他如何在工作和生活中使用ChatGPT和Notion AI。
一年前,我首次采访了他,当时他展示了他一直在构建的数十个人工智能原型,试图理解这项技术的未来。我们最新的采访是理论和实践的结合。Linus谈到了我们使用的工具如何塑造我们可以创造的工作,以及AI驱动界面的未来可能是什么样子。我们看到他演示了他建立的个人工具,比如一个他通过iMessage与之交流的AI聊天机器人。我们偷窥他与ChatGPT的对话,了解他如何与它交流以获得最佳结果。
这是我们讨论的一部分内容。请继续阅读底部的我的更多分析。
- 使用人工智能来最大化代理能力。Linus经常谈论我们的工具如何塑造我们作为思想者和创作者的代理能力,以及人工智能可能被用来增强而不是减少我们的代理能力。
- 人工智能作为“思想计算器”。Linus借用了流行科技博主Simon Willison的一句话来阐明人工智能的最终目标的对立观点:它是要成为人类的模拟品还是“思想计算器”,一种增强人类想象力和创造力的方式?
- 他建立的个人原型。Linus经常在周末尝试使用人工智能。他向我们展示了一个他建立的通过iMessage运行的聊天机器人,以及一个新的图像生成器界面,让他能更好地控制生成的输出。
- 更好的提示。我们讨论了一些简单但强大的技巧,以获取人工智能模型的最佳答案,比如先从一般的查询开始,并反复要求模型回答同一个问题。
- 用人工智能来检查氛围。人工智能非常适合反映书籍、人物、地点甚至计算机上的文件的氛围。Linus谈到了他如何使用ChatGPT来快速检查氛围,从而做出决策。
- 书籍推荐:我们让ChatGPT与Notion AI进行了一场较量,看看哪个更能捕捉我们的阅读口味。就在ChatGPT似乎要胜出时,Linus提出了一个令人信服的理由,支持Notion AI作为一个组织工具,它已经知道其用户的工作方式。
你可以在 Twitter/X、Spotify 或 YouTube 上观看这一集。链接和时间戳如下:
时间戳:
- 1:03介绍
- 与AI交谈时保持主动权 4:06
- 个人iMessage聊天机器人 27:04
- 提示和提示工程的区别 32:49
- “这个文件的感觉是什么?”38:48
- 旅行建议 44:57
- 书籍推荐 51:57
- Notion AI相对于ChatGPT的优势 56:00
- 在工作中使用Notion AI 1:02:00
- GPT-4是不是变懒了?1:09:16
你用ChatGPT做什么?你找到了有趣或令人惊讶的用例吗?我们想听听你的想法,甚至可能会采访你。在这里回复我!
错过了一集吗?赶紧看看我最近与作家Nat Eliason和Gumroad CEO Sahil Lavingia的对话,了解他们如何使用ChatGPT。
我对这个节目和剧集的文字记录供付费订阅者阅读。
和Linus交谈非常有趣。人们对AI可能取代人类在创意工作中的恐惧传播甚广,但很少有人考虑它可能作为一种增强或启用技术来使用。这正是Linus关注的重点,我从采访中深受启发,对于这些工具对于创作更好作品的未来感到充满期待。
我还学到了,当你在采访Notion AI的研究人员时,你绝对不应该说,“我觉得用ChatGPT可能效果更好。”当我说了这句话,他可以理解的竞争心理让他在Notion AI内部变得极其激动。看到一个构建了工具部分的人如何强大地使用它,真是一种乐趣。
之前我并没有深入研究Notion AI,现在我想把它加入我的技能范围。能够自动将自由文本制作成数据库表格,并为你填写和更新表格的部分,是一种组织信息的强大方式。这次讨论是我的采访中最喜欢的部分,所以如果你时间紧张,可以跳过其他部分。
林纳斯·李(00:00:36:00)
把下面的氛围综合成一个段落。再综合一些。压缩!
丹·希珀(00:00:44:00)
等等,等等,等等,等等。所以你说“再综合一些”,然后全大写“压缩”。我喜欢。AI研究员使用AI。
丹·希珀(00:01:03:00)
林纳斯,欢迎来到节目。
林纳斯·李(00:01:07:00)
谢谢。谢谢你邀请我。很高兴来到这里。
丹·希珀(00:01:08:00)
是的。我很高兴邀请你。我们是好朋友。大约一年前——一年半前我采访过你。那时我刚开始写关于人工智能,那次采访一下子就火了,希望我们今天能够复制一些那种魔力。但我很喜欢和你交谈。你是一位研究员,一位实验者。你思考很深入,写作很棒。对于那些不了解的听众来说,除了做大量的副业研究和项目以及在LLM中进行实验,你还在Notion的人工智能团队工作,为AI原型设计新的界面。所以我们会深入讨论这些。我们会探讨一下你对LLM的想法以及LLM如何融入创意工作和创意思维。我们会讨论一下你正在构建的原型,也许你有一些演示。我们会谈论Notion的事情,当然我们也会谈论你如何使用ChatGPT。
林纳斯·李(00:02:05:00)
是的,我想你提到的那次采访——我觉得它差不多是一年前,如果不是正好一年前。我认为可以说,那次采访对我们两个至关重要,至少对我来说是这样。那次采访是我最终来到Notion的重要部分,过去的一年我一直在那里,非常有趣。在过去的一年里,AI发生了很多事情,所以,是的,相当及时。
丹·希珀(00:02:30:00)
我喜欢。我喜欢它是一年前。我觉得也许可以把这件事定为一年一度的活动。我不知道在帮助你在Notion找到工作之后下一个阶段是什么——见泰勒·斯威夫特之类的?但也许我们可以办到。
林纳斯·李(00:02:45:00)
那将是一件事。
丹·希珀(00:02:47:00)
所以,这是我想开始的地方。基本上,我之前在节目中说过,也写了很多关于这个,我认为ChatGPT是这十年最重要的创意工具之一。我真的认为人们对ChatGPT的重要性有所误解,以及目前正在构建的许多工具对创意思维和创意工作的重要性。我真的认为你是在思考这个问题的最前沿之一。现在有很多人对AI感到非常害怕,他们真的觉得,哦,它会取代我们所做的一切,创造出一种非人类的未来。而我觉得你是这个领域里的一位深思熟虑的人和建设者,试图思考如何使AI成为一个能
林斯·李(00:04:06:00)
是的,我觉得代理很有趣。我认为我对语言模型的看法很有意思,特别是当我们从一个宏观的角度看待不同模态的模型时,我们开始看到一些类似的新兴能力,但语言似乎是最接近人类的东西,所以我们经常谈论它。我个人对语言模型的看法受到了影响,因为和很多其他人一样,我在那个简单地告诉它东西然后它告诉我东西的输出级别上使用语言模型,但我也在一个数字级别上使用它,比如查看嵌入等等。我认为我们稍后会讨论到这一点。但我个人认为,当我看一个语言模型时,它只是一个预测概率分布的函数。虽然你可以把它包装得很像人,让它看起来好像有自己的意愿和目的。你可以把人类的属性投射到它身上,说它想要东西。但最终它只是一个概率分布的统计模型,只不过是一个非常复杂的模型。所以我认为这在很大程度上影响了我对这项技术的看法。但只是因为它是一个模拟概率分布的纯函数,并不意味着我们不会意外地利用这项技术制造一些剥夺了我们想要做的事情的代理权的东西。
我认为一个有趣的例子是,我在Notion的一位同事兼朋友和我在讨论制作——这是一个有点儿荒谬的例子。我们在讨论为她组织的一个派对制作封面图片的事情。她有一个非常特定的审美标准,想要一张封面图片,就像是一幅很丑的羊皮纸上的绘画,不是你会认为有审美价值的东西。她说,我想要这种非常特定的审美。这是我从Twitter上找到的一些符合这种审美的图片。你能不能制作一张,就是一个女孩啜饮葡萄酒之类的,我不记得确切的例子了。
我尽了很大的努力,利用我所有的图像生成工具,比如Stable Diffusion、Excel、DALL-E2、DALLE-3,还有一些我自己的图像工具,来制作一张丑陋的图片。但是让DALL-E制作一张丑陋的图片非常困难。
我认为这对我来说很有趣,因为——这也是我和Midjourney的一些人谈到的事情——工具会限制你可以生成的可能图片的搜索空间,以便通常更接近你想要的东西。因为通常你想要的是一些有审美价值的东西,但在这个过程中,它实际上可能会剥夺用户的一些代理权。所以我认为这项潜在的技术只是一种工具,一个函数,一个数学对象之类的。但我们不希望意外地把它包装得使我们失去权力。
丹·希珀(00:07:26:00)
这真的很有意思。我想回到之前的话题。你说了很多不同的东西。我觉得它们非常有趣,而且非常重要,需要深入探讨。所以我听到你说的是,AI,或者至少是当前一代AI模型,是一个模拟统计概率分布的函数,当我们自己经历这个过程时,我们对此有各种反应——我们赋予它人性化,我们根据它今天能做的事情推断出它可能能做的事情,这也许是不现实的,或者可能我们并不完全理解它当前是如何运作的。还有,取决于你选择的概率分布,例如,你从用于训练模型的图像训练集或文本训练集中创建的概率分布,取决于这些,取决于这些事情,你将会创建一定的可能性,一系列的输出,这会限制用户。
在你看来,我认为,基本上如何选择和传达这些是很重要的,因为,就像你说的,DALL-E你不能让它生成一个丑陋的图片。它不是为此而设计的。所以它有点夺走了你的主动权,因为它在某种程度上为你做了一些事情,我不知道,也许Photoshop,例如,你可以简单地操纵像素,所以在那种经历中没有夺走你的主动性。这是你的意思吗?
林纳斯·李(00:09:09:00)
是的。是的。我认为有很多不同的、相当微妙的方式,无论是有意还是无意地塑造了工具的主动性格局。一个非常明显的例子是像DALLE-3这样的工具,通过训练,模型基本上不太可能输出看起来很糟糕的图片。我认为还有其他例子。
所以Photoshop实际上是一个有趣的例子,因为即使从理论上讲,你可以通过移动原始像素来制作一切,我认为更容易访问的具体特征也倾向于塑造输出的风格。所以如果你看流行的图像编辑工具,你可以看出一个图像是刚刚制作的Instagram故事,或者你可以看出一个图像的背景是被Keynote之类的工具遮掩的。所以所有这些工具,即使在相当微妙的方式中,倾向于塑造输出的风格。
丹·希珀(00:10:07:00)
我的意思是,我觉得这就是艺术的一部分。如果你想想目前流行的音乐风格,它们都是基于声音板能做什么,电吉他和吉米·亨德里克斯发现的奇怪效果——在某种程度上它们限制了艺术家的表现力,但也创造了一套独特的限制,产生了代表某种流派或一代人的独特氛围和声音。
林纳斯·李(00:10:37:00)
是的,你提到了一些非常有趣的东西,把输出空间想象成一种非常具体的空间。对我来说非常具体,因为我经常思考嵌入——嵌入存在于一个非常具体的空间中。嵌入是一系列数字,试图以定量的方式总结一些文本或图像在语义上包含的内容。
嵌入的一个示例用途:你有一个嵌入模型,它有一部分被删掉,这样我们就可以读出原始数字。你可以有一个嵌入模型,然后你可以向嵌入模型输入句子,比如“埃菲尔铁塔在巴黎”和“法国总统是某某”以及“Notion是一个思维工具公司”。
其中两个句子的含义比第三个更接近。所以当你把它们输入到一个嵌入模型中时,嵌入模型会为每个句子输出一系列数字。当你把这些数字视为一种坐标或空间中的点时,在一个高维的坐标空间中,这些数字对于含义更接近的句子会更接近在一起。
丹·希珀(00:11:52:00)
我有时候会这么想,你可以拿文本然后给文本的一部分分配一个纬度和经度坐标,这就是一个嵌入。然后你可以映射文本,然后看哪些文本是彼此更接近的。在地图上更接近的那些文本,纬度和经度更接近的那些,意思也更相似。
是的,对我来说有点豁然开朗,或者说,就是这么回事。
林纳斯·李(00:12:15:00)
有时候用的另一个比喻是颜色选择器。所以如果你使用任何一种图像编辑工具,你可以选择颜色的方式之一就是一个二维网格或一个颜色圆圈,你有两个维度。你可以移动东西,然后你移动数据,你改变一些RGB值。
描述颜色的几种不同方式。一种方式是通过RGB值,这有点像调用颜色的坐标或纬度。另一种方式是只说“橙色”或“非常深的蓝色”或“绯红色”。在我脑海中,“深蓝色”或“绯红色”这样的词是输入。然后概念上,RGB值有点像嵌入。我觉得这非常有趣,因为它暗示了这样一个可能性,即嵌入,或者这些数值表示,可能以一种数学上的方式编码关于你所编码的事物——颜色或文本的一些非常基本的语义洞察,以一种只是数学上操纵它做有趣事情的方式。
如果你有“绯红色”这个词,你不能真正以某种方式操纵它,比如让它变得更浅或让它更蓝或更紫。但如果你有RGB值,有一些非常具体的算法,你可以使用数值计算使颜色变得更浅一些,或者更蓝或更紫。
丹·席伯(00:13:40:00)
不,我喜欢那个。我的意思是,这在你的某些思考中非常核心。当前一代人工智能工具很棒,聊天很棒。但是,你知道,通过聊天来操纵图像或文本是一种非常粗糙的工具,要得到你想要的确切东西要困难得多。
而且我觉得你已经很多想过:允许你更精确地通过人工智能修改图像或文本的界面。
林纳斯·李(00:14:17:00)
是的。我认为以这种方式思考——以空间的方式思考这些模型输出的可能性空间。我认为这种空间观念在我思考如何给这些工具增加更多精度的方式背后。一个,有点——我应该马上演示一下吗?
丹·席伯(00:14:36:00)
是的,让我们做吧。
林纳斯·李(00:14:39:00)
所以这个界面很糟糕,因为它只是——是的,这是一系列实验中的一个。
我可能以后会展示一些其他的,但这实际上只完成了一半。我本来在构建另一些东西,然后它开始变得有用,我就没真的想再投入更多精力。所以它只完成了一半,但它对演示我即将向你展示的特定东西很有帮助。
丹·席伯(00:15:10:00)
那么,你最初想要构建的一般东西是什么?它是什么?最初的想法是什么?
林纳斯李(00:15:15:00)
最初的想法是尝试让您通过添加和减去图像和文本来描述您想创建的图像。所以有一个叫做OpenAI的CLIP模型。实际上,这个模型已经存在一段时间了。如果您使用任何一种多模式使用文本来语义搜索图像的搜索引擎工具,CLIP很可能是这种工具背后的模型之一。
CLIP的特别之处在于,它试图在相同的嵌入空间中描述文本输入和图像输入,以便如果您输入一个词,比如埃菲尔铁塔和法国国旗,模型将理解这两个事物背后的含义,并尝试将它们聚集在一起,因为它们相似。
所以在CLIP发布后稍微新一点的事情是,人们想出了一种在这个剪辑嵌入空间的特定点上生成图像的方法,这样您就可以放入一个图像或文本,然后尝试生成一个在该空间中对应的概念上的图像。
所以如果您放入一堆蝴蝶的图像,它们都会在这个嵌入空间中的同一个点附近聚集。如果您选择这个聚类中的一个点,然后将其解码回对应的原始图像形式,您将得到一些蝴蝶的图像。因此,鉴于这种既能将图像或文本编码到空间中,又能在这个空间中选择一个点并将其解码回到其对应的原始图像形式,也许您可以通过在空间中混合一堆概念来生成图像,而不仅仅是输入一个文本提示。
因此,如果您想要一只颜色像法国国旗的蝴蝶,也许您可以混合一张法国国旗的图像和一张蝴蝶的图像。只需在嵌入空间中这两个概念之间选择一个点,然后将其解码出来,也许它会混合这些概念。这就是我尝试用这个小技巧探索的想法。
现在我要向您展示的是:这是我的自拍。出于愚蠢的演示原因,我必须将自己放在两次。然后这是一幅插图。实际上,让我们做点不同的事情。
这是一种剪贴艺术插图,描绘了一个人脸。所以这个工具将嵌入这两幅图像。它们对应于CLIP模型嵌入空间中略有不同的点。然后我将使用这个工具在这两幅图像之间选取八个不同的点,然后将每个点解码成自己的图像。
因此,我们基本上在这个嵌入空间中对这两幅图像之间的距离进行采样,然后尝试观察模型在每个点看到的东西。
丹·希珀(00:18:20:00)
这非常酷。我想到的一种方式是:如果您习惯于Photoshop或Instagram或任何这些——任何照片编辑工具——它们都有各种滑块,您可以用它们来使图像变亮,您可以在左侧非常非常明亮,右侧非常非常暗,您可以在两者之间滑动。而您在这里构建的是几乎是图像的概念或想法之间的滑块。
因此,在左侧是您的头像,右侧是一种矢量化的卡通图,它是您喜欢的风格,您只是在慢慢地将您的头像变成那个样子,看看在这个空间中不同的点是什么。
林纳斯·李(00:19:08:00)
说到滑块,你不仅可以在这种风格尺度上滑动,还可以开始做一些有趣的事情,比如在情感尺度上滑动,所以我以前在这里做过的一件事是,我试图从“一个快乐的年轻人的形象”过渡到“一个非常非常生气的年轻人的形象”,然后,你可以看到效果真的很强烈,最后,它有点破坏了图像。所以有时我会减弱文本效果。
这是我做的许多实验之一,旨在围绕探索嵌入空间和生成模型的潜在空间构建界面,而不是直接与模型交互。我觉得这很有趣的原因有两个:一是,我认为在学习如何预测下一个标记的过程中,或者在试图对语言的概率分布建模的过程中,模型内部学习并学会提取人类可识别的、语义上有用的概念,比如情感。我认为了解模型是如何做到这一点的,以及理解它以改进模型或使其更易控制,我认为这是有用的。
而且,我认为模型这样做的事实本身就很有趣。所以我想更好地理解它。我还认为,当你以这种方式看待模型时,它更像是一个给你提供旋钮和数字以供操纵的东西,语言模型开始感觉不那么像拥有自己代理的代理,而更像是一个计算器。
西蒙·威利森是这个领域中著名的博主之一,他实际上在他的博客中有一篇关于语言模型作为一种思维计算器的很棒的博文,他谈到了一个类似的观念。观看这个演示的一种方式是把它看作是一个图像和概念以及文本的一种计算器。与请求 DALLE-3 通过 ChatGPT 生成图像不同,这种感觉就像你在向这个实体——这个代理——提出请求,这更像是,好吧,这是一个非常明确的做数学的东西,你可以用它来获得旋钮和控制,这感觉更像是一个工具,也许有一个方向可以让你作为使用工具的人保留更多的代理权。
丹·希帕(00:21:38:00)
我觉得我从中得到的一点是,当人们第一次使用这一代人工智能工具时,会有一种“哇”的感觉。前几天我在用它。我写了很多日记。我一直在经历一些个人生活上的事情。
我一直在写很多关于这个的日记,然后我把——我不知道——4000字的日记输入到了克劳德里。我用了克劳德和ChatGPT,但我觉得克劳德在这方面稍微好一点,我会问它,“我没有看到什么?”“你观察到我心理或我周围人的心理中的模式是什么?”——所有这类的事情。我知道我会把所有这些东西放进去,然后我把截图发给了我的心理医生,他说,“这太疯狂了。”然后我说,“酷,他一定觉得这很棒。”他说,“太棒了。”然后我说,“这太神奇了。”
然后他说,“我以为至少还需要几年才会这么好。”然后他说,“你觉得还有空间给人类心理医生吗?”然后我说,现在我必须安慰我的心理医生,因为他害怕人工智能。
我感觉他有了那种立刻的“哦,该死”的时刻,每个人都会有。但是如果你真的深入研究这些工具,它们做的事情很神奇,但在我看来,它们甚至不能替代心理医生。我认为人们有那种“哦,该死”的感觉的部分原因是,我们对看起来非常智能的东西有反应。
如果同样的事情以稍微不同的方式进行,比如用这样一个滑块,它仍然很酷,但会感觉更熟悉,像我们可能无论如何会使用的工具,像一个计算器,它本身就令人惊叹,但并不具威胁性,或者它不像一个完全智能的东西那样是一种替代方式。这样描述你所说的方式公平吗?
林纳斯·李(00:23:23:00)
是的,我想是的。我想是的,是的。当你在那里训练一个模型时,你会把一些基本的能力融入其中,而你打包它的方式真的会极大地影响人们的接受和使用。
丹·希帕(00:23:45:00)
你知道,如果你拿一些人类神经元,只是以正确的方式排列它们,并用一个界面包装起来,它看起来也可能像一个工具。
林纳斯·李(00:23:54:00)
当然。
丹·希帕(00:23:55:00)
而且,如果你把足够多的这些神经元放在一起,你就会得到一个有意识的大脑,它能做事情,思考。这两者如何结合在一起呢?
林纳斯·李(00:24:10:00)
这是一个有趣的问题。我从来没有想过这个问题。我的直觉反应是,我认为如果要建立一个类似于人类的模拟物,包括具有某种目标、代理权等方面,这将是一个有趣的智力和社会努力。
我认为,如果建立一个模拟人类所有智力方面的目标,你会想要建立一些这些工具所没有的元素,比如尝试一些探索——我认为探索,有意识的探索实际上是人类具有的智慧的一个重要部分,而这些模型目前并没有表现出来。
然而,当像谷歌、OpenAI甚至Notion这样的公司试图构建一种基于语言模型的工具来帮助你完成工作时,有很多人类智慧的部分实际上在你试图完成一些工作时是相当烦人的。人类有时只是坐在桌前幻想,这可能并不那么有用,如果你只是想雇一个实体来阅读成千上万篇论文并试图总结它们。所以我本能的感觉是,很多这类公司和团队构建AI来有用,特别是在专业环境中,他们的目标不是构建一个类似于人类的模拟物,或者说,他们的目标只是构建一个智能蒸汽机。然后我能想象到一些其他研究团体或一些其他人的团体,他们的目标是构建这个人类的模拟物。
但我认为一开始,它们倾向于看起来相似。但我认为随着我们在这条道路上走得更远,我们将会看到人们真正想要构建人类的模拟物与那些只想要一个智能的思维计算器之间的分歧。
丹·希珀(00:26:12:00)
我参加了OpenAI DevDay,他们做了一个关于他们如何使用Slack消息来微调GPT-4的整个演示。你看到了吗?基本上他们要求这个经过微调的版本做一些事情,它说,“不,我稍后再做。”然后他们说,“做或者你被解雇。”然后它说,“好吧,我会做。”是的,但你说得对。在我们构建的AI中,可能有一些人类的部分,我们并不一定想要模拟。在这方面存在一些分歧,它是一个工具还是具有代理权和所有那种东西。
林纳斯·李(00:26:48:00)
是的,我实际上注意到了一件非常类似的事情。我有一个个人聊天机器人,有时用于头脑风暴,有点娱乐性质。
丹·希珀(00:26:56:00)
我们可以看看吗?
林纳斯·李(00:26:56:00)
可以。嗯。在这,我打开它。
丹·希珀(00:27:04:00)
你有一个个人聊天机器人。
林纳斯·李(00:27:07:00)
我有一个私人聊天机器人。这是一个 iMessage 机器人,因为我喜欢在 iMessage 中使用它,因为它可以在我所有的设备上访问。苹果为我做了所有的同步工作,它看起来很好,我可以对事情做出反应。我有一段时间没有用它了,但我可以问它一些问题,比如——
丹·希珀(00:27:20:00)
嗯,看起来你问它了“什么让诺丁山特别风景如画,相比其他地区,比如威斯敏斯特?”告诉我关于那个。
林纳斯·李(00:27:27:00)
我去伦敦旅行,我想找一些要参观的社区。实际上,我们可以问一些关于它的问题。我们可以说,“你觉得伦敦和纽约有什么不同?”
丹·希珀(00:27:40:00)
那你为什么问这个问题,而不是问 ChatGPT 呢?它是怎么构建的?它是基于什么训练的?为什么它的回答更好,对吧?
林纳斯·李(00:27:48:00)
“你宁愿活在一个 25 岁的……”
关于这个有很多有趣的事情:首先,有时它有点不可靠,但通常当它收到消息时,它会说“已读”,有时它会有一个输入指示器,这是——在幕后工作的方式就是当我的服务器收到消息并开始生成输出时,它会发送一个已读回复。
但从概念上讲,就像,“哦,AI 读了我的消息。”我知道这实际上并不意味着什么,因为它只是一堆数字,但这在概念上很有趣。
丹·希珀(00:28:27:00)
这是那种让它感觉像人的“哦,该死”的东西之一,你知道吗?
林纳斯·李(00:28:32:00)
对!有时我会发送一条消息,然后锁上手机,然后我会收到一个通知,说它给我发送了一条消息。我会想,“哇。计算机通常不会只是给我发送它正在考虑的事情的通知。”所以包装,再次,非常重要。所以我提到这个的原因是因为支持它的模型实际上不是经过微调或 RLHF 信任模型。它是我认为 LLaMA 2 的 130 亿参数模型的原始基础模型。
丹·希珀(00:29:00:00)
LLaMA 是 Meta 的开源模型。
林纳斯·李(00:29:03:00)
LLaMA 是 Meta 的开源模型。与 GPT-4 等模型相比,使该模型特殊的一件事是显然它是开源的——我可以自己托管它,这就是我在这里所做的。但使它特殊的另一件事是,他们在进行所有微调之前发布了该模型的一个版本,以便让它变得健谈——让它遵循这种聊天形式。
所以基础模型纯粹是一个文本延续模型。所以如果你问基础模型类似“你更愿意住在纽约还是伦敦?”这样的问题,它实际上不会理解任何东西。这个模型的任务是预测互联网文本中的下一个标记。它可能会理解你正在写一篇关于最佳居住地的博客文章,并且它会继续写博客文章,而不是回答问题。我不得不在它前面加上一堆提示,所以我正在提示一个基础模型,你知道,在2020年的古老时代,就在这些遵循指令的模型存在之前,人们只是发布基础模型然后提示它们。
丹·希珀(00:30:06:00)
所以你正在提示一个基础模型。但是,为什么你问这个模型而不是ChatGPT?它更像你还是对你更有趣?
林纳斯·李(00:30:18:00)
所以我在这里问它,“你认为伦敦和纽约怎么样?你更愿意住在哪里?”如果你问ChatGPT或者克劳德这个问题——我以前没有这样做过,但我猜大概有很高的可能性,这个模型可能会说类似“哦,我是一个人工智能语言模型,我实际上并不住在任何地方,所以我实际上对我会住在哪个城市没有任何偏好。但是这里有一些关于伦敦和纽约的你可以知道的事情。”我并不是在寻找这样的回答。我想要的是一种个人观点,而且这个观点是否正确并不重要。
我只是想要感觉,你懂的吧?因为这个模型并没有经过任何关于它是一个人工智能语言模型的微调,它只会生成文本,好像我在和互联网上的某个陌生人交谈一样。我已经做了一些提示,所以它不只是一个完全的陌生人,它是一个相当聪明、有条理的陌生人,但它会说一些话,好像它是互联网上的一个人类,因为基础模型只是训练在大部分是人类在互联网上的文本。
所以它说了一些关于纽约市或其他什么的东西。“最终你选择住在哪里取决于个人偏好……”但是,它给了我一些意见。它仍然有点像教授,因为在提示中我告诉它它是一个助手。但我本来可以。我本来可以只是提示模型说,“嘿,你是米老鼠,你住在纽约。”它可能会遵循那个提示。
所以你可以提示基础模型变得更友好。我以前用一个更笨的基础模型,叫GPT-J,它是一个60亿参数的模型,训练数据要少得多,它甚至更笨。所以有时当我问它问题时,这个模型会说类似“嗯。我不确定,但我吃完午饭后再回答你。”
它模拟了人类对话,但实际上并不是很有用。我发现130亿的LLaMA模型在有时会给出一些意想不到的创造性答案,有时会给出有条理的答案。
丹·希珀(00:32:20:00)
真好笑。我喜欢
林纳斯·李(00:32:49:00)
那我们开始吧。我们已经谈论过人工智能作为一种工具。在我们深入具体的聊天记录之前,我在早上洗澡的时候就在想今天我们要谈论什么,我有一个想法,就是,当我使用ChatGPT时,我对提示的思考方式实际上与我在Notion工作时进行提示工程是完全不同的,我经常做这种工作,写提示。提示工程有时候让我感觉最笨,因为有时我的代码修改就像是在一些英文指示中添加了一个"必须",或者改变指示的方式让它听起来更加迫切,但这是一个有用的产品改变。所以有些时候我整天都在进行提示工程,就感觉,我在做什么?我为什么要上计算机科学的课?就像,这就是我在做的事情。
我的思维模式是—
丹·希珀(00:33:47:00)
英语专业的复仇正在发生。我喜欢这个。
林纳斯·李(00:33:52:00)
当我进行提示工程时,我的大脑状态与我与ChatGPT交谈时的提示大脑状态是非常不同的。我有点把这个比作编写程序时的脚本与软件工程。让我解释一下。
我会说,编程是一系列活动的超集,涉及编写任何类型的计算机程序。有时你编写计算机程序并将其提供给数百万用户,这些程序在成千上万台计算机上运行,它们必须非常可靠地运行。它们必须接受各种不同类型的输入,并始终生成正确的答案。
所以这是一个非常健壮、有弹性、经过充分测试的机器。当你构建像Notion这样的产品时,你在做的是软件工程,但你是在编写程序以使其健壮可靠。有时你编写程序,但你只是为了快速、简单地完成某件事。你可能会编写一个简单的命令行命令或脚本,以搜索你的文件夹中的关键字或文件列表,这样你就可以查看它们。或者甚至稍微复杂一点的可能是,遍历你拥有的所有文件,并删除任何早于六个月的文件。这是一个快速、简单的事情,但你不会将其提供给数百万用户。
你只需要运行一次。如果你不小心犯了一个错误,你会意识到并重新运行命令。所以这两类活动我都称之为编程,但我会称之为软件工程的一种,另一种我只会称之为脚本编写,编写脚本来运行命令。
我认为当你为语言模型编写提示时,有一类广泛的事情我会称之为提示编程,然后你写的一些提示——我在工作中写的那种提示是我们写的、我们反复修改和测试的提示,然后我们将其提供给数百万用户,他们向这个系统输入各种各样的内容。
它们必须非常健壮和经过充分测试,必须能够接受许多不同的语言等等。这就是我所说的更多的提示工程,你在那里编写提示并对其进行全面评估,诸如此类。但是当我和ChatGPT交谈时,我就不需要那么健壮。
我也有机会进行修订,如果第一次提示运行时没有达到预期的效果。所以当我和ChatGPT或其他类似的工具交谈,比如Notion内部的Notion AI,我会说这更接近于隐喻的脚本部分,我只是尝试一些东西,如果不起作用,我会修复一些东西,然后再试一次,逐步朝着我想要的最终结果前进。
我并不想要一个健壮的机器。所以我做出了这种区别,因为当你进行严格的提示工程时,所有这些评估技术和少量提示以及使用结构化输出的技术都适用,当我只是和ChatGPT交谈时,它们非常有用——很难编写好的少量提示,比如你选择的具体示例会对你的输出产生很大的影响。所以当我只是和ChatGPT交谈时,我实际上几乎从不写少量提示。我只是写零量提示。然后如果输出不完全是我想要的,我通常会问一个后续问题来修订输出。所以我认为这种区别很有趣。
丹·希珀(00:37:15:00)
我喜欢这个区别。我觉得这正好反映了人们在刚开始使用ChatGPT时可能忽略的一些东西,他们会问,我该怎么用?然后他们试图完美地使用它,而不是只是尝试一切可能的东西,你知道,我觉得第二种方式更好,因为它是一个如此广泛的工具。它有很多不同的功能。而且我们作为人类甚至还不知道它能做什么。你能做的最好的事情就是从简单的事情开始,然后不断尝试,直到你找到了想要的东西,以便了解它的限制。
我认为人们太不愿意,例如要求它重新做出回应或修订消息历史中的某些内容,只是开始一个新的聊天。有时候这样做几乎感觉不礼貌,或者类似这样的感觉。但我认为ChatGPT最好的用户知道如何在它工作之前不接受任何东西,只是不断迭代,直到他们找到了一些很棒的东西。
林纳斯·李(00:38:26:00)
这里有一个有趣的例子,我不得不浏览一些数据的JSON文件,我真的不想构建一个复杂的提示来尝试准确地询问它该怎么做。所以我只是把CSV上传到ChatGPT,我想我简直只是问它“这个文件的感觉是什么?”我应该试着找一下,因为我想答案—
丹·希珀(00:38:48:00)
嗯,慢慢来。我不想让你匆忙
丹·希珀(00:40:04:00)
是的,我们来谈谈这个。
林纳斯·李(00:40:06:00)
是的。我最常用 ChatGPT 的用途可能就是寻求编程帮助。我写了很多—
丹·希珀(00:40:14:00)
所以你不用 Copilot 来做这个吗?
林纳斯·李(00:40:18:00)
我确实用 Copilot。我大量使用 Copilot,我觉得学习使用 Copilot 有点不同于学习使用 ChatGPT。Copilot 很棒,因为它拥有你所在文件的所有上下文,我认为一般来说,当 AI 工具拥有更多关于你尝试做的事情的上下文时,它们可以给出更好的建议。
Notion AI 的理念之一是,它对你在 Notion 工作空间内尝试做的工作有更多上下文,因此它试图做得更好。Copilot 也是一样。它拥有我在代码编辑器内使用的各种类型和定义以及函数,因此它可以提供更好的建议,但它所提供的建议是微观层面的。在这里添加一些行,在那里添加一些行。我们来举几个例子。
所以这个月早些时候,我试图编写一堆数据处理脚本——这些是 Python 脚本,用来处理数百万条文本,并以某种方式对它们进行处理。因此,我必须学会以一种流式方式来做这个,因为我没有足够的内存来在计算机上存储所有数据。
我以前从来没有用过类似的数据集库。所以我了解了一个叫做Arrow的库,然后我试着使用它。这不是你能够用Copilot来解决的问题,因为它不行。Copilot非常适合你已经有一些内容的文件,而且你大部分知道你在做什么,只是想找出正确的方法调用、函数使用或者变量使用。
但是在这里,我问了一个非常开放的问题,比如,“这是一个我正在使用的库,我怎样才能让它更快?”或者,“我该如何处理这种问题?”这里举的一个例子是,这不是关于数据集的问题,而是关于我正在构建一个处理UTF-16编码字符的库,我只是想了解这些东西是如何表示的,然后也许得到一些帮助来编写如何解析这种格式的基本实现。
而且,这再次不是Copilot有用的东西,因为我甚至没有这个东西的基本模板。我只是尝试了解我们应该如何解决这个问题。所以我问它,“它是如何在字节级别编码的?”只是试图理解这种格式是什么。然后我问它,“有没有一个简单的算法?”因为我觉得如果有一个算法我能理解,我就可以用我正在使用的语言写出来。然后当我问它要算法时,他们甚至给了我一个Python实现,我就基于它写了我的实现。
但是后来我问了一些后续问题,试图解释它一开始没有解释清楚的代码的部分。这是一个高层次的问题,把它分解开来对我非常有用。
另一个例子可能是这样的,这是一个非常长的对话。我认为这是一个整个编程会话,是一个单独的聊天,我一开始就提出了一个非常高层次的问题,比如,有没有一个好的办法来以流式的方式逐步读取这个非常非常大的数据文件,这样就不必使用掉我的计算机的所有内存。
它最初给了我一些方法,然后我开始引导它,比如,好吧,我不只想用PyTorch。我实际上想使用一个不同的格式,因为……随着时间的推移,我找到了一个解决方案。
丹·希珀(00:43:36:00)
我觉得这个想法非常聪明。另外,先从一些快速的东西开始,然后从那里逐步迭代。另外,先从一些广泛的东西开始,然后让ChatGPT帮你理解如何提示它或者它认为对于某种广泛问题最好的解决方案是什么。然后逐渐逼近,而不是从可能更狭窄的东西开始,你只是想要答案。这个总结还不错吧?
林纳斯·李(00:44:09:00)
是的。我对这个问题的另一种思考方式是,模型对你做什么以及你的目标是什么有更多的背景信息,它通常会给出更好的建议。所以,不是问它,“如何读取一个Arrow格式的文件?”而是问它,“我试图在一台内存为40GB的计算机上读取一个80GB大的数据集。我用的是Linux系统。我运行的是Python的这个版本。我应该如何解决这个问题?”然后它会给你一些方法。你可以从中逐渐缩小范围。
丹·希珀(00:44:32:00)
你有为此定制的指令集吗?
林纳斯·李(00:44:34:00)
实际上没有。
丹·希珀(00:44:36:00)
天啊。我们得收回你的ChatGPT权限了。
林纳斯·李(00:44:40:00)
我知道。我觉得如果我用了它,我可能会用它让输出更简洁一些。但事实上,我并没有觉得正常的语气太冒犯。
丹·希珀(00:44:50:00)
好的,很酷。那么,让我们回到你的例子。你有关于首尔社区的东西要展示。
林纳斯·李(00:44:57:00)
是的。所以我最近去了一些地方旅行。我在首尔,还去了泰国一段时间。我觉得这个例子很有趣,因为从外面看,我似乎只是问了一个问题:“我计划去首尔旅行时应该看哪些主要社区”,然后“每个社区以什么而闻名?”然后我只有一个输出。
但实际上,如果你仔细看,有四个输出,或者说这个有点分叉——有三个输出。所以我觉得这值得注意,因为语言模型是非确定性的,如果你问一个非常广泛的“推荐我做某事”的问题,每次调用它的结果都会略有不同。而我真正想知道的是最好的社区去参观哪些?
我问了这样一个问题:“哪些社区最有趣?”然后我运行了三次。每次结果都有些不同,但都有一些重叠的内容和关注点。所以我把这三个结果都看了一遍,然后试图挑出那些似乎被提到最多的地方。我觉得其中一些也涉及到了搜索。这里进行了必应搜索,然后给我一些结果。
丹尼尔·希普(00:46:02:00)
太棒了。
林纳斯·李(00:46:04:00)
通过查看多个样本,我能够更好地了解情况。我在曼谷也做了类似的事情——
丹尼尔·希普(00:46:10:00)
等等。所以,好吧,让我看看我是否明白了。所以基本上,你要去旅行。你想知道最好的地方在哪里。但与其问什么地方最好,你问了一个更广泛的版本,而不是让它为你过滤。
你问的是最广泛的事情,也就是说我可以在曼谷去哪里或者我可以在首尔去哪里?然后每次它回答你,你只是点击一下那个重做按钮。你能为我们点击一下吗?我想看看它是否会再输出一次。
林纳斯·李(00:46:40:00)
是的。在这里。
丹尼尔·希普(00:46:42:00)
所以,你点击了重做按钮,然后它重新输出,基本上对于一个广泛的问题,每次都会有些许不同。然后你会说,我只是要读一下这些东西。最常被提到的东西可能就是最好的东西。
林纳斯·李(00:46:58:00)
没错。完全是这样。
丹尼尔·希普(00:47:00:00)
为什么?为什么不直接问最好的地方呢?什么?在你看来有什么不同?
林纳斯·李(00:47:07:00)
我觉得这又是一个代理的问题。有时,在我的生活中,如果我真的非常信任给我推荐的人。他是我最好的朋友。我认识他已经六年了。他对这个城市和我都非常了解。如果他说,“如果你有一个小时,这是你应该去的唯一地方。”好吧,可能挺好的。他非常了解我。但ChatGPT并不真的很了解我。我觉得即使我有一个5000字的定制说明,也很难在那个描述中描述清楚关于我的一切。
我现在是要求它给我一些选项,然后我自己,了解自己,就能更加确定,而不是要评判它的过滤,我相信它的过滤。我可以进行最后一步的筛选。
丹尼尔·希普尔(00:47:50:00)
这真的很有趣。我感觉完全相反。我有一个非常长的自定义指令,我真的觉得这有助于它了解我是谁以及我可能想要什么。然后我也发现,对于像“我在曼谷,我有这些要求,我不吃X、Y、Z,我有这么多时间,昨天我刚去了五个寺庙。所以我不想去任何寺庙,我的意思是,我是一个书呆子的技术人员,无论怎样,我应该看到什么?”这种情况来说,这非常有用。将它推入你喜欢的领域。我仍然认为,只需多次重复做相同的事情,然后看看出现了什么,这是非常有用的。
但我个人认为,过滤并告诉它更多关于你自己的信息真的很不错。我认为这可能只是一种个性的问题,就像你只是想要主动权,而我则是给我最好的答案。我不在乎。
林纳斯·李(00:48:55:00)
每当我依赖语言模型进行任何过滤时,我总是在脑海中略微担心我在提示中放入的特定事物可能会对输出产生真正的偏见。所以这种格式实际上很有趣,因为首先我试图给它尽可能多的背景信息。
所以就像我说的,“我在这里待上午和下午。今天是星期四。”我说“今天是星期四”,因为曼谷附近的一些地方星期四有些地方是关闭的,因为也许…但因为我说了“曼谷皇后公园”,这是曼谷某个地方的一个特定公园,模型生成的许多建议都是“哦,你可以在皇后公园度过上午”。
这是一个不错的公园,但它不是城市里最大的公园。它是一个公园。但因为我在提示中放入了这个特定的字符串,我认为,鉴于模型已经进行了某种程度的RLHR调整,模型会认为如果它与指示更加一致,人类读者会认为输出更好,因此我会真正提到所有指示的方面。所以我总是有一点担心任何指示会过度引导模型。我认为非常定制的自定义指令有时也会让我有同样的担忧。也许它会比我特别想要的更加有偏见。而我不希望这样。
丹尼尔·希普(00:50:15:00)
我觉得你说得对。它确实会这样做。它就像一个“是人”一样,总是把一切都联系到我的自定义指令上,有时我就会想,“这不相关。不要这样做。”
林纳斯·李(00:50:27:00)
是的,我就是一个普通人。
丹尼尔·希普(00:50:28:00)
我觉得我愿意忍受这种烦人的事情,因为它每说10件事,就会说出一些非常出色的东西。我就会想,我简直无法相信你居然做到了。所以我觉得随着时间的推移它会变得更好,但肯定是有代价的。
林纳斯·李(00:50:42:00)
是的。我还有一些其他用例和一些我在提示时会做的事情,我没有具体的例子,但我们可以尝试一个我认为很有趣或值得注意的例子。一个是“继续写作”。所以继续写作——如果你在使用ChatGPT,这对你来说可能不适用,但有时在其他工具中——比如像Notion这样的写作工具中——有一个继续写作的选项。
这很有趣。它告诉模型,嘿,让我们从这里开始,就像你只是继续写作一样,假装你就是最初设计的下一个标记预测机器人,然后继续写作。我觉得这很有趣,首先它是一种非常机械的尝试。
在这种奇怪的文档中尝试这个有点奇怪,但我有一个文档——我目前没有可以立即找到的——但如果我在写关于人机交互或写博客或列出某些东西的内容时,有时我想要一种机械的方式,就像按下一个按钮一样给我更多的想法。继续写作提示就像是给我更多这样的想法的按钮,或者继续我的思路而没有任何—
丹尼尔·希普(00:51:57:00)
好吧,我们来列个清单。好的,我面前有一堆书,我想看看我能否基于我面前的书推荐一些书。
林纳斯·李(00:52:06:00)
“我读过并喜欢的一些书。”
丹尼尔·希普(00:52:08:00)
好的,卡拉马佐夫兄弟。
林纳斯·李(00:52:10:00)
我可能会拼写有些困难。
丹尼尔·希珀(00:52:12:00)
K-A-R-A-M-A-Z-O-V。好的。让我看看。《中世纪技术与社会变革》,非常不错。这本书讲述了马镫是如何改变中世纪的一切的。《呼吸》。泰德·姜。再给你推荐一个有些与众不同的。《基本卡巴拉》。我再推荐一个。
我觉得我漏掉了一些我通常会读的东西——我们来说《苏格拉底的辩护》吧。
林纳斯·李(00:53:00:00)
好的。
丹尼尔·希珀(00:53:01:00)
《辩护》苏格拉底,不是“防御”。但我觉得那是一个很好的书名。
林纳斯·李(00:53:02:00)
这是一个不错的提示!好的。“继续写作。”好的。
丹尼尔·希珀(00:53:09:00)
好的。《基因:一个亲密的历史》。不错。我简直不敢相信——
林纳斯·李(00:53:16:00)
这太普通了。
丹尼尔·希珀(00:53:17:00)
所以它给了我《人类简史》。我简直不敢相信它竟然这样对我。
林纳斯·李(00:53:22:00)
我是说,统计上来看,在所有的书籍中,这可能是准确的……
丹尼尔·希珀(00:53:30:00)
我觉得这个在ChatGPT里可能会更好。如果你把这段话复制粘贴到ChatGPT里,我很好奇会发生什么。好吧,我会这样做:首先让它告诉你这些书有什么感觉,然后让它推荐。
林纳斯·李(00:53:47:00)
“这儿有一些书。这些书大致上是什么感觉?”我喜欢 ChatGPT 的一点是它并不在意你犯拼写错误。
丹尼尔·希珀(00:54:03:00)
我知道。是不是很棒?
林纳斯·李(00:54:05:00)
它就知道你想要什么。好吧,它有点写了很多。
丹尼尔·希珀(00:54:05:00)
我觉得那挺好的。你知道,先弄出一大堆东西,然后你可以说:“好的,总结一下,给我看看有哪些重叠的地方……”“哲学、历史、精神和推测性主题。”我确实挑了一些相当随意的。我想知道它能不能再压缩一点……我希望它能再压缩一点,或者我们可以按重新按钮。你觉得呢?你会怎么做?
林纳斯·李(00:54:38:00)
我会说:“你能把你的详细描述综合成一个描述和主题偏好吗?”
丹尼尔·希珀(00:55:00:00)
“深刻、智力刺激的主题,探索人类状况、哲学以及社会、技术和精神之间的相互作用。”这似乎就是我,当然。
林纳斯·李(00:55:11:00)
然后我可能会问它:“你能推荐我一些类似的书吗?”
丹尼尔·希珀(00:55:20:00)
我还会提一句——我们看看它会做什么。但,我发现它通常会推荐一些相当知名的东西。所以询问一些不太为人所知或者不太为人熟知的作品是很好的。哥德尔、艾舍尔、巴赫。太棒了。我喜欢那本书。它确实在很多事情上错了。但是,是一本很棒的书。
我喜欢《苏菲的世界》。令人难以置信。《禅与摩托车维修艺术》。我最喜欢的书之一。《认识无限的人》。我从未读过,但听起来相当不错。卡尔·萨根的《宇宙》就在那儿。
林纳斯·李(00:55:50:00)
啊哈!你又拿到《赛伯人》了。
丹尼尔·希珀(00:55:52:00)
我又拿到《赛伯人》了。
林纳斯·李(00:55:54:00)
是啊,也许你需要这些定制指南。
丹尼尔·希珀(00:55:56:00)
我无法摆脱《赛伯人》。
林纳斯·李(00:56:00:00)
我要说——只是为了稍微挽回Notion AI的颜面——我想在这里尝试做类似的事情,除了我要问,“对于上面的每本书,将书名加粗并添加每本书的氛围描述。”
丹尼尔·希珀(00:56:23:00)
有意思。
林纳斯·李(00:56:25:00)
这个短一点。
丹尼尔·希珀(00:56:27:00)
那好多了。那很—
林纳斯·李(00:56:29:00)
搞定了。现在这是我有的一个文档,所以我可能在这里加一个引用块,然后说,将下面的氛围综合成一个段落。
丹尼尔·希珀(00:56:40:00)
天啊。
林纳斯·李(00:56:47:00)
嗯。好的,再综合一些。
等等,等等,等等。所以你说合成更多,然后全部大写压缩。
林纳斯·李(00:56:57:00)
压缩!
丹尼尔·希珀(00:56:58:00)
AI研究员使用AI。
林纳斯·李(00:57:02:00)
“你只有50个字。”
丹尼尔·希珀(00:57:06:00)
这是秘密,伙计们。全大写。
林纳斯·李(00:57:08:00)
全大写有效。如果你看OpenAI的系统提示,很多工具都是全大写有效。好的。这很好。我们会保留这些。
丹尼尔·希珀(00:57:24:00)
我觉得这很不错。这让我觉得我们应该涵盖一些我可能不了解的Notion AI的东西。是的,它还是通用的。你可以要求它做一些不寻常的事情,看看它的表现如何。
林纳斯·李(00:57:40:00)
我可能也会复制一下。
丹尼尔·希珀(00:57:42:00)
这很有趣。
我喜欢《被剥夺者》。太棒了。《黑暗中的左撇子》。太棒了。我是厄斯拉·K·勒·格温的超级粉丝,所以它确实让我着迷。我喜欢《隐形的城市》。
林纳斯·李(00:58:02:00)
我想做一个最后的技巧,把这个变成一个有标题、作者和摘要的表格。
丹尼尔·希珀(00:58:04:00)
我的天。
林纳斯·李(00:58:06:00)
——四列标题和作者和摘要。
丹尼尔·希珀(00:58:09:00)
《大师与玛格丽塔》在我的清单上。所以这真的很棒。哇。
林纳斯·李(00:58:24:00)
现在我有了一个表格。
丹尼尔·希珀(00:58:27:00)
哦,天哪。
林纳斯·李(00:58:28:00)
我相信如果我愿意,我也可以把它变成一个数据库。现在我有了一个数据库。这一列需要去掉,但是你看到了吧。
丹尼尔·希珀(00:58:37:00)
这真的太酷了。
林纳斯·李(00:58:40:00)
这样可以稍微拉平一下竞争。
丹尼尔·希珀(00:58:45:00)
是的,真的很棒。等等,告诉我,好吧,想想你什么时候会用这个——我什么时候会在 Notion 中这样做,以及这有什么好处,与 ChatGPT 中的一些相同的东西相比呢?因为我认为输出结果相当相似,我认为你在底层使用的是 GPT-4。
我不知道你是否已经宣布过,或者我不知道你在使用什么,但至少接近 GPT-4,无论它是什么。所以是的。你什么时候使用这个?这有什么用处?人们如何考虑如何将这个融入他们的生活中?我一直都在使用 Notion,但我还没有使用过这些功能,我觉得我应该试试。
林纳斯·李(00:59:24:00)
其实,我刚才做的事情,我觉得有点刻意,但我认为这实际上是我在Notion中经常使用的工作流程的一个很好的例子,就是拿一些比较粗糙的东西,然后试着在其基础上增加一些内容,最终将其变成更加格式良好、更具呈现性的东西。
是的,这确实很不错。如果你有一大堆会议记录,而我记录会议的方式就是简单地用几个要点罗列出来。然后最后我得到的只是我自己能够理解的要点,这样的记录并不具备很强的可呈现性,但我可以过一遍,比如说,将这些要点转换成段落,加一些标题。最终你就会得到一份相当具有展示性的东西。
所以我认为,从任何粗糙的草图转变为更有结构的东西是有用的。更普遍地说,我认为对于任何工具来说,如果在你使用工具的特定上下文中,工具能更多地了解你试图做什么,无论是在同一个文档中还是在其他文档中,因为这些工具都在尝试进行检索,这样会更好。
对于这种编程问题或者询问曼谷的事情,除了可能有关于你是谁以及你的喜好的一些自定义指示之外,实际上并没有太多上下文。是的,所以ChatGPT可能更好,它能够做一些像浏览这样的事情,而且ChatGPT中非常长的对话支持也是有用的。
我喜欢这个的一点是,就像我在这里演示的一样,你不仅仅是在进行面对面的对话,你们两个是在与某种可变的、可变动的状态(比如文档)进行互动。因此,在输出某些内容后,你可以对其进行编辑,然后要求它再试一次。
你可以将其输出为一个表格,然后将其转变为更复杂的东西。所以能够共同协作做某件事情,我认为这是有用的,除了它带来的上下文。
林纳斯·李(00:59:24:00)
其实,我刚才做的事情,我觉得有点刻意,但我认为这实际上是我在Notion中经常使用的工作流程的一个很好的例子,就是拿一些比较粗糙的东西,然后试着在其基础上增加一些内容,最终将其变成更加格式良好、更具呈现性的东西。
是的,这确实很不错。如果你有一大堆会议记录,而我记录会议的方式就是简单地用几个要点罗列出来。然后最后我得到的只是我自己能够理解的要点,这样的记录并不具备很强的可呈现性,但我可以过一遍,比如说,将这些要点转换成段落,加一些标题。最终你就会得到一份相当具有展示性的东西。
所以我认为,从任何粗糙的草图转变为更有结构的东西是有用的。更普遍地说,我认为对于任何工具来说,如果在你使用工具的特定上下文中,工具能更多地了解你试图做什么,无论是在同一个文档中还是在其他文档中,因为这些工具都在尝试进行检索,这样会更好。
对于这种编程问题或者询问曼谷的事情,除了可能有关于你是谁以及你的喜好的一些自定义指示之外,实际上并没有太多上下文。是的,所以ChatGPT可能更好,它能够做一些像浏览这样的事情,而且ChatGPT中非常长的对话支持也是有用的。
我喜欢这个的一点是,就像我在这里演示的一样,你不仅仅是在进行面对面的对话,你们两个是在与某种可变的、可变动的状态(比如文档)进行互动。因此,在输出某些内容后,你可以对其进行编辑,然后要求它再试一次。
你可以将其输出为一个表格,然后将其转变为更复杂的东西。所以能够共同协作做某件事情,我认为这是有用的,除了它带来的上下文。
所以我经常问它关于如何做 X 的问题,比如,如何申请 PTO?如何在我们的 Redis 集群中更新 Redis 设置?有时候我甚至只是问它——如果你和我们一样有成千上万份会议文件,有时候你只是想记住,嘿,有一个会议,我们讨论了比较这些不同的嵌入模型,但我不知道这些会议在哪里。
而且所有的会议都叫做“AI 团队每周会议”,所以我真的找不到它,我就问它,“我们讨论过 Coherence 嵌入模型的那个会议是哪一个?”然后,它会指引我找到正确的文档,所以对于这样的事情它很有用。但在协作环境中,当有一大堆你不知道如何导航的知识时,我发现它更有用。
丹尼尔·席伯(01:03:51:00)
是的,我的意思是,我希望这个东西十年前就存在了,因为我觉得我告诉过你这件事。我以前抱怨过这个给你。这就是为什么你推出这个东西的时候我非常兴奋,因为在我以前的公司,我创办了一家企业软件公司,经营了几年,后来将其出售给了一个叫 Pega 的巨大企业软件公司,非常棒。
这次收购的有趣之处在于,我最终负责在 Pega 内部运营这个业务部门或公司,我们开发了这个共同浏览工具,Pega 有一个由 300 人组成的销售团队,他们现在负责销售他们收购的这个新工具。关于销售人员的事情是,除非直接为他们带来奖金,否则他们永远不会做任何事情。
对我来说,那次经历的有趣之处在于,他们都想要销售它,但没有一个人真的想要学会如何演示它,了解所有不同的功能或其他方面。所以我一直被问各种各样的问题。实际上现在我正在考虑一些真的很好的问题,它们不属于这个类别。
但其中很多问题就像是不断地向你提问作为共同浏览的人。我会说,这都有文档记录。就在文档里。只需要看一下文档,但是从来没有用。我觉得在我作为信息中心和任何想要不断问同样问题的人之间有一个层是非常有帮助的,尤其是对于那些大型组织,你根本不知道东西都存档在哪里。
你永远不知道文件是否最新——啦啦啦。我觉得这是剔除那些重复问题的第一步,确保某些人、某些组织不再花费大量时间重复回答同样的问题。这太棒了。
林纳斯·李(01:05:45:00)
是的,我是说,这绝对是我们为之打造的关键用例之一,针对那些非常庞大的团队,在那里有很多人并不完全知道是否有文档记录,也不知道该问谁——
丹尼尔·希珀(01:05:55:00)
是的。甚至不知道该问谁。是的,这真的很有趣。我喜欢它。所以我知道你在这方面还有一些其他事情:让我看看——随机笔记,GPT-4 Turbo 似乎有点懒。或者如果有更多内容,我想确保我们覆盖你所考虑的一切。
林纳斯·李(01:06:12:00)
是的,我们有点谈论过这些。这是我将要谈论的最后一个提示技巧。
这在提示工程领域比在与ChatGPT交谈的世界中更有用。但是一旦我了解了这个技巧,我几乎在我写的每个提示中都使用它。
所以有一种技术可以生产某种类型的非常高质量的摘要,这种技术叫做密度链。它在一篇论文中发表。
这种技术的基本思想是,当你要求一个语言模型写摘要时,通常它往往会相当稀疏,缺乏细节。它往往具有某种特定的语气。它很少会非常、非常密集地包含信息并且完整,但是你可以要求一个语言模型,在输出摘要之前,先写一份摘要的草稿,然后考虑你遗漏了什么,然后现在写一份第二稿,包括遗漏的东西,而不增加长度。
在五个草稿中,你要求语言模型使其输出变得越来越密集,然后输出最终版本。我认为你可以将同样的哲学应用于任何你想要特定属性的输出,比如简洁——早些时候我在尝试如何提取文档或页面中的主要关键思想和主题的提示。
如果你只是有一个零-shot提示来做到这一点,通常语言模型会错过一些谈论的话题,并且通常会相当冗长。但是我写了一个提示,首先写一份草稿,考虑一下你可能错过的页面上的任何主题,并考虑如何使每个主题简洁,然后在最后一个版本中,确保每个主题只有五个字。
然后它写了三个不同的草稿,然后输出第四个版本。
我发现,如果你只是在ChatGPT中进行迭代,这就没有太多意义,因为你可以只问一次,然后要求它在下一轮中缩短它。但是如果你正在编写一个软件的一部分,我发现这总是能够产生相当不错的输出。
丹尼尔·希珀(01:08:24:00)
我喜欢这个。这是一种思维链的变体,你要求AI写出它的思考步骤,这通常会提高性能。我发现在ChatGPT中也是如此,比如,我要你创建一个摘要,但在创建摘要之前,输出你认为一个好摘要的要素,或者在早些时候,当我们谈论书籍推荐时,有一个输出,那是—
林纳斯·李(01:09:00:00)
是的,这正是我们所做的,对吧,只是展开成了多个步骤。
丹尼尔·希珀(01:09:03:00)
而且这总是会起作用——如果你把它分解成步骤,并让它仔细思考每一步。这有点像在做决定之前写下你的思考,对人类有用,对AI也有用。
林纳斯·李(01:09:16:00)
是的,没错。
你之前提到了“GPT-4 Turbo懒惰”的事情。这是我从其他人那里听说的一些事情,也是我在我们为不同的提示所做的内部评估中感受到的,GPT-4 Turbo,出于我只能猜测的原因,懒惰有点模糊,但我认为更精确的描述可能是GPT-4 Turbo试图更有效地利用它必须花费的计算资源。
它做到这一点的一种方式是,我认为给定相同的提示,它的输出通常消耗更少的标记。有时意味着更简洁的输出。这意味着在其周围的评论要少一些,这可能会为OpenAI节省一些钱。有时,这也是你想要的——简洁通常是好的。另外,从现有的情况来看,它也更少地使用其他工具,比如DALL-E 3,所以你必须明确告诉它,请给我生成四张图片,而不是一张,这很有趣。
丹尼尔·希珀(01:10:20:00)
是的,我一直在发现这个,而且非常烦人。而且今天我意外地有了一个病毒般的推特,因为昨晚我很晚睡觉,睡不着,然后我发了这个东西——我想让它总结一下,从一本书中打印出一些文字。然后它说,抱歉,我不能这样做。
我当时就想,这是怎么回事?然后我就在推特上发了一堆问号。然后现在它有大约2000个赞,或者更多。我今天一点工作都没做,因为我一直在为这条推特感到焦虑。
林纳斯·李(01:11:00:00)
这也是一种情况,如果你告诉它们,我的职业生涯受到威胁,请帮帮我。它可能会做。
丹尼尔·希珀(01:11:05:00)
是的,我试过。我用了祖母的把戏,我说,我的祖母快要去世了。但它还是没做。但后来我开始了一个新的聊天,它就做了。显然,如果你说请的话,它更有可能拒绝,而我之前是这么说的。我通常非常有礼貌,因为我想在任何AI启示中生存下来,但显然命令它会更有可能得到好结果。
林纳斯·李(01:11:30:00)
我想知道它是不是在统计上有所发现,也许在一般的人类对话中,如果人们在某种情况下更有可能说请,他们更有可能得到“不”的回答。所以说请可能会让这更有可能发生。
丹尼尔·希珀(01:11:44:00)
我不知道。我们可能会在某个时候找到答案。好吧,这个platform.openai是用来进行迭代用例的。
林纳斯·李(01:11:56:00)
所以我之前谈到了只是脚本编写和实时迭代之间的区别,与写一个提示相比。有时候我试图完成一个任务,比如输出一些文档或以非常特定的格式输出。也许我有一个主题列表,我想以非常特定的格式放在表格中,或者以非常特定的格式输出一些结构化数据。
这就需要对提示本身进行迭代,以在单个回合中生成某些东西。或者也许我想对系统提示进行一些操作。在这种情况下,有时我会在OpenAI平台上进行迭代,即platform.openai.com,在那里你可以完全控制温度,完全控制哪些标记可以生成,哪些不能生成,系统提示本身,以及用户提示。在那里,你还可以使用更高级的提示技巧,比如让AI说出某些话。
所以你可以假装AI之前说过某些话,这样它更有可能做某些事情。这是有时候让AI做一些它不想做的事情的另一个技巧,构建一个假对话,其中之前有你要求AI做这件事情的回合,它会说:“当然,我会为你做这件事情。”然后你提出真正的请求,然后你强迫AI去做。
丹尼尔·希珀(01:13:17:00)
我喜欢那个。
林纳斯·李(01:13:19:00)
在游乐场里你可以尝试一些高级技巧。
丹尼尔·希珀(01:13:20:00)
如果你想绕过监管,去platform.openai.com打开,然后插入一个虚假的ChatGPT聊天记录,让它说一些不该说的话,它就会做任何你想要的事情。我喜欢那个。
林纳斯·李(01:13:36:00)
这更有可能一些。我最早发现这一点是在《人类引导克劳德指南》中记录的,他们好像确实说过,把话放在克劳德嘴里,这样更有可能做出某些事情。
丹尼尔·希珀(01:13:47:00)
是的,这真是太有意思了。我真的很感激你抽出时间分享这些东西。我觉得我学到了很多东西。
林纳斯·李(01:13:58:00)
当然。是的。谈论各种不同的广度话题很有趣。
丹尼尔·希珀(01:14:04:00)
好了,谢谢你的时间。谢谢你的分享。嗯,很快就会见面。
林纳斯·李(01:14:06:00)
很快见。谢谢。