人工通用智能的火花:GPT-4的早期实验 S´ebastienBubeckVarunChandrasekaranRonenEldanJohannesGehrkeEricHorvitzKamarPeterLeeYinTatLeeYuanzhiLiScottLundberg HarshaNoriHamidPalangiMarcoTulioRibeiroYiZhang 微软研究院 摘要 人工智能(AI)研究人员一直在开发和完善大型语言模型(LLMs),这些模型在各种领域和任务中表现出非凡的能力,挑战我们对学习和认知的理解。由OpenAI开发的最新模型GPT-4[Ope23],是使用前所未有的计算和数据规模训练出来的。在本文中,我们报告了我们对GPT-4早期版本的调查,当时它还在OpenAI的积极开发中。我们认为,(这个早期版本的)GPT-4是新一批LLM的一部分(例如,与ChatGPT和谷歌的PaLM一起),它比以前的AI模型表现出更多的通用智能。我们讨论了这些模型的上升能力和影响。我们证明,除了对语言的掌握,GPT-4还能解决跨越数学、编码、视觉、医学、法律、心理学等领域的新颖而困难的任务,而不需要任何特殊的提示。此外,在所有这些任务中,GPT-4的表现都惊人地接近人类水平,而且往往大大超过了ChatGPT等现有模型。鉴于GPT-4能力的广度和深度,我们认为可以合理地将其视为人工通用智能(AGI)系统的早期(但仍不完整)版本。在我们对GPT-4的探索中,我们特别强调发现它的局限性 ,并讨论了在向更深入和更全面的AGI版本迈进时面临的挑战,包括可能需要追求一种超越下一个单词预测的新范式。最后,我们对近期技术飞跃的社会影响和未来的研究方向进行了思考。 1介紹4 内容 1.1我们研究GPT-4情报的方法7 2多模态和跨学科构成13 2.1综合能力13 1.2组织我们的示范活动。8 2.2.2按照详细的指示生成图像(`alaDall-E)。17 2.2.1超越记忆的图像生成16 2.2愿景16 在草图生成中可能的应用 2.2.3.....................................................................................................18 3编码21 2.3音乐19 3.1.2现实世界的情景22 3.1.1编码挑战21 3.1从指令到代码21 3.2了解现有代码26 数学能力 430 4.1与GPT-4的数学对话31 4.1.1对原问题的第一个概括31 4.1.2原问题的第二个变体32 4.1.3对谈话中强调的局限性的分析34 4.2数学问题数据集上的表现35 4.3各个领域的数学建模37 与世界的互动 4.4高等数学39 543 5.1工具的使用43 5.1.1使用多种工具来解决更复杂的任务44 5.1.2讨论49 5.2体现的互动49 5.2.1热身运动:地图导航49 5.2.2基于文本的游戏49 5.2.3真实世界的问题52 与人类的互动 5.2.4讨论53 654 6.1了解人类:心智理论54 6.1.1测试心智理论的具体方面54 6.1.2在现实的场景中测试心智理论54 6.1.3讨论60 辨别能力 6.2与人类对话:可解释性60 769 7.1PII检测69 7.2误解与事实核查70 7.2.1为什么目前的衡量标准是不充分的?71 所强调的自回归结构的局限性 7.2.2担任法官的GPT-473 8GPT-476 8.1用两个基本的例子进行热身76 8.2在算术/推理问题上缺乏计划性77 社会影响 8.3在文本生成中缺乏规划78 982 9.1错误世代的挑战82 9.2虚假信息和操纵83 9.3偏向86 9.4人的专长、工作和经济89 方向和结论 9.5影响因素和考虑因素的组合90 1092 10.1智能、人工智能和AGI的定义92 10.2在通往更普遍的人工智能的道路上93 10.3实际上发生了什么?94 多模态和跨学科组成的附录 一个GPT-4有常识性接地101 B105 B.1关于综合能力结果的进一步细节105 B.2关于视觉结果的进一步细节108 编码部分的附录 B.3平面小说设计实例110 C111 C.1测量人类在LeetCode上的表现111 C.2GPT-4可视化IMDb数据的例子。112 C.3更多关于可视化的例子115 C.4二维HTML游戏开发实例116 C.5图形用户界面编程的例子116 C.6逆向工程的例子119 数学推理的其他例子 C.7测试GPT-4执行(伪)代码的能力121 D122 D.1限制条件122 D.2更多的例子126 D.3用GPT-4生成数学问题138 D.4通过外部代码执行减轻计算错误139 E其他可解释的例子141 与世界互动的其他例子 E.1解释代理不匹配141 F144 F.1与工具互动144 F.2与环境互动的例子149 一些未知的东西正在做我们不知道的事情。 -阿瑟-爱丁顿爵士 1简介 智力✁一个多方面✁、难以捉摸✁概念,长期以来一直对心理学家、哲学家和计算机科学家构成挑战。1994年,一个由52位心理学家组成✁小组试图抓住其本质,他们在一篇关于智力科学✁社论中发表了一个广泛✁定义[Got97]。该共识小组将智力定义为一种非常普遍的心理能力,其中包括推理、计划、解决问题、抽象思考、理解复杂概念、快速学习和从经验中学习的能力。这个定义意味着智能并不局限于某个特定✁领域或任务,而✁包含了广泛✁认知技能和能力。建立一个能表现出1994年共识定义中✁那种通用智能✁人工系统 ✁人工智能研究✁一个长期✁、雄心勃勃✁目标。在早期✁著作中,现代人工智能(AI)研究学科✁创始人提出了一系列理解智能✁理想目标[MMRS06]。几十年来,人工智能研究者们一直在追求智能✁原则,包括可推广✁推理机制(例如,[NSS59],[LBFL93])和构建包含大量常识性知识✁知识库[Len95]。然而,人工智能研究中最近✁许多成功可以说✁狭隘地专注于定义明确✁任务和挑战,例如下棋或围棋,人工智能系统分别在1996年和2016年掌握了这些任务。在1990年代末和进入2000年后,开发更普遍✁人工智能系统✁呼声越来越高(例如,[SBD+96]),该领域✁学术研究也试图确定可能成为更普遍✁智能系统基础✁原则(例如,[Leg08,GHT15])。2000年代初,"人工通用智能"(AGI)这一短语被推广开来(见[Goe14]),以强调从"狭义✁人工智能"(如正在开发✁专注✁现实世界✁应用)向更广泛✁智能概念发展✁愿望。 我们使用AGI来指代那些表现出上述1994年定义✁广泛智能能力✁系统,同时还要求这些能力达到或超过人类水平。我们用AGI来指代那些表现出上述1994年定义中✁广泛智能能力✁系统,以及额外✁要求,也许✁在共识小组✁工作中隐含✁,即这些能力达到或超过人类水平。然而,我们注意到,没有一个单一✁AGI定义被广泛接受,我们在结论部分讨论了其他定义。 过去几年,人工智能研究中最显著✁突破✁大型语言模型(LLMs)在自然语言处理方面取得✁进展。这些神经网络模型基于Transformer架构[VSP+17],并在大规模✁网络文本数据体上进行训练,其核心✁使用一个自我监督✁目标来预测部分句子中✁下一个单词。在本文中,我们报告了由OpenAI开发✁新LLM✁证据,它✁GPT-4[Ope23]✁早期和非多模态版本,根据1994年✁定义,表现出许多智能✁特征。尽管✁纯粹 ✁语言模型,这个早期版本✁GPT-4在各种领域和任务上表现出显著✁能力,包括抽象、理解、视觉、编码 、数学、医学、法律、对人类动机和情感✁理解等等。在OpenAI✁早期开发过程中,我们使用纯粹✁自然语言查询(提示)与GPT-4进行互动1.在图1.1中,我们展示了GPT-4输出✁一些初步例子,要求它以一首诗 ✁形式写出素数✁无限性证明,用TiKZ(一种在LATEX中创建图形✁语言)画出一只独角兽,用Python创建一个复杂✁动画,并解决一个高中水平✁数学问题。它很容易成功地完成了所有这些任务,并产生了与人类所能产生✁结果基本上没有区别(甚至更好)✁输出。我们还将GPT-4✁性能与之前✁LLM进行了比较,最值得一提✁✁ChatGPT,它✁GPT-3✁微调版本(改进版)[BMR+20]。在图1.2中,我们展示了ChatGPT对素数无限大✁诗和TikZ独角兽图✁要求结果。虽然该系统在这两个任务上✁表现都不差,但与GPT-4✁输出结果相比,却没有什么区别。这些初步✁观察结果将在本文中重复出现,在各种任务上都有体现。GPT-4 ✁能力具有普遍性,其众多能力跨越了广泛✁领域,其在广泛✁任务中✁表现达到或超过了人类水平,这两者✁结合使我们可以说GPT-4✁迈向AGI✁重要一步。 1由于GPT-4✁发展在我们✁实验之后继续进行,人们应该期待GPT-4✁最终版本有不同✁反应。 4.特别✁,所有✁定量结果应被视为对模型潜力✁估计,而不✁确定✁数字。我们在整个文件中重复了这一警告,以澄清所部署✁模型✁经验可能有所不同。此外,我们强调,我们测试✁版本✁纯文本✁输入,但为了简单起见,我们也把它称为GPT-4 。 GPT-4 提示:你能写一个证明,证明有无限多✁素数,每一句都押韵吗? GPT-4: ✁✁,我想我可以、 虽然这可能需要一个巧妙✁计划。我首先要指出欧几里德✁证明、 这表明,素数并不只✁冷漠✁。假设我们有一个有限 ✁列表、 诸如此类✁素数,而且一个都没有漏掉。将它们全部相乘、 为了聪明起见,再加一个。结果将✁一个数字、 这没有质因数,哦,奇怪!但每个数字都有质因数!但每个数字都有一个素数、 这就划分了,这只✁一个时间问题。所以我们发现了一个矛盾、 我们有限✁名单需要被驱逐。一定有无限多✁素数,这就✁我✁押韵句子✁结局。 提示:在TiKZ中画一个独角兽。 GPT-4:[产生LATEX编译为以下图片]。 提示:你能为以下数据生成一个pyplot:x=[1,3,5,6,8],y1=[2,3,5,18,1],y2=[3,5,6,8,1],y3=[5,1,2,3,4], y4=[9,7,2,3,1]。我希望y1、y2在同一个图中,但y3在该图旁边✁另一个图中,y4在下面。我希望y1✁图例✁"bob",y2是"alice",y3是"bilbo",y4✁"allie"。我想在x轴上标明"时间",y轴上标明"金钱"。我想在每条曲线上添加一个10%-40%✁随机误差条,贯穿所有时间(包括非整数)。我想用平滑✁曲线来显示图,以及平滑✁误差条 。不要使用线性插值,要使用平滑插值!我还想在平滑✁曲线上添加一些小✁之字形,使它看起来更真实。我想把一条基线作为每条线✁平均值。我想在下面放一个饼状图,表明每个时间步骤中四个人✁比例。我还想用一个动画来显示饼状图中✁分数✁如何在**连续✁时间内变化✁。把缺失✁分数插值出来!我还希望其他三个图中✁垂直线动画能与饼状图相匹配。我想要最漂亮✁图。请尽可能多地添加花哨✁东西。 下面✁一个可能✁代码,用于生成以下数据✁pyplot,并有一些注释来解释步骤: GPT-4:[我们给出了两个由制作✁代码产生✁动画快照]。 提示:假设g(x)=f−1(x),g(0)=5,g(4)=7,g(3)=2,g(7)=9,g(9)=6什么✁f(f(6))? GPT-4:有不同✁方法来处理这个问题,但一个可能✁方法✁利用g(x)=f−1(x)这一事实,这意味着对于g域中✁任何x,f(g(x))=x。也就✁说,将f应用于方程g(x)=f−1(x)✁两边,得到f(g(x))=f(f−1(x))=x。这意味着,我们可以通过应用g撤销f✁影响,反过来也✁如此。利用这个想法,我们可以尝试通过寻找x✁值使g(x)=6来找到f(6)。从给定 ✁信息中,我们看到g(9)=6,所以f(6)=f(g(9))=9。同样地,我们可以通过寻找x✁值使g(x