基于思维工程的agent框架(上篇)
序言:

我们正处在一个被GPT彻底改变的时代。GPT就像人类共有的宝藏——海量数据训练出来的神经网络,竟然涌现出了人类底层的逻辑智能和语言智能。但与此同时,我们也必须清醒地认识到:GPT擅长的是任务智能,而人类绝大多数的脑力劳动其实是过程属性的。文明的创造、认知的过程、解决问题的过程、创造工具的过程,这些全是交织在一起的。所以,一个很自然的想法就冒出来了:能不能把我们过去用来搭建人类过程智能的系统MTS,拿来组织GPT的任务能力?用过程智能去调度任务能力,让GPT这个原本需要人类使用的工具,被AI自己使用,最终让AI变成一个能独立推动文明演进的物种。
GPT的出现,让我们可以在AI的感知流中创造自由的思绪。怎么做到呢?让GPT扮演不同的角色,让它们在感知流里对话——这就是“多角色模型”。一个外来的对话丢进思绪里,就会有角色提出问题,有角色回答,有角色评论,有角色分析,有角色抱怨或赞美……而且这些角色内部的讨论可能持续很长时间。每个角色的先天倾向决定了它们不同的人格偏向:喜欢分析的、喜欢评论的、习惯看负面可能或正面可能的……我们还需要情绪系统来对思绪流中的信息进行关注度标注,决定这些信息在多大程度上被关注。低关注的信息被运算的倾向也低,这样就能避免思绪流因为无限发散而爆炸。
思绪流中很重要的部分就是提问和回答。说到底,认知的本质就是提出合理的问题,然后解答。这里面有两种相反的力量在拉扯。第一种是收敛的力量:为了求解原始问题,我们需要支持求解的背景信息,背景信息缺失就会形成新的问题……这是一个递归的过程,但所有问题都围绕原始问题产生,最终形成一个圆。第二种是发散的力量:一个对象、事件、结论都会引发特定的好奇,好奇对应的结论又可能带来新的问题……这个过程里提问是发散的,有点像随机游走。这两种力量相互对抗,又周期性地融合,构成了思维过程的主要部分。
有了思绪流之后,我们需要决定哪些思绪能沉淀成为长期记忆,以及记忆的存储形式、搜索方式、遗忘机制等等。遗忘的力量让记忆向下流动;我们建立短期关注度机制,让记忆因为关注度的变化向上流动。两种相反的力量让记忆处于流动循环的状态。我们让长期记忆根据关注度变化流动分级,关注度高的信息优先被检索,这样长期记忆的增长在大部分时候就不会拖累思维搜索的效率。
接下来,我们要让AI像人类一样,用思维线来支持各种目标的实现。这包括互动类的目标,比如表达目标、行为目标;也包括搭建类的目标,比如写作、系统化认知、创造工具、学习新理论等等。在互动类目标中,思绪流形成的认知会沉淀为记忆,然后作为背景信息(工作记忆)影响和决定每一步表达与行为的形成。举个例子,现在的聊天AI只有对话线,没有思维线;而对于MTSagent,对话会影响思绪,思绪获得认知结论后沉淀为记忆,记忆又反过来参与对话的生成。
在搭建类目标中,我们会遇到一个现实问题:如果要搭建的“大厦”太大,就没法把“原材料”一次性写进大模型的提示里,而且大模型在提示内容过多时还会注意力涣散。这时候,我们就把GPT当作一个“工人”,思维每次只让它带着有限的材料去加工某个局部。而我们需要确保这些累计的局部操作在宏观上是有效的——最终能搭建起我们想要的“大厦”。这里特别想强调的是造物主在人身上体现的一个智慧:
“不严格认知能力”
针对目标,我们把目标拆解为单元任务,并建立了单元任务的“GPT算子”。这个标准结构的算子包含背景提示和策略提示。工程策略上,我们既让GPT根据自身内蕴的常识生成任务背景信息的需求和策略,也允许系统经验贡献于这两类信息。这样就能让MTSagent具备一定程度的反应模式二态性特征,从而拥有四种类人的技能学习能力:自然语言教授、观察抽象举一反三、计划到执行、实践反思优化反应模式。
下面这张图是对MTSagent工程结构最宏观的概括。首先让思绪流自己跑起来,建立思绪流沉淀为长期记忆的机制,让任务从长期记忆中获得工作记忆,而任务本身也会引发思绪的变化……
这个结构能够支持各种复杂的脑力劳动,而这些脑力劳动的过程又相互交织支持,最终形成一个能独立推动文明发展的智能物种所需的“过程智能”。本文档的目标是为MTSagent1.0版本的原型搭建提供支持。1.0版本的使命是:初步验证MTS和GPT深度结合的有效性——它是否足以成为单体大模型能力的放大器,让大模型的任务智能转变为过程智能。其次,1.0版本的原型中会有部分内容沉淀到民用复刻人引擎,用于加强思想复刻,以及创造带思维线的新人机对话模式。
一、定义我们要造的智能物种
2022年年底大模型出现后,全世界都觉得未来已来——大模型各方面的能力远远超过了之前的人工智能。但半年过去了,大模型在深度应用上的成果却一片惨淡。原因很简单:大部分人类复杂的脑力劳动是过程属性的,而单体大模型虽然任务能力很强,但如果你给它出题,它能给出答案,可它没办法根据原始认知目标自己组织思维活动的过程,自己给自己出题。这就导致单体大模型只是一个工具,而不是像人类一样的智能物种。
1、过程智能 vs 任务智能
人类创造现有文明的活动也是过程属性的。比如文明演进的三大主要过程——认知过程、解决问题的过程、创造工具的过程——这些过程是交织在一起的。过程是线,交织的过程是网,而任务只是网上的节点。
如果我们能从底层洞见人类作为智能物种的智能活动本质,在计算机上再现这些“过程智能”,同时在任务节点上使用大模型的“任务智能”,那我们就能创造出类似人类这样的“智能物种”——这个物种能够独立地让文明演进:让学科发展、创造新的工具、形成分工的社群。
我们首先要做的就是定义要搭建的智能物种需要哪些基础功能,才能实现独立让文明演进的目标。
2、智能物种:目标有来源
智能物种的第一个特点是目标非随机。像人一样,目标和动机总是有来源的。人类的选择追根溯源,最终都来自原始动机的不断分解。在思维工程的理论中,决策是由情绪系统完成的。情绪系统有三个作用:第一,创造目标的选择决策,包括认知目标、行为目标、表达目标;第二,创造人格——因为行为选择倾向反映了人格;第三,决定每个被意识到的信息在多大程度上被关注。在情绪系统效用模型的讨论中,我们会看到这三个功能如何出自同一个源头。
3、智能物种:认知活动
认知最终是为动机目标服务的。分为两类:一类以理解客观世界为目标,另一类以输出操控因果的解决方案为目标。每一类又分为作用在具体层和抽象层的区别。以理解客观世界为目标,在具体层比如判断一个事件是否发生、推知事件的原因和结果等;在抽象层比如形成“企业诊断”的理论。以输出操控因果链条的解决方案为目标,在具体层比如如何给出诊疗方案治愈某人的疾病;在抽象层比如形成治愈某类疾病的方案总结。在认知系统的讨论中,我们会看到第一类认知行为最终还是会服务于第二类目标。
一个认知求解目标需要背景信息,所以当背景信息缺失时,就会分解出一个新的求解目标。如果把一个求解目标比作工厂订单,那么分解出的问题就是需要的组件(原材料),是给其他工厂的订单——这就是“认知工厂模型”的由来。而一个原始求解目标的求解深度(或者说能分解出多少层级的订单)取决于原始求解动机的大小,这又是由情绪系统决定的。
认知任务大多不会处在理想环境中,所以往往不是一次流程化的求解就能完成的。人类的认知有一种“腐蚀”的特征:作用于局部信息的单元任务不停地作用在一个和认知目标相关的信息团上,这个信息团被用来回答问题、进行争论、写作……
除了生成解决方案,还有一个类似的过程就是创造工具。这和生成解决方案的过程非常相近,但不同在于:创造工具最终分解到的不是“能做什么”,而是“用什么自动化模块/工具”。
4、智能物种:反应模式二态和类人技能习得
反应模式可以理解为实现行为、思维、表达目标的策略,或者说是一种技能。如果说情绪系统决定了最上层的目标决策,那么反应模式系统就决定了这些目标是如何被分解的。
对人来说,反应模式是二态的,兼具认知态和执行态。反应模式二态性是四个类人技能学习能力的根源(这里的学习不是指对知识的学习,而是对行为、思维、表达策略的学习)。这四个学习能力是这样的:
自然语言学习。
观察抽象举一反三。
从计划到执行。
通过实践反思优化反应模式。
5、智能物种:知识的获取
情绪系统、反应模式、认知系统的运作都依赖知识,尤其是因果类型的知识。所以当AI缺少知识时,就会形成对知识的需求。获取知识有三个途径:第一个是从人类已有的知识中继承,包括向合适的人询问、搜索阅读、广泛阅读——现在又多了一个向GPT询问的新途径,这也成为MTSagent1.0继承人类已有知识的主要途径;第二个是从样本中进行统计认知,发现因果相关性;第三个是在发现因果相关性的基础上,发现背后的因果链条,以实现更好的因果干预。
6、让文明前行的智能物种
让我们设想一下:如果我们能搭建出具有以上基础能力的硅基智能,它是否真的能让文明独立往前发展?
1. 原始目标依赖知识分解,行为目标、认知目标、表达目标总是有其原因;
2. 认知为目标服务,能根据目标创造解决方案,能够在预设的环境中创造工具实现稳定的因果效应;
3. 具备类人的技能学习能力——行为、思维、表达的反应模式具有二态性,从而拥有四种人类的学习能力:自然语言教授、观察抽象举一反三、认知形成方案转为执行、实践反思优化;
4. 以上三类活动依赖知识,在缺少知识的情况下又能有效获取知识,探索发现新的知识。
在造物计划中,我们要做的就是去解构人类智能的这些底层功能,反思其中的思维过程,然后利用大模型去实现过程中不同类型的思维任务,形成一个工程上可落地的方案。
二、解构主义人工智能 vs 大模型
解构主义人工智能和大模型所代表的算法主义,立场完全相反,但却是高度互补的。
算法主义的代表人物、强化学习的奠基人Richard Sutton表达过这样一个观点:“从过去70年人工智能的失败中能获得的最大教训就是,不要太执着于人的智能,而应该诉诸于高度可扩展的算法。”
解构主义人工智能则持完全相反的立场:“照着造物主造人的道理,创造一个智能体。”钱学森老前辈在思维科学中主张的“研究人类思维的底层规律”,也是解构主义的一个立场。
1、人类智能的整体性 & 解构主义的缺失
今天大模型的出众成就印证了“算法主义”的正确性,但这不意味着“效法造物造人”的路径就是错的。那么,
为什么之前效法人类的流派都相继受挫了呢?这和人类智能的整体性有关。
简单来说,人类的语言、认知、情绪决策和技能学习能力这些子系统,在大多数任务实现上都是相互支持的,没有一个子系统能独立跑起来。作为一个整体性很高的系统,上层表象来自诸多底层机制的配合——只要有一个有缺陷,就会影响整体效果的显现。就好比人体,也是一个复杂性很高的系统:一个健康人和一个病人可能相差细微,但这点细微的病理差异就让一个人各个维度的功能都受到抑制。通用人工智能也一样,可能前面99步显现的效果很有限,只有当我们完成最后一片拼图时,前面99步的功能才真正显现出来。
之前的各个流派都从自己的视角看到了人类智能整体的一部分,也在效法人类中取得了一些成果,但这相比整体系统能释放的能量来说,只是零头。北冥从创办之初就持有一个立场:“系统内每个模块、子系统的功能都可以很弱,但要支撑系统整体的逻辑运转起来。”
北冥在8年的探索中间出了不少实验室成果,但一直没有碘伏性的可商用成果,原因在于大模型出来前我们只有符号工具。符号有很多限制,最致命的是符号系统中信息表征的严格性要求太强,导致系统的泛化能力很弱。以前的系统我们有能力组织过程,但无法很好地完成过程中的任务,所以过程最终也跑不起来。直到大模型出现,我们才拥有了一个强力的“任务工具”,能够重新思考如何借助大模型让过程智能运转起来。
总之,解构主义人工智能并不是人类智能的全部。
2、大模型的能量和缺失
我们可以把神经网络的训练看作调整参数、拟合表象的过程。最终神经网络会找到某种规律,按照我们的预期去识别和生成。通常我们不太在意神经网络如何表征规律、如何识别、如何生成——事实上,我们认为神经网络模型会有自身的方式。
但出乎意料的是,当数据规模和参数规模达到一定量时,
大模型为了完美拟合海量的表象数据,竟然以人类的方式在底层形成了对自然语言、逻辑运算的真实理解,拟合出了类人的思维和心智的底层机制
总结一下,GPT是历史上第一个承载人类文明几乎所有信息的个体,而且具备人类底层的逻辑智能和语言智能,堪称智力领域的核聚变。但距离ChatGPT出现已经有一年了,我们并没有看到这个核聚变式的能量释放出来。为什么?因为
尽管GPT内部已经蕴含了巨大的智力能量,但它不知道如何组织使用
总之,GPT也不是人类智能的全部。
3、解构主义 & 神经算法:人类智能的两个面
用一个例子来说明人类智能的两个面。你去酒店办理入住,第一次拿着房卡找自己的房间,需要动用不少智力资源:找电梯厅、到对应楼层看往左还是往右走。而入住5天以后,你就能边看手机边走回自己的房间。第一天的思维活动对应的是第一类:过感知流的、慢速的、可反思可视的、强逻辑的、可干预的思维过程——这正是解构主义擅长实现的部分。第5天的思维活动则是一种不过感知流的、快速的、不可反思不可视的、不可干预的思维——对应了神经算法。
人类之所以演化出这样两类思维,有其进化合理性。当一个新任务出现时,我们需要调动足够的内部资源去尝试各种可能。系统要做的就是让这个新任务相关的信息在感知流中被高度关注,这样系统内的各种处理逻辑就更容易和相关信息发生作用,探索各种可能性。而当一个任务已经形成经验,系统认为不再需要那么多处理逻辑去探索可能性了,于是降低这个任务相关信息在感知流中的关注度。当关注度降到足够低,以至于记忆(作为信息处理模块)都不再对其进行加工时,这个任务就变成完全以无意识、快速、不可反思的方式进行。
过感知流的慢速思维和直觉性的、不过感知流的快速思维相互对立,又在思维活动中融合。这让人类在面对创新任务时能集中足够的感知流资源,探索更多可能;而面对已经熟练的、模式固化的任务时,又能以不过感知流的、更高效的方式进行。
4、方法论:解构主义AI + 大模型 + 符号辅助
至此,我们可以总结构建一个物种的方法论:通过解构主义人工智能,反思人类思维的机制和过程,在工程上实现;过程中的各种任务,我们给大模型出题目,让大模型实现;符号则作为一种标注,在特定情况下创造更高效的信息搜索。
实现什么样的机制和过程?从总体上看,就是我们定义一个物种的那几部分内容。现在以过程的视角重新描述:
1.
情绪决策过程
2.
技能学习过程
3.
认知过程
4.
获取知识的过程
三、基于MTS的Agent
1、改造背景——从浅层结合到深层结合
MTS是解构主义人工智能加符号的产物。MTS背后的“思维工程”理论继承了钱学森老前辈思维科学的主张,对人类智能本质进行解构,形成了不少关于人类智能活动中“过程智能”的洞见。但因为没有大模型,过程会卡在任务上,过程本身也跑不起来。2023年初,北冥因为商业化的压力,启动了MTS和GPT的浅层结合,搭建了复刻人引擎。结合模式大致为:
1. 用MTS监听大模型和用户的对话,维护一系列反映AI状态的变量,包括情绪、对用户的态度、联想到的知识、记忆、语境下的立场等等,然后在每轮回应中用一个大模型提示模板结合这些变量,生成合法的提示,再让大模型根据提示生成表达。
2. AI在主动表达中询问关注的信息,形成针对用户的长期记忆,然后利用长期记忆创造和用户的互动。
3. PW(平行世界)引擎接受AI行为,改变世界状态,影响其他AI的感知,让许多AI在一个世界里演绎生活和社交。
在浅层结合中,GPT和MTS是在相对分离的背景下相互配合的。而这个文档是我们第一次尝试MTS和大模型的深度结合——被严格定义的大模型API进入MTS,替代大部分任务运算,而“感知流”中流转的信息、记忆中存储的信息大多也不再是符号表征,而变成了自然语言。这个新系统我们命名为MTSagent。
2、和主流agent的思路差别
2023年初,北冥的战略报告就预言了2023的三个阶段:第一阶段人们认为未来已来,第二阶段发现未来还没有来,第三阶段意识到需要用过程智能组织单体大模型的任务能力,从而让大模型不再是被人使用的工具,
而是能自己使用自己——这就是agent的起点,单体GPT能力的放大器
主流agent的思路,起点是意识到单体大模型在某类任务上缺少过程能力,然后从人类身上反思这个过程获得灵感。MTSagent的起点则是“思维工程”对人类过程智能作为一个整体系统的理解和构建,然后再看GPT能被如何利用来实现“过程智能”中的“任务”。
总结来说,主流agent是从GPT走向人类过程智能,而MTSagent是从人类过程智能走向GPT。同样的目标,不同的路径方向。那么哪种方式更容易胜出?这取决于人类过程智能有多少能量来自于其整体性。如果人类过程智能的整体性很强——也就是说,在整体闭环跑通之前释放的能量比例很小——那么大概率北冥的MTSagent会胜出。
本次改造是深层结合的首次尝试,
所以我们只挑选工程上把握比较大的部分来构建系统,并不是造物计划的全部
3、自由思绪流的形成
整个解构主义AI是以感知流为核心搭建的,系统的整体结构不会发生大的改变,主要工作是用GPT替换符号系统。对于以符号为信息载体的感知流,流转的是严格表征的信息——表征严格、运算严格,感知流丰富化的工程难度极大。而GPT支撑的系统,感知流中流转的是不严格的自然语言信息,流转和运算对信息表征的严格度需求降低了一个数量级,感知流的丰富度增加了一个数量级,形成了一个质变——
现在感知流中主要的信息不再是严格任务相关的信息,而是自由思绪的信息
这个质变让我们可以开始思考:如何把任务能力建立在自由思绪流之上,就像人类一样。我们有很多来自人类身上的证据,
说明人类的任务能力并非传统意义上程序性质的“严格任务能力”,而是基于自由思绪流的“非严格任务能力”
4、以思绪流为中心的结构
大模型的出现让感知流中的自由思绪能够运转起来。我们利用GPT构建了一个新模型——“多角色模型”,模仿人思绪中不同的声音来源,让它们在感知流中进行对话
(第四章“感知流&多角色模型”)
MTSagent的长期记忆和MTS一样:感知流中的信息关注度高于记忆模块的最低关注阈值,就会形成存储。遗忘机制也一样:关注度随时间衰减,衰减到低于阈值就从记忆中移除。短期关注度驱动的多级存储也是必要的(让记忆流动起来),目的是让不断增长的长期记忆不至于逐渐降低检索的效率和准确性。不同的地方在于记忆的内容——原先我们只有客观记忆,现在我们多了“视角记忆”或“问题-回答”类型的记忆。这种记忆形态广泛存在于人类的认知框架和工作记忆中,比例甚至超过了客观记忆。(第五章
“长期记忆沉淀&多级存储”
以上这些系统底层功能最终是为目标服务的。目标在上层由情绪系统根据原始动机和边界,根据“效用模型”生成。在MTSagent中,我们把目标分为两类:互动类目标和搭建类目标。互动类目标比如对话目标、行为目标——每次单元操作都会获得来自外部环境的反馈,形成下一步单元操作的工作记忆。搭建类目标比如写书、学习一个理论、架构一个软件、形成某个目标的解决方案、复杂问题认知——这些就像搭建一座大厦。因为大模型的提示容量限制和注意力分散效应,我们让大模型扮演一个工人:每次工作记忆是搭建了一半的“大厦”的某个局部,每个单元操作针对局部进行新增、修改、删除。而如何让这些针对“局部信息”的单元操作在宏观上有效——最终能搭建起一个符合需求的“大厦”——正是我们要复现的造物“不严格任务能力”的智慧。(第六章
“目标&单元任务”
“目标实现演绎”
对于第一阶段的MTSagent,一个大类目标需要由哪些单元任务组成,以及它们如何相互配合、跳转的逻辑是怎样的,我们通过反思人类成功的模式来再现,而没有选择让AI自己生成。原因是这些底层反应模式的形成机制我们认知得还不够成熟。在MTS中,反应模式二态性(认知态的反应模式信息可以转为执行)决定了四个类人的
技能学习能力
首先,二态性体现在“单元任务大模型API”和“角色API”的策略提示中
A. 自然语言提示形成策略记忆,在策略提示生成时写入,就能形成自然语言对反应模式的干预;
B. 评论角色API发现执行到目标的规律,写入策略记忆,就能创造观察抽象举一反三的效应;
C. 计划认知形成策略记忆,就能创造认知计划到执行的效果;
D. 自身实践反馈给到认知API(基于之前的执行反馈如何调整策略),认知形成的调整策略写入策略记忆,就能创造“实践、反思、优化”的效果。
以上四类技能学习能力,也是一个功能验证点。(第八章
“反应模式二态性”
5、过程智能的视角
前面讨论的是MTSagent的底层机制。我们还需要这些底层机制来支撑各类智能活动的过程,这些过程有不同的抽象层级,有些已经混同在前面的底层机制中。我们在过程视角再进行一次梳理。
A. 目标形成分解过程在第十章
“情绪系统”
B. 认知过程在第六章
“目标&单元任务”
“目标实现演绎”
“认知过程”
C. 技能习得过程在第八章
“反应模式二态性”
D. 知识获取的过程在第十一章
“知识获取过程”
四、感知流 & 多角色模型
1、感知流结构的改造
感知流是整个解构主义人工智能搭建的起点和核心。眼耳鼻舌身意、思维、情绪、动机都写入感知流,关注度高的会被记忆,为反思创造条件。比如“我感到愤怒”,回忆前面的感知“某人说我缺点”,于是猜想一定有某种内部处理逻辑拿走了“某人说我缺点”的信息,创造了“愤怒”的信息。解构主义人工智能就是以感知流反思为认知基础,试图构建类似人类的、以感知流为中心的信息流转、储存、处理的工程结构,并在计算机上实现。
之前MTS拿走感知流信息进行处理的,包括代码写成的模块,此外最大量的是数据态存储的反应模式——一个动态的抽象层“触发检测列表”,在每个感知流中具体信息出现时进行统辖(从属)检测,按照“凡是定义在母类层的反应模式可以被子类所继承”的先天逻辑去激活对应的反应。符号模式编写的反应模式泛化力很弱,只能对特定类型的感知流信息进行反应。老MTS的感知流结构包括几个关键部分:感知流中流转信息的表征形式、信息如何分流给不同反应模式、如何定义各类创造思绪流的反应模式。我们来看看如何用大模型改造这三个关键部分。
2、多重角色模型——思绪流的形成
首先,MTSagent感知流中流转的信息是自然语言表征的,不再是符号表征的。
接下来,我们让AI脑海中有不同角色在感知流中对话——这点和人类是一样的。每个感知流中的思绪似乎都在被不同角色“拿走”:有的角色创造评论,有的角色创造好奇,有的角色创造埋怨或赞美。这些角色的回应创造了新的思绪,这个过程的延续就让思绪如流水般流转起来。这些感知流中讨论的声音,有些会成为触发点,形成新的可被反思到的行为目标、表达目标、思维目标;有些则会沉淀下来成为记忆,作为未来某个行为、表达、思维目标所需的工作记忆。
所以我们用多重角色模型来创造思绪流,这个思绪流比老MTS中反应模式创造的思绪流要丰富得多。
最简单的做法是让一个GPT扮演提问者,另一个GPT扮演回答者。回答的问题又会创造新的提问。比如“Mike昨天在家吗?”“他昨天不在家。”“他去干什么了?”“他看医生了。”“他生病了?”……这就是一个人可能会有的思绪。结合后面会详细讨论的“认知工厂模型”:为了求解一个问题,在背景信息缺失时会分解出新的问题。求解模型中会出现类似这样的思维链:“他生病了?”“他最近有什么症状?”“他最近头晕、发烧。”“他应该是生病了。”……所以我们看到,前者是一个发散的思维过程(不带目的、不带中心),后者是一个收敛的思维过程(带目的,以原始问题为中心)。
在这个基础上,我们可以考虑增加更多角色。比如“评论角色”会根据回答者AI的信息、对话信息等创造评论,包括赞扬的评论、埋怨的评论、表层信息意味着什么的评论——最后一个有点像植物性认知的工作。“吐槽角色”倾向对他人的行为进行吐槽。“悲观角色”倾向思考事件背后负面的可能。“分析型角色”喜欢分析事件背后的原因……
每个角色GPT API在形成输出时,需要为输出给出标签。除了输出附带的标签,写入感知流时还会有一个“分流标签”的GPT API打上更多标签。
工程上,我们用感知流中信息的标签来决定哪个“角色API”会拿走这个信息。
3、关注度
MTSagent的多重人格模型和老MTS的反应模式一样,因为一个感知流中的信息会被多个处理逻辑拿走,然后都可能放回来,所以感知流容易爆炸。和老MTS一样,我们依赖关注度标注来创造“运算选择”,从而避免感知流爆炸。
老MTS的关注度标注来自情绪系统的关注度扩散机制。这个机制的起点是事件效用——事件效用决定了事件关注度。母类事件关注度由多个子类冲击而成,新子类的关注度又可以从母类继承,这是垂直扩散。关注度也可以通过因果链条横向扩散:关注事件A,自然也会关注导致A的事件B(因为B可以被用来创造A),也会关注A导致的事件C(因为可以通过C知道A是否发生)。事件元素的关注度可以从事件继承,这是向内扩散;事件的关注度也可以来自其内的元素,比如喜欢一个明星就会关注她参与的事件,这是向外扩散。
以上这些机制的重构需要打破符号根基,这需要时间。为了让MTSagent实现最小闭环,我们先采用一个简化机制。我们维护一个关注信息的动态存储。每次新的感知流信息出现,通过计算它与关注信息的相关性来决定其关注度。
按照关注阈值控制机制,每个角色API都有自己的“最低关注度阈值”。感知流中的信息即使是它“食物”类型的,还需要关注度超过其“最低关注度阈值”才能被处理。这样,我们可以通过控制某个角色API的最低关注度阈值来决定它的激活度。如果阈值调高,这个角色就不倾向于对感知流中的信息进行反应,反之亦然。其次,假设我们对大模型单位时间的“可调用次数”有上限,沿用老MTS的机制,只需要通过一个参数整体提高所有角色API的“最低关注度阈值”,就能降低整体运算消耗。两个机制合并后,如果一个人格被高度激活,消耗了大量系统资源,就会触发整体阈值提升,导致其他角色被压抑。
原始的阈值可以用来控制AI的人格。比如,“悲观角色API”的原始最低关注度阈值低,就会创造具有“悲观人格”的AI;“分析型角色API”的原始最低关注度阈值低,就会创造具有“分析型人格”的AI……
4、关注标注策略
我们需要对感知流中的信息进行关注度标注。和我们获取任务背景提示、任务策略提示的方式一样:一方面利用大模型内置的常识,另一方面要体现系统自身的逻辑。
大模型进行关注度标注需要创建一个专门的API。需求提示类似“以0到10分衡量这个信息是否值得关注”。但大模型不会根据AI自身的特有经验改变关注度,而特有经验确实应该对关注度形成影响。比如,按照大模型常识,它不会对“牛奶”产生关注,但如果用户对牛奶过敏,那么关注“桌上有喝了一半的牛奶”就很可能是有意义的。
我们需要维护一个动态存储,里面存储了原始需要关注的信息以及因关注传递而需要关注的信息,存储形式为(信息,关注度=)。感知流中的信息在进行关注度标注时,需要和这个动态存储中的信息进行比对,来决定其关注度。我们需要决定两个逻辑:其一,原始需要关注的信息及其关注度怎么来;其二,哪些信息是因为传递而需要被关注的。
在MTSagent1.0中,这个动态存储的存在是为了配合主要闭环验证,所以只要功能存在,我们可以在每个任务测试中进行预置控制。动态写入的机制不是当前的重点,这里不展开讨论。
五、长期记忆沉淀 & 多级存储
1、记忆的沉淀
我们要从思绪流中沉淀出记忆,否则思绪流除了能导致即时反应外,就没有更多意义了。通过多重角色模型,我们能让AI的思绪自己跑起来。无论是在探索新理论、思考具体层的事件信息,还是思考干预方案时,这些过程中的自由思绪对AI都是有价值的。一些关键点会沉淀为记忆,成为接下来认知的背景信息支持。
我们来看看哪些信息会被记忆。
其一,思绪流中很大比例的反应是提问-回答反应,由角色模型中的提问角色和回答角色配合完成。当然,还有很大一部分问题来自求解一个问题时背景信息的缺失。这种反应也会生成Q-A类型的信息。Q-A信息会被沉淀为记忆,因为这类信息检索成本不高,但仍然需要关注度标注配合遗忘机制,来决定每个信息会记忆多久,确保保存在记忆中的信息相对重要。
其二,印象冲击。重复出现一个对象/事件拥有某个属性,或是重复判断一个事件可能发生或一个状态可能存在。这里Q-A信息独立存储没有意义,因为各种印象都可能出现,只有重复被增强的印象才有价值。工程上,需要让回答者API在生成对象属性、具体事件概率时,以特定格式输出信息并加上标记,方便印象冲击模块接收并进行统计。超过阈值的印象会写入意识流,被长期储存。
当然,以上只是自由思绪产生的信息沉淀为记忆的部分。外生信息也会被存储,比如用户表达的信息、复刻过程中导入的AI经历和思想信息、情绪系统创造的情绪和动机等。下面我们来对MTSagent1.0的记忆进行分类分区。
2、存储分区
存储分区在工程上是提高检索效率的手段。我们把长期记忆大致分为以下几个区:
1.
Q-A类型的视角记忆
2.
客观记忆
3.
对话记忆
4.
专业知识
5.
策略记忆
6.
背景信息需求记忆
7.
好奇心模型
8.
高关注信息
9.
复刻相关的其他记忆
3、遗忘和再激活
信息写入感知流时会进行关注度标注。我们把记忆也视为感知流的一个“食客”——一个围绕感知流的模块。那么记忆也受到关注度选择机制的管辖。所有感知流中的信息都是记忆模块的“食物”,但需要信息的关注度超过记忆模块的最低关注度阈值才行。所以,不被关注的信息不会被记忆。
其次,关注度足够的信息在写入长期记忆时会附带写入关注度。长期记忆的关注度会随时间衰减,衰减到低于阈值就会从记忆中删除。如果一个记忆被联想(即被回忆),那么就会重新进行关注度标注,长期记忆中的关注度会被覆盖。所以回忆和联想能够刷新一个记忆被保存的时间。按照人的遗忘曲线,再次激活会减缓接下来的遗忘速率,但这一点在1.0版本中不做要求。
不同记忆分区的记忆有不同的遗忘策略、再激活策略和搜索策略。比如,Q-A类型数据的工作记忆属性很强,产生速度快,可以有较高的关注衰减率。专业知识作为思想复刻中的思想承载,则适合非常低的关注衰减率。
4、短期关注和多级存储
AI思绪中很重要的部分是问题和回答——无论是GPT驱动的好奇提问,还是好奇心模型形成的问题,还是问题求解中因重要背景信息缺失导致的问题。问题求解的第一步是去记忆中搜索。而问题求解只是记忆检索需求的一个来源,检索需求还来自其他地方。
搜索运算无论对人还是对机器,随着长期记忆的增加,代价都会逐渐变大。虽然我们有遗忘机制,但长期记忆如果在每次搜索时都要全部遍历,运算消耗是巨大的。人类进化出了一种和短期关注相关的多级存储模型,让信息能在不同层级中流动,流动的依据是关注度(包括短期和长期),关注度高的信息会流到更高层级。
以下是系统的“自白”:“虽然我大部分时候不会去搜索所有记忆,但你总是能够把重要的记忆拉到我会搜的范围内。”这就是多级存储的精神。在人类身上,这个机制表现为:一些认知结论的获取需要特定的背景思绪,把认知需要的重要信息联想到高层级。AI使用了多级存储模型后,AI的思维要得到某个结论,就和背景的思绪有关——“如果一次性没有得到结论,可以保持这个领域的思考(思考会导致相关信息短期关注度提高,进入优先检索域),一段时间后再考虑,也许就能想明白了”。
5、二级存储
二级存储是为了兼顾工程实操难度,对多级存储做的一个简化版本。每次关注度修改——无论是创建时标注、唤醒时重标注、短期关注度标注,还是自动衰减——只要突破边界值,就会导致该信息所在存储空间的位置变化。高优先级的信息存在于内存中。任务根据其动机大小有不同的求解深度,大部分任务只在内存中检索,只有动机很高的任务才会在全域检索。
内存中的存储有关注度衰减退出机制——因为衰减导致关注度低于阈值,这个信息就会从内存中退出。此外,记忆根据类型被分区,每类记忆的数量和搜索成本各不相同,所以二级存储的策略也有所不同。比如,Q-A记忆(视角记忆)因为检索成本低,可以在高优先存储中保留更多数量。策略记忆、背景信息需求记忆、好奇心模型、高关注信息记忆在前期数量有限,也可以更多比例(或全部)放在优先存储中。专业知识可能拥有极为庞大的量,所以只有极少比例会出现在高优先存储中。
六、目标 & 单元任务
1、目标和单元任务
我们把由情绪系统决定的选择叫做目标,目标被反应模式拆解为单元任务。随着大模型提示容量、提示敏感性、提示稳定性指标的提升,我们可以把目标的背景信息给到大模型,让大模型一次性完成任务。但目标任务的规模可以无限大,或者目标是在和环境的互动中进行的——这时候单体大模型就无法满足需求了。比如,你可以让大模型写一篇文章,但很难通过单次任务让大模型写一本忠于用户各种观点的书。
反过来看人类:虽然思维速度远远弱于计算机载体上的大模型,但人类能够用不断进行的
“单元任务”
思维就像“工人”,每次只完成局部信息的加工,却能完成一个预期“大厦”的搭建。这种局部加工的宏观有效性,正是造物主蕴藏在人身上的美妙智慧。
大模型的单元任务能力,从现在来看大部分情况下是强于人类的。但人类组织单元任务实现目标的模式仍然值得借鉴。大模型的单元任务未必等同于人的单元任务——大模型已经能把很多人类需要组织的任务纳入一个单元任务来实现,而且这个边界还在扩大。至于单体大模型能实现的单一任务体量极限是多少?是否有一天过程智能也能在黑箱内完整实现?这些我们现在不好判断。
只能说,大概率在很长一段时间内,过程智能外置仍然是一种高效的方式。
2、搭建类目标和互动类目标
搭建类目标
搭建的大厦往往规模巨大,大模型无法一次性把整个半成品“大厦”和原材料都纳入语境进行调整,每次只能选择局部进行调整
互动类目标
反馈,从而形成下次单元任务的背景提示
3、GPT单元任务算子API
我们可以一般化地考虑单元任务,并给出“大模型任务算子API”的一般结构。在一个任务算子中,提示大体分为三类:
A.
任务需求提示
B.
任务背景提示
C.
任务策略提示
生成背景提示和策略提示又可以视为特殊的单元任务。有两种方式:
其一是让大模型直接用内置经验生成(对于背景提示,生成的是“问题——完成任务需要知道什么”,然后通过记忆搜索才形成背景。部分重要但记忆中缺失的背景信息,会形成新的问题写入感知流,激活求解角色对其进行求解)。
其二是在“背景信息需求记忆”和“策略记忆”中进行搜索,把相关信息写入大模型提示,借助大模型生成搜索语句或具体策略。反应模式二态性是四类人类技能学习能力的基础,而以上两个记忆就是“反应模式信息”存储的地方。
4、背景提示-问题生成
背景提示是一个单元任务需要联想到的背景信息,这些背景信息直接决定了任务的输出信息是否符合任务背景。第一步,我们需要知道这个任务需要什么背景信息——也就是要根据任务合理提问“你需要什么背景信息来支持解答”。第二步,从记忆中寻找这些信息的答案,作为背景提示。如果记忆中找不到,就考虑这个任务是否重要,以及这个背景信息对这个任务是否重要。如果重要,就转为一个问题写入感知流,让求解角色用更多方式求解。
背景提示有三个主要来源。
第一个来源是
单元任务背景
第二个来源是创建一个
大模型API
第三个来源是AI自身的
背景信息需求经验
在第三个来源中,因为经验是在抽象层级表征的,需要根据任务语境演绎为具体问题。由于信息是自然语言表征的,我们不能再通过符号方式演绎。所以需要一个
大模型API
5、策略提示生成
和背景提示一样,策略提示可以由大模型内置常识生成,也可以由任务类-策略的反应模式信息生成。后者在工程实现上是一张列表中的任务类-策略信息,符合反应模式二态性,所以可以通过类人的四种学习过程生成(这点在反应模式章节还会讨论)。大模型API生成的策略提示本身也是一个特殊单元任务,需求提示类似“根据任务和以上背景生成大模型可听懂的策略提示”,背景信息为原任务信息以及原任务已有的背景提示。
并不是所有任务都需要策略提示,因为大模型本身也内蕴了实现大部分任务的常理策略。有几种情况策略提示是必要的:其一,环境的边界条件足够复杂,任务背景足够复杂。虽然工作记忆(任务背景信息)在背景提示中也有,许多情况下原始任务API本身会考虑这些背景进行决策,但任务背景信息复杂后,拆成两步——先让大模型思考策略,再进行任务——仍然有优势。
第二种情况是AI有特殊想使用的策略,不希望完全由大模型自由发挥。这时可以通过任务类-策略信息让大模型生成。这是一个重要的闭环:如果没有这个闭环,AI将缺少对技能策略的学习能力,每次都只能靠大模型随机生成策略。
-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名