地球上最早的生命证据至少可以追溯到 35 亿年前,而直到大约 25 万到 40 万年前,智人才出现地球上。在这漫长的岁月中,生物不断地兴盛又覆灭,但整体趋势总是越来越复杂,其中最复杂的生物组件莫过于我们智人的大脑。这样的复杂性是我们的意识和智慧的来源。而这一切背后的机制是进化(evolution)。
到了现今的大模型时代,强大的基础模型已经展现出了强大的智能水平,能完成多种多样的任务。但它们也有个缺点,训练之后就基本定型了,难以随着用户的使用而演进。但毫无疑问,这项能力很重要。
近日,天桥脑科学研究院和普林斯顿大学等多所研究机构发布了一篇研究论文,详细阐述了长期记忆对 AI 自我进化的重要性,并且他们还提出了自己的实现框架 —— 基于多智能体的 Omne,其在 GAIA 基准上取得了第一名的成绩。
首先,该团队将 LLM 的模型进化过程分成了三个主要阶段
现有的研究主要围绕着阶段 1 和 2,即如何构建更好的数据以及将其用于训练更强大的基础模型。目前人们有一个普遍的看法:在这种曲线拟合范式中,架构并不重要,关键的因素是数据集。但到了阶段 3,架构就会变得和数据一样重要。核心的难题是如何在统计模型的基础上有效表达少数个体的数据。该研究关注的核心是如何确保在统计模型内有效地表达个体数据。
模型的自我进化能力是模型长期适应和个性化的关键,而这又严重仰赖于有效的记忆机制。
在这一理解的基础上,该团队提出:长期记忆(LTM)能为模型的持续进化提供历史数据积累和经验学习能力。正如人类通过经验和记忆来完善认知和行为一样,LTM 也能让模型在处理长期、分散和个性化的数据时逐步提升推理和学习能力。
在传统 LLM 中,更新模型通常需要调整所有参数,而如果目的是处理个体数据,那这种操作明显不切实际。
一种更优的方法是仅更新局部参数,从而在无损模型全局稳定性的前提下,让模型适应稀疏、个性化的 LTM 数据。这种方法可解决当前模型中个体数据「被平均化」的问题,使个性化信息能够更全面地表达。使用上下文学习(ICL)的检索增强生成(RAG)和用于微调的低秩适应(LoRA)等技术都可被视为局部更新个体数据的方法。
该团队的做法是采用一种混合策略来整合 LTM 数据,从而在实际应用中达到让人满意的结果。但是,该团队也表示,这可能并非一种完美的解决方案,未来可能还会出现更好的方法。
当前的 LLM 通常分为训练和推理两个阶段。在推理阶段,模型权重是冻结的,防止模型根据新输入进行调整和学习。这种固定的推理过程会限制模型的适应性,尤其是在处理个性化任务和实时学习方面。
受人脑更新机制的启发,该团队认为未来的 LLM 应该将推理和训练与 LTM 结合起来,使模型能够在接收到新信息时动态调整权重。这就类似于人类的持续学习能力。
此外,这种集成还可以帮助模型在面对复杂的推理任务时自我反思并纠正错误的推理路径,从而提高准确性和效率。
这种动态的自我调整能力将大大提升模型的个性化能力和长期进化潜力。通过长期记忆,模型不仅可以从短期记忆中学习,还可以从历史数据中提取有价值的见解,随着时间的推移能更深入地理解个人偏好和行为模式。这种理解可实现模型的个性化定制和动态调整,使模型能够更有效地进化。特别是在面对新的或极端的情况时,长期记忆使模型能够参考过去的经验,快速做出调整并自我进化,从而获得更大的灵活性和适应性。
长期记忆在模型自我进化中的实现路径
该团队首先将给出 AI 自我进化和 LTM 的定义,然后探索 LTM 在 AI 自我进化中的关键作用,之后会介绍如何使用 LTM 来实现 AI 自我进化。
他们做出了以下贡献:
这里简要给出 AI 自我进化的定义,详情请参阅原论文。
AI 自我进化是指 AI 模型使用个性化数据不断学习和优化,实现多智能体协作和认知方面的突破。该过程基于一个共享式内核架构,其中各个模型通过处理个性化经验和数据不断进化,从而提升自身推理能力和适应能力,最终实现在动态环境中的自主学习和持续进化。
要实现 AI 自我进化,需要:
目前,LLM 主要通过两种记忆机制来管理信息:上下文存储器和基于压缩的参数存储器。虽然这些机制在短期任务中表现出色,但它们在支持长期自主学习和进化方面仍然存在不足。
正如人类使用 LTM 来塑造他们的行为和身份一样,人工智能系统也可以采用类似的方法根据「个人数据」定制其响应和行为。这里,「个人数据」不仅限于个人用户,还包括特定的机构和领域,允许模型根据更广泛的个人背景和需求调整其响应和行为。
作者深入探讨了 LTM 在 AI 自我进化中所发挥的关键作用,首先在 AI 自我进化的背景下定义了 LTM,并分析了当前 LLM 记忆机制的缺点。然后,作者讨论了通过从人类 LTM 特征中汲取灵感来增强人工智能模型的自我进化能力,旨在构建能持续学习和自我完善的人工智能系统。
该研究将 AI 自我进化中的 LTM 定义为:
LTM 是人工智能系统可以长期保留和利用的信息,使模型能够根据更广泛的背景调整其响应和行为。
这里,「个人数据」不仅限于个人用户,还包括特定的机构和领域,允许模型根据更广泛的个人背景和需求调整其反应和行为。
从数据积累的角度来看:模型和人类都与环境进行广泛的交互,为个性化提供基础数据。与人类相比,人工智能模型可以更有效地与环境交互,并且可以在纯虚拟的数字环境中执行这些交互和迭代。因此,通过设计适当的记忆细化策略,模型应该能够像人类一样积累长期记忆,甚至可能具有更高的效率和规模。
从模型更新的角度来看:人工智能擅长存储和调用海量数据,远远超过人类记忆规模。神经网络通过分布式参数管理这些数据,处理来自不同领域的输入。然而,这种存储相对刚性,缺乏实时更新的灵活性,通常需要重新训练才能实现更新。相比之下,人类的记忆力却非常强。
LTM 是对原始数据的有效组织和结构化,而不仅仅是表面上对原始数据进行分类和排序。相反,它是从记忆快速存储和检索以及信息高效利用的角度来设计和优化。通过建立相关信息之间的联系,有效处理数据并重新组织信息,智能体可以快速定位所需的记忆片段,从而提高响应速度和准确性。以下是几种主要的操作方法:
获得高质量的 LTM 数据后,下一个挑战是如何利用它来增强模型能力并实现模型的自我进化。在使用 LTM 数据以最大限度地提高其有效性和效率的过程中需要解决几个关键挑战,包括:
适应持续更新的 LTM 数据。随着用户 LTM 数据的不断积累,模型必须在学习新信息和保留先前获取的知识之间取得平衡。传统模型通常假设稳定的数据分布,但在实际场景中,新的 LTM 数据可能与早期模式显著背离,导致过拟合或灾难性遗忘等风险。有效处理这些变化对于适应动态 LTM 数据至关重要。
实时学习和高效反馈集成。由于 LTM 数据是动态积累的,模型必须快速适应用户行为的实时变化。新数据的快速集成对于智能助手等应用程序至关重要,其中无缝的用户交互是关键。此外,在完善基础模型时,应考虑隐式(例如点击次数或花费的时间)和显式的用户反馈。实时结合这两种类型的反馈使模型能够不断改进并满足个人用户的需求。
处理数据稀疏性和用户多样性。数据稀疏是持续更新的 LTM 系统中一个常见的问题,特别是对于交互历史有限或零星活动的用户来说,这使得训练模型变得困难。此外,用户多样性也会进一步增加复杂性,要求模型适应个体模式,同时仍然有效地推广到不同的用户组。
以清华大学团队的 Agent Hospital(智能体医院)作为案例,该团队展示了如何在这个模拟医疗场景中用 LTM 来提升模型的能力,其中包括医疗记录积累、医疗经验反思和基于 RAG 利用 LTM。详见原论文。
为了提升模型保留和访问 LTM 数据的能力,该团队全面研究了各种方法,其中包括:
这其中包含一些实验评估和例证,详见原论文。这里我们来重点看看他们开发的基于 LTM 的多智能体框架。
该团队提出一个基于 LTM 的多智能体框架 Omne。
Omne 是基于 AutoGen MultiAgent Framework 深度定制的开发框架,专门用于解决 LTM 在 AI 系统中的实际应用难题。
它扩展了一系列与记忆相关的基础设施,包括统一的记忆模型、多模态消息处理系统以及灵活的记忆存储和操作机制。Omne 的核心模块(Omne Core)如下图所示:
Omne 的核心目标是提供一套全面的解决方案,使 LTM 能够在实际工程项目中有效部署,从而增强 AI 系统的长期记忆能力和任务处理效率。
基于 Omne Core,该团队还构建了一个 Omne Assistant。
Omne Assistant 的设计目标是帮助开发聊天场景中的 AI 助手,其提供了一个现成的应用层框架。它包括 AI 助手所需的基本功能,使开发人员无需从头开始设计基础组件,就能快速构建功能齐全的聊天机器人。
Omne Assistant 带有一个 Simple Responder,这是一个通用的问答响应器,可以处理基本的用户聊天交互以实现即时通信。此外,该框架还提供了一个 Reactive Responder,它具有高级任务分析和规划功能,使其能够管理需要多步骤推理和任务编排的更复杂的用户请求。
借助这些内置组件,Omne Assistant 可让开发人员专注于实现自己的功能,从而更快地开发和部署配备长期记忆功能的 AI 助手应用。
在 GAIA 基准(包含 400 多个问答任务的通用 AI 助手测试集)上,该团队对 Omne 框架进行了评估。
为了探索 AI 的边界,他们在 Omne 框架中使用了当今最强大的 GPT-4o 和 o1-preview 模型,同时配备了 4 个工具:网络浏览、Bing 搜索引擎、基于 llamaparse 的文件读取器,一个使用 o1-preview 构建的逻辑专家。
基于这 2 个基础模型和 4 个工具,Omne 在测试集和验证集上分别取得了第一名(40.53%)和第二名(46.06%)的成绩。
值得注意的是,Omne 在最复杂、要求最高的 3 级问题上达到了 26.53% 的准确率。这证明了其通过利用强大的基础模型(尤其是具有强大推理和逻辑能力的模型)解决现实问题的潜力。
该团队并不打算止步于此,他们已经制定了未来研究的计划,方向包括:
1. 如何更好地构建 LTM 数据?
2. 如何为 LTM 设计新的模型架构?
3. LTM 如何帮助用户提出更好的问题?
4. 如何将 LTM 与推理时间搜索相结合?
5. 如何在复杂场景中使用 LTM 实现智能体自我进化?
6. 如何在多智能体场景中使用 LTM?
文章来自于微信公众号“机器之心”
【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。
项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file
本地安装:https://www.deepbi.com/
【开源免费】airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。
项目地址:https://github.com/hitsz-ids/airda
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。
项目地址:https://github.com/microsoft/graphrag
【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。
项目地址:https://github.com/langgenius/dify
【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。
项目地址:https://github.com/infiniflow/ragflow/tree/main
【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目
项目地址:https://github.com/phidatahq/phidata
【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。
项目地址:https://github.com/TaskingAI/TaskingAI
【开源免费】MindSearch是一个模仿人类思考方式的AI搜索引擎框架,其性能可与 Perplexity和ChatGPT-Web相媲美。
项目地址:https://github.com/InternLM/MindSearch
在线使用:https://mindsearch.openxlab.org.cn/
【开源免费】Morphic是一个由AI驱动的搜索引擎。该项目开源免费,搜索结果包含文本,图片,视频等各种AI搜索所需要的必备功能。相对于其他开源AI搜索项目,测试搜索结果最好。
项目地址:https://github.com/miurla/morphic/tree/main
在线使用:https://www.morphic.sh/
【免费】ffa.chat是一个完全免费的GPT-4o镜像站点,无需魔法付费,即可无限制使用GPT-4o等多个海外模型产品。
在线使用:https://ffa.chat/
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner