智能体与大模型有什么差异?什么是智能体?

在 AI 里,很多人其实并不清楚智能体到底是什么。

要理解智能体,可以先从大模型说起。大模型就像一个大脑,它的输入是一段文本,输出通常也是一段文本。也就是说,大模型本身主要负责理解、推理和生成内容,但并不具备直接执行现实动作的能力。

你可以把它想象成一个没有手脚的大脑。它能接收外界信息,也能给出思考结果,但它自己不能真正完成操作。

比如,你问它怎么做一个账号,它可以告诉你第一步、第二步、第三步分别要做什么。但这些步骤本身,仍然需要其他系统去执行。

智能体要解决的,就是这个问题。

简单说,大模型负责思考,智能体负责把思考连接到现实动作。

最简单的智能体:聊天智能体

最简单的智能体,可以理解为带搜索能力的聊天系统。

当用户输入一段话后,智能体会先处理用户输入。有的系统会提取关键词,有的系统会直接把整段问题提交给搜索引擎。搜索引擎返回一批结果后,智能体再把这些搜索结果和用户问题一起提交给大模型。

大模型基于这些信息,生成最终回复。

这个过程解决的是信息时效性问题。

大模型是基于训练数据得到的,它并不天然拥有最新信息。因此,聊天智能体通常会加入搜索能力,让模型可以获取当前的公开信息。

这样,一个基础聊天智能体就建立起来了。它不仅能聊天,还能借助外部搜索获得更新的信息。

智能体需要上下文管理

只有搜索还不够。

聊天体验里还有一个非常重要的问题:上下文。

如果你和一个大模型聊天,它不知道你之前说过什么,体验一定很差。因为你不可能每次都把过去所有信息重新说一遍。

但这不是大模型本身的错误。大模型没有天然的长期记忆能力。

因此,智能体通常需要一个关键模块:上下文管理。

当用户和智能体有历史聊天记录时,智能体会把过去的对话、当前输入、搜索结果等信息整理好,再一起提交给大模型。它还会通过提示词告诉大模型:哪一部分是搜索结果,哪一部分是历史记录,哪一部分是当前问题,以及应该如何组织这些信息。

搜索解决信息时效性问题。

上下文管理解决记忆连续性问题。

从聊天到画图:智能体开始调用工具

聊天智能体的输出本身就是文字,所以它和大模型的输出形式天然匹配。

但如果用户输入一句话,希望最后得到一张图,流程就不同了。

一个画图智能体会先接收用户输入,再结合历史记录和上下文信息,与大模型进行第一轮沟通。这一轮沟通的目标不是得到最终回答,而是让大模型生成适合绘图模型使用的提示词。

比如用户要调用豆包、阿里通义千问等绘图模型,智能体需要根据不同模型的特点,生成适合对应模型的提示词。因为普通用户往往不知道该怎么写提示词。

提示词生成之后,智能体再把它交给绘图模型,最终得到图片。

这里就涉及到了工具调用。

大模型不直接画图,但智能体可以让大模型生成绘图指令,再调用绘图工具完成任务。

写 Word 文档的智能体

再举一个写 Word 文档的例子。

大模型本身没有真正操作 Word 文档的能力。它可以生成文本,但不能直接创建、修改或保存.docx文件。

因此,一个写 Word 的智能体,需要调用插件或工具,比如 Pandoc,或者通过 Python 脚本生成文档。

它的大致过程是:

首先接收用户输入。

然后进行上下文管理,把用户需求、历史记录、相关资料整理好。

接着提交给大模型,让大模型返回特定格式的指令。

这些指令可以包括:创建文档、插入文字、删除段落、修改内容等。具体指令集合由开发者定义,并通过提示词告诉大模型:只能返回这些可执行指令。

文档智能体得到指令后,再调用对应脚本执行。比如创建 Word 文档、插入内容、删除内容、修改文档结构。

这个执行脚本本身,也是智能体的一部分。

Action、Tool、Skill,本质上都是智能体的能力

这里面的命名比较混乱。

有的地方叫action,有的地方叫tool,也有的地方叫skill。但本质上,它们都可以理解为智能体的动作或技能。

比如,一个智能体可以具备这些技能:

上网搜索。 查询数据库。 读取文件。 写入文件。 生成 PDF。 生成图片。 访问网站。 填写表单。 调用 Python 做数据分析。 调用统计库处理数据。

当我们不断给智能体添加技能,它能完成的任务范围就会扩大。

但技能多了之后,又会出现一个新问题:编排。

智能体的关键能力:任务编排

比如一个编程智能体,如果接到一个开发任务,它需要先查看当前项目文件,再理解需求,然后规划修改路径。

它需要先读取文件,再编辑已有文件,再创建新文件,最后做格式校验和结果检查。

这里面不是单个动作,而是一整套流程。

所以,智能体不只是调用工具,还要决定:

先做什么。 后做什么。 什么时候读取信息。 什么时候执行修改。 什么时候检查结果。 如果执行失败,下一步怎么办。

这就是任务编排。

不同大模型之间的能力差异,很多时候就体现在这里。为什么有时候会说国外的大模型在某些智能体任务上更强?很重要的一点,就是它们在复杂任务编排上的表现更好。

智能体可以循环执行任务

智能体的执行过程不一定只跑一轮。

它可以先根据用户输入、上下文、知识库和可用技能,生成一轮执行计划。执行之后,它会得到反馈。然后再把执行结果、反馈信息和过去的上下文重新交给大模型,让大模型继续判断下一步怎么做。

所以,一个任务可以一轮完成,也可以多轮完成。

简单智能体只负责聊天。

复杂智能体则需要动态任务编排,并且能够根据反馈不断调整下一步动作。

企业知识库与长期记忆

前面提到的搜索,主要是从互联网上获取公开知识。

但对于企业来说,很多知识并不在互联网上。比如企业内部文档、产品资料、项目资料、日常话术、流程规范,这些都不是公开搜索可以得到的。

所以企业通常会搭建自己的内部知识库。

智能体可以从企业知识库中检索信息,再把这些信息和用户问题、历史上下文一起提交给大模型。这样,大模型就能理解这家企业的产品、业务和内部表达方式。

对于个人来说,也可以搭建自己的私有知识库。

知识库在某种意义上,也可以看成长期记忆系统。

一个完整智能体的大致结构

到这里,一个智能体的框架就比较完整了。

首先是知识库,或者说长期记忆系统。

其次是上下文管理。它决定在提交给大模型之前,需要收集哪些信息,比如聊天历史、上一轮任务执行结果、相关文档、图片上下文等。

然后是核心大模型。它负责理解、推理、规划和生成下一步指令。

再之后是执行组件。它根据大模型返回的结果,调用对应工具或技能完成动作。

对于简单任务,一轮就可以结束。对于复杂任务,还需要把执行反馈重新交给大模型,继续下一轮编排。

此外,还会有技能管理系统。它负责管理智能体具备哪些技能,以及在什么情况下应该调用哪些技能。

不同智能体的差异在哪里

不同智能体之间的差异,主要体现在几个方面。

第一是上下文管理能力。

如果你和一个智能体聊了很久,它会积累大量历史信息。但这些上下文不可能全部丢给大模型,因为会消耗大量 token,甚至超过模型的上下文限制。

好的智能体可以对上下文进行压缩,并尽量保留关键信息。差的智能体一压缩,原来的重要信息就丢了。

所以,上下文压缩和上下文管理,是智能体能力差异的重要来源。

第二是知识命中能力。

有些智能体只是基于关键词匹配知识,有些会基于向量匹配,还有一些会进一步结合关联、联想和背景信息,把相关知识以及知识背后的上下文一起抽取出来。

这会直接影响回答的准确性。

第三是技能选择能力。

当一个智能体拥有大量技能时,如果一次性把所有技能都交给大模型,也会形成巨大的上下文消耗。

所以有些产品会先做前置筛选。比如根据任务内容,先用一个小模型选出最相关的几个技能,再把这些技能交给大模型去编排。

这样既能节约算力和 token 成本,也能提升速度。

总结

所以,大模型和智能体的区别可以这样理解:

大模型是一个纯粹的大脑。

它会思考,但自己什么都做不了。

智能体则是在大模型这个大脑之外,加上知识库、长期记忆、上下文管理、工具调用、技能管理、任务编排和执行反馈。

它利用大模型的能力,去完成现实中的任务。

不同智能体之间的差异,就体现在它是否能更好地管理上下文,是否能更准确地命中知识,是否能更低成本地选择技能,是否能更有效地完成任务编排。

所以,选择一个智能体,不只是看它背后用了哪个大模型,还要看它围绕大模型搭建了怎样的执行系统。