本课程是关于大模型智能体的实战课程,包括原理、算法、应用场景、代码实战案例等,下表是本次课程的大纲。本课是第一节,讲解智能体的整体架构。
我们在开篇词中提到了通过类比人类具备的能力来定义智能体(Agent),这种定义方式要求智能体具备至少7类能力(感知世界、社会角色扮演、自我学习、记录与记忆能力、思考规划能力、使用和制造工具、反馈执行)。有了这7类能力的加持,智能体就能解决人类能够解决的问题,借助GPU强大的计算能力和大模型的超强认知推理能力,甚至在很多场景智能体比人类做得更好、更快。笔者认为,具备上述7类能力的智能体,是通往AGI的必要条件(可能不一定是充分条件)。基于这7类能力,本课笔者试图提供一个统一的软件框架,希望利用该框架覆盖所有智能体的解决方案(包括学术上的论文提供的解决方案及现实场景中的智能体产品方案)。笔者通过通读上百篇智能体相关的论文及体验大量的智能体相关的产品,也确实发现这个框架可以攘括已有的研究成果和产品应用。为了让你更好地学习、理解这个框架,本课我们先从大家最熟悉的ChatGPT(ChatGPT是一个对话式个人助手,也是一种智能体应用)开始,讲解ChatGPT的工作流程,从流程中抽象出ChatGPT的架构(是笔者提供的统一架构的一种具体实现)。有了ChatGPT架构的说明,我们就可以引出笔者提供的统一架构了。相信绝大多数读者都用过ChatGPT,肯定也被ChatGPT的强大能力所折服。ChatGPT就像一个万能的博学家一样,基本可以解决你所提出的所有问题(当然也有回答错误、胡说八道的时候)。ChatGPT的界面非常简单,只有一个对话框,你输入文字、图片等信息,ChatGPT给出回答。你还可以接着上一个问题进行多轮对话,还可以转移话题,重新抛出问题。下面举个例子说明。图1-1是利用ChatGPT来做2024年上海高考数学题中的2道填空题,回答过程有分析有结论,并且都是正确的(这2个题不难,你可以尝试更难的题目)。图1-1:ChatGPT解答2024年上海高考数学题针对图1-1的问题和回答,ChatGPT内部的工作流程大概是:首先,ChatGPT对图片进行处理,要从图片中提出相关的问题文字、数学符号,这就用到了OCR等工具;其次,ChatGPT在后台基于提取的文字进行思考、分析、推理,这里会用到ChatGPT背后的大模型的知识(知识压缩在大模型的参数中),对于复杂的问题,ChatGPT还会进行任务拆解,将复杂任务分解为简单任务,逐一完成简单任务后,再综合各个子任务的结果,获得最终的结论,同时还可能对自己的解答过程进行检查,确保回答是正确的;最后,ChatGPT将思考的过程以文字、图表等形式呈现给你,让你获得问题的最终答案。综合上面的说明,我们可以用图1-2来大致说明ChatGPT的内部工作流程。感知/编码就是对用户输入的信息进行处理的过程,会调用OCR工具从图片中提取文字、数学符号,然后将文字放入ChatGPT的大模型大脑中,利用ChatGPT已有的知识(记忆)对问题进行拆解、分析、解答,并最终在对话框中反馈给用户。有了1.1节对ChatGPT解决数学问题的过程及ChatGPT的工作流程的分析,本节我们给出智能体的一种统一的架构(见下面图1-3)。该架构是后续所有课程的基础,希望读者可以好好掌握和理解。读者可以仔细观察一下,看看图1-2是不是可以看成是图1-3的一种特殊情况?下面我们从前面提到的智能体应该具备的7个核心能力这7个维度,对这个架构的各个模块进行简单说明,让你有一个初步的理解,后面的第2到第8课还会详细讲解各个核心模块的细节。智能体面对的世界是复杂的、多种多样的,可以是电子设备上的虚拟场景(比如ChatGPT对话)、可以是家庭场景(比如扫地机器人清理客厅)、可以是户外(比如行驶在高速公路上的自动驾驶汽车)、可以是游戏场景、可以是VR/AR设备中的虚拟空间、还可以是人类(比如照顾老人的机器人需要时刻跟老人互动)。面对多样的环境,智能体需要具备感知环境的能力。环境中的信号一般可以以文字、图片、视频、声音、光波等形式存在,这些信息需要被智能体编码(可以是智能体直接处理这些信息,比如多模态大模型;也可以是智能体利用工具对这些信息进行预处理,然后利用文本大模型进程处理)。智能体的感知能力类似人类的眼睛、耳朵、鼻子、嘴巴、手等感觉器官,通过这些感知能力,智能体才能更好地获取外界的信号,并对这些信号进行提取、分析,最终给出反馈。感知能力是智能体具备类人能力的基础,是非常重要的前提条件。人类是群体性动物,人类一切行为都具备一定的社会属性,每个人在社会中都扮演多个角色。智能体要实现人类的能力,也应该具备角色扮演能力。前面提到的ChatGPT可以看成是人类的帮手。我们还可以给ChatGPT设定角色,让他更好地解决该角色相关的问题。比如,你可以这样提问:你是一个法律专家,现在我有一个一个法律问题请你帮忙提供专业的解答。
有一家公司利用我出版的图书(我已经申请了著作权)内容制作商业课程,我可以告他侵权吗?要怎样计算给我造成的损失呢?
智能体在不同的场景具备不同的定位和能力,我们需要在具体的应用场景中赋予智能体一定的角色,这样才可以更好地模拟真实的场景并解决相关问题。比如在软件系统中,有产品经理、架构师、开发人员、测试人员等,我们可以利用多个智能体模拟这些角色。在交友互动过程中,智能体还可以呈现非常多的角色,甚至是具备某个特性的虚拟人物。比如高冷女神、霸道总裁、屈原等,图1-5就是豆包APP上提供的各种角色的智能体,角色种类非常丰富,并且你还可以创建自己专属的智能体。人类身体中最核心的器官非大脑莫属。人类强大的大脑赋予人类聪明才智,让人类在动物中脱颖而出,成为地球上最顶级的统治者。对于智能体来说,智能体也需要有大脑,目前智能体的最强大脑就是大模型(不必是大模型,普通的规则、策略、算法等也能作为智能体的大脑,只不过这样的智能体能力一般),大模型赋予智能体足够的智能,让智能体可以解决各种问题。智能中最重要的体现就是要具备思考、反思、规划的能力,这也是人类大脑的核心能力之一。大模型压缩了海量的世界知识,学习到了各类文本中的关系和范式,最终让大模型具备了让人类可感知的思考、反思、规划能力。这些能力体现在大模型可以对复杂问题进行分析、拆解,让问题更加简单,然后再逐一解决。有了这些能力的加持,大模型就可以赋能智能体,让智能体解决各种各样的问题。图1-5就是利用Kimi智能助手来解决一个复杂的算法题,它能够将这个问题抽象为抽屉原理,然后将这个问题拆解为子步骤逐一解决。