微信扫码
添加专属顾问
我要投稿
冯·诺依曼架构如何启发构建通用智能Agent,从计算机历史看人工智能未来。核心内容:1. 冯·诺依曼架构与层级架构的对比分析2. 通用Agent构建中的“存储程序”原则3. 现代Agent的“可编程性”与挑战
❝喜欢阅读,写作和摄影的「coder」
❞
最近在实现类似Manus系统的时候有一种无力感,之前已经尝试过多agent架构和现在的模块化的agent loop模式。
但总是有种哪里不对劲的地方,这个感觉很微妙,目前所接触到的思路似乎都没有触及到一些更深层次的东西。
晚上躺在床上,忽然灵感闪现,是否现在的agent状况和冯诺依曼架构出现之前的计算机的境况类似呢?从《万物原理》一书又能对当前的agent有何启示,我在考虑这个问题。
想象一下,在二战前后,人类发明了第一批真正意义上的电子计算机。它们庞大、昂贵,功能强大,比如用来计算弹道、破解密码。它们是那个时代的“智能”巅峰。
但有个巨大的问题:它们是“专用”的。
比如著名的ENIAC,你要让它执行不同的计算任务?对不起,得像电话总机小姐一样,拔掉成百上千根电缆,重新插线,调整物理开关。
改个程序,几乎等同于重新设计一遍硬件。这就好比今天的Agent,你为写文章设计了一个,为写代码又设计了一个,它们的能力被“硬编码”在了特定的结构和流程里,彼此之间难以复用和迁移。
那是一个“硬件定义功能”的时代,是一个“程序与数据分离”的时代。机器固然能干,但缺乏一种根本性的、普适的通用能力。
直到一位天才科学家——约翰·冯·诺依曼——带来了革命性的思想。
冯·诺依曼天才地提出了“存储程序”的概念。他设想,将计算机的“指令”(也就是程序)和要处理的“数据”一起,都存放在同一个内存空间里。
这听起来简单,但意义非凡。
这意味着,计算机不再需要通过物理线路的改变来切换功能。只需要加载不同的“程序”,同一个硬件就可以摇身一变,从弹道计算器变成会计机,再变成游戏机。
程序本身可以像数据一样被读写、修改、甚至由计算机自己生成!
这就是我们今天所有现代计算机的基石——冯·诺依曼架构。它赋予了计算机前所未有的通用性、灵活性和可编程性。
可以说,是“存储程序”原则,让计算从“专用设备”变成了“通用工具”,并最终孕育出了软件、操作系统、互联网,乃至于我们今天讨论的AI。
「这对Agent意味着什么?」
对于构建Agent而言,冯·诺依曼架构的启示是:一个真正通用的Agent,需要一个像冯·诺依曼机器那样的“通用执行引擎”。
它不能仅仅是一堆固定功能的工具打包,而必须能够根据接收到的“指令”、“计划”甚至“目标”,灵活地加载和执行各种各样的操作或“行为程序”。Agent需要具备基础的“可编程性”。
现在的很多Agent,特别是基于大型语言模型的,某种程度上已经具备了加载和执行工具(API调用、函数执行)的能力,这可以看作是具备了执行“程序”的基础。
但问题在于,它们的“程序”——那些复杂的任务流程、工具选择逻辑、Prompt中的指令链——往往还是相对固定的,或者说,是“外在”赋予的,而不是Agent自身能够深刻理解、反思,甚至“修改”的。
这就像回到了冯·诺依曼之前:计算机能执行程序,但程序本身是死的,是人为“插”进去的,不能在运行时根据情况动态地、本质地改变自身的执行逻辑。
拥有一个强大的执行引擎固然重要,但就像一颗强劲的心脏,它只是基础。要实现真正的通用智能,Agent还需要更复杂的组织、协调与更深刻的“自我认知”。
「当前的Agent之困:智能,但不“通用”且不“自主”」
所以,我们看到了现在Agent的普遍困境:它们很“智能”——在特定任务上能表现出令人惊叹的能力;但它们不够“通用”——换个领域或稍作偏离,就可能束手无策;它们尤其不够“自主”——无法真正理解自身行为的逻辑,更谈不上去修改或优化它。
它们大多是“流程驱动的工具组合体”,其行为逻辑写死在代码、规则集或复杂的Prompt模板里。就像ENIAC的电缆一样,虽然复杂精巧,但缺乏根本的柔韧性。
它们缺少什么?
换句话说,它们不能像一个冯·诺依曼机器那样,将自身的“行为程序”像数据一样对待,进行读取、分析、修改和生成。它们还不是真正意义上的“可自编程”的智能体。
那么,除了冯·诺依曼提供的“通用执行”基础,我们还能从哪里寻找构建通用智能的启示呢?或许,我们应该将目光投向另一个更古老、更精妙的“智能”系统——自然界本身。
「强烈推荐《万物原理》一书。」
「第二块基石:自然界的层级化架构」
看看大自然,看看我们自己。
生命从分子构成细胞,细胞构成组织,组织构成器官,器官构成系统,最终构成了复杂的人体。
大脑有负责基本生理需求的脑干、负责情绪的边缘系统、以及负责高级认知和理性的皮层。
复杂的生态系统中,有生产者、消费者、分解者,物种之间形成复杂的食物链和网络。
这些系统无一例外地呈现出一种“层级化”的组织结构。而且,这种层级结构不是随意形成的,它蕴含着深刻的智慧:
这种层级化结构,为构建复杂系统提供了优雅的组织原则和效率保障。它是一种关于宏观组织和复杂性管理的智慧。
「这对Agent意味着什么?」
将这种自然界的层级思想应用于Agent设计,带来了极其重要的启示:
一个理想的Agent,或许应该像大脑一样,拥有清晰的层级结构。底层处理基础感知和动作,中间层处理技能和局部规划,高层处理全局目标和策略。信息在这些层级间流动、抽象、决策。
将冯·诺依曼架构视为每个层级内部或整个Agent的“执行引擎”,而层级化架构则定义了这些引擎如何组织、如何协同、数据如何在不同抽象层次上流转。一个既能灵活执行,又有良好组织结构的Agent,才能更好地应对复杂多变的世界。
我们之前提到的Manus Agent等尝试,虽然引入了模块和规则,但与自然界那种深度、多尺度的层级化相比,其信息处理和决策过程的层级抽象还不够清晰,更像是在一个相对扁平的结构上调用工具和规则。这促使我们思考:构成这些“工具”和“规则”的底层,真的足够“底层”和“通用”吗?
「第三块基石:细胞级的原子性」
这是最令人深思,甚至可能最具颠覆性的一个视角。
如果连“读写文件”、“执行命令”这样的Agent工具,相对于生物体中“细胞”级别的原子性都显得“高层次”,那么构成真正通用Agent的“终极基本单元”到底应该是什么?
人类如此复杂的生命体,其最底层不过是几百种不同类型的细胞。单个细胞的功能相对有限——代谢、分裂、响应信号。但正是这些功能有限的“原子”,通过惊人的数量、分化、组织和协作,构建出了具有无穷复杂性和功能的组织、器官和整个生命。
这是一种从极简到极繁、从原子到宏观的“涌现”。
这为构建通用Agent带来了第三块,也可能是最底层的基石启示:我们需要更细粒度的“原子基元”(Atomic Primitives)。
如果我们将当前Agent的工具(如 file_write, search)比作生物体的“器官”或“组织”,那么这些“器官”或“组织”本身是由更底层的“细胞”级操作构成的。一个真正具备通用性的Agent,其最底层的“原子工具”或者说“认知基元”,或许应该更接近于:
拥有这些极其细粒度的原子操作,理论上我们就可以像自然界用细胞构建万物一样,组合出任何复杂的感知、认知和行为。这带来的深刻启示包括:
当前Agent工具的“高层次性”,意味着其通用性和适应性受限于预设的工具集。当遇到现有工具无法覆盖的全新场景时,其应变能力可能会大打折扣。而“细胞级”原子性,则指向了构建真正开放、自适应智能体所需的底层构造能力——像细胞一样,能够分化、组织,构建出任何所需的“组织”或“器官”。
「将三者融为一体:通向未来的架构猜想」
现在,让我们尝试将这三重启示——冯·诺依曼架构提供的强大「执行基础」(关于机器如何运行指令),自然界层级化提供的优雅「组织结构」(关于复杂系统如何分层管理信息与控制),以及“细胞级”原子性提供的终极「构建单元」(关于一切高级功能由何种最基本元素构成)——融为一体。或许,我们能窥见未来通用Agent架构的一个可能轮廓:
包含一套极其通用、细粒度的感知、动作和内部操作基元。它们是构成一切“认知”和“行为”的“原子”,由冯·诺依曼式的通用执行引擎驱动。这一层提供了Agent与物理或数字世界进行最底层交互的能力,以及进行基本内部计算的能力。
在原子层之上,通过学习和动态组合,涌现或构建出各种更高级的“模块”、“技能”或局部的“规划器”。这些中间层的构建本身也是动态适应的过程。
例如,由一系列基本动作基元组合成一个“文件写入”技能,由一系列感知基元和内部处理基元组合成一个“图像识别”模块。这些模块负责处理特定类型的任务或信息流,并与邻近层进行主要沟通。它们构成了Agent能力的核心库,但这库不是固定的,而是可以动态增长和重组的。
这是Agent的“大脑皮层”,负责理解高层意图和目标,进行长期的、全局性的规划,协调中间层模块的工作,以及进行自我反思和学习。它接收从中间层抽象提炼后的关键信息,并发出高层指令影响下层行为。
更重要的是,这一层需要具备将自身的“目标”、“计划”、“经验”甚至“行为逻辑”像数据一样对待的能力——就像冯·诺依曼架构对待程序那样。这意味着它能够反思过去的执行过程(程序轨迹),从成功和失败中学习,并基于这些学习动态地修改中间层模块的组合方式,甚至调整自身的规划策略(修改自身的“程序”)。
少数关键的跨层通信通道连接着最高层与底层,以应对突发情况和实现高效控制,比如一个高层设定的紧急目标可以直接触发底层的一系列快速反应基元组合。
这样一个架构,既有强大的底层执行能力(冯·诺依曼),又有清晰高效的组织结构(层级化),其通用性和适应性则来源于最底层基元的灵活组合(原子性)以及最高层对组合的学习、控制与「自我修改」(冯·诺依曼“程序即数据”的深层应用)。
但是我不确定现阶段是否适合去走这样一个思路去构建agent,因为这里面有些细节可能是需要LLM本身的进步(比如自主决定是否更深度推理,自主决定深度推理的成本),而不是靠agent工程上的优化。
但我觉得这是一个构建通用agent可能的路子。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-02-04
2025-02-04
2024-09-18
2024-07-11
2024-07-09
2024-07-11
2024-07-26
2025-02-05
2025-01-27
2025-02-01