首页 文章 精选 留言 我的

精选列表

搜索[注册保护],共10000篇文章
优秀的个人博客,低调大师

🔥 赋予 AI Agent “无限续航”:语义保护型上下文压缩技术解析

想象一下,你正在指挥一个超级聪明的AI助手(我们称之为Agent)帮你完成一项复杂任务,比如策划一次跨国旅行。一开始,它记得你的所有要求:想去哪些国家、预算多少、喜欢什么类型的酒店。但随着任务的进行,它需要查询航班、比较酒店、查看天气……每一次查询和思考都会增加它的“记忆负担”。 如果它“记性”不好,聊到一半就会忘了最开始的要求,或者陷入混乱的逻辑中,这就是开发者常说的“上下文窗口爆炸”问题。 Solon AI 框架里有一个秘密武器——SummarizationInterceptor(智能记忆压缩器),它能让AI助手像人一样,既不会忘记初心,又能轻装上阵,实现真正的“无限续航”。它不是简单粗暴地“断片”,而是一套优雅的“记忆管理大师”。 1、为什么不能简单粗暴地“断片”? 处理长对话,最直接的想法是:对话太长?那就删掉前面一半吧!但这种“暴力裁剪”对AI来说,会带来两个致命伤: 忘本(失去初心):AI Agent 最开头的系统设定和你交给它的第一个任务,如果被删掉,它就会像无头苍蝇一样,完全不知道自己要干嘛了。 断片(逻辑断层):AI Agent 的工作模式通常是“思考 -> 行动 -> 观察结果”(ReAct)。如果你恰好把它的某个“行动”和对应的“观察结果”给拆散了,它看到结果却不知道为什么会有这个结果,逻辑瞬间混乱,甚至陷入死循环,无法自拔。 所以,忘记也是一门艺术,需要有策略地忘记。 2、智能记忆压缩器是如何工作的? SummarizationInterceptor就像一个聪明的图书管理员,它不会随意丢弃书籍,而是按照一套精密的流程来整理书架。它的工作分为四步: 第一步:锁死“初心”(锚点锁定) 无论后面的对话有多长,管理员都会第一时间找到两样东西并永久保留: 任务指令:你第一次给AI布置的任务(UserMessage),这是它的“初心”。 基本守则:AI的系统设定(SystemMessage),这是它的“行为准则”。 这两样东西被牢牢锁定,确保AI永不迷失方向。 第二步:禁止“断片”(原子对齐) 这是整个机制最核心的“黑科技”。当管理员决定要清理一部分旧内容时,他不会直接动手。他会仔细检查,确保永远不会把“行动”和“结果”这对“连体婴儿”给拆散。 智能检查:如果发现准备清理的起点正好落在一个“观察结果”(ToolMessage)或者一个“行动指令”(AssistantMessage)上,管理员会立刻把清理起点向后挪,直到确保每一对“行动-结果”都完整地保留下来。 第三步:让记忆更连贯(语义补齐) 为了让你和AI的对话读起来更通顺,管理员还会再多做一步“人情味”的检查。如果清理后的第一条记录是一个“行动结果”,管理员会看看它前面是不是紧跟着一条AI的“思考过程”(Thought)。如果是,他会把这条“思考”也一并留下。这样一来,AI看到的历史永远是从一个思考片段开始的,理解起来更自然。 第四步:贴个“便利贴”提醒(断裂感知) 在永久保存的“初心”和压缩后的“最近记忆”之间,管理员会贴上一张醒目的“小贴士”: --- [系统提示:中间部分历史对话已优化压缩,请根据当前计划和剩余历史继续任务...] --- 这张“小贴士”非常重要,它用AI能理解的语言告诉它:“别担心,中间有些细节我帮你精简了,你专注眼前的任务和核心目标就好。”这能有效防止AI因为记忆断层而产生困惑和幻觉。 3、如何实现“无限续航”? 通过这套“记忆管理术”,SummarizationInterceptor 把AI的内存变成了一个动态的“新陈代谢系统”: 内存恒定:无论AI运行了10步还是1000步,它一次“思考”所需要处理的信息量(Token数)始终维持在一个安全的范围内。 逻辑清晰:因为“原子对齐”机制,AI看到的每一段记忆都是完整的“思考-行动-反馈”闭环,逻辑链条非常稳固。 目标永存:“系统设定”和“用户任务”这两大核心目标永远在线,AI永远不会忘记“我是谁”和“我要去哪”。 4、更强大的组合:插件式的记忆策略 这个“记忆管理器”最妙的地方在于,它采用了策略模式,就像手机可以安装不同的APP来扩展功能一样,你可以给它接入不同的“记忆处理插件”。框架已经为我们准备了几款强大的插件: 层级压缩器:它会像滚雪球一样,把旧的记忆摘要和新的对话历史不断融合、压缩,生成一个始终更新的“全局进度摘要”,让记忆像洋葱一样层层包裹,永不丢失核心。 关键信息提取器:它像一个信息审计员,只从对话中提取最核心的“干货”,比如用户要求、获取到的数据、已经失败的尝试等,过滤掉那些啰嗦的思考过程。 向量库记忆师:它会将被清理的详细对话“归档”到一个巨大的知识库里(向量数据库)。当AI需要回忆某个细节时,可以通过一个专门的“召回历史”工具,像用搜索引擎一样把它找回来。 你可以把这些插件组合起来使用,比如先归档,再提纯,最后压缩,打造一个最适合你AI助手的记忆管理方案。 应用示例: import org.noear.solon.ai.agent.react.ReActAgent; import org.noear.solon.ai.agent.react.intercept.SummarizationInterceptor; import org.noear.solon.ai.agent.react.intercept.summarize.*; import org.noear.solon.ai.agent.session.InMemoryAgentSession; import org.noear.solon.ai.chat.ChatModel; CompositeSummarizationStrategy compositeStrategy = new CompositeSummarizationStrategy(); compositeStrategy.addStrategy(new KeyInfoExtractionStrategy(chatModel)); compositeStrategy.addStrategy(new HierarchicalSummarizationStrategy(chatModel)); SummarizationInterceptor summarizationInterceptor = new SummarizationInterceptor(12, compositeStrategy); ReActAgent agent = ReActAgent.of(chatModel) .defaultInterceptorAdd(summarizationInterceptor) .build(); 5、总结 SummarizationInterceptor的设计哲学是:有尊严地裁剪,有逻辑地遗忘。 它不仅仅是一个节省计算资源的工具,更是AI能够保持逻辑连贯、处理超长复杂任务的“护航者”。有了它,开发者可以放心地让AI助手去处理那些需要几个小时甚至几天才能完成的、真正复杂和智能化的工作,而不用担心它会中途“失忆”或“精神错乱”。

优秀的个人博客,低调大师

Google 开源 GUAC,又一个保护软件供应链的项目

自从去年年底 Log4j 漏洞被发现以来,软件供应链的安全问题就是目前很多企业和政府组织非常重视的问题。 此前 Google 就已经针对软件供应链的安全开源了一个名为 SLSA(Supply chain Levels for Software Artifacts)的框架,这是一个新的端到端框架,Google 希望通过 SLSA 能推动标准和准则的实施,以确保整个软件供应链中软件工件的完整性。 SLSA 框架的灵感来自其强制性的内部 「Binary Authorization for Borg」 执行检查器,该检查器可确保生产软件得到适当的审查和授权,特别是在代码可以访问用户数据的情况下。Binary Authorization for Borg 已经在 Google 内部使用了 8 年时间,并且是 Google 所有生产工作负载的强制性检查器。 Google 近日又公开了一个针对软件供应链的全新开源项目,该项目名为 GUAC(Graph for Understanding Artifact Composition),由 Google 与 Kusari、普渡大学和花旗银行合作开发。 这是一个免费的工具,可以将许多不同来源的软件安全元数据结合起来,GUAC 的目的是使软件构建、安全和依赖性元数据信息具有更广泛的可用性,使每个组织都能免费获得这些信息,而不仅仅是那些行业顶尖的企业组织。 此前存在的问题在于,尽管各企业组织目前可以获得软件材料清单、漏洞数据库和其他信息来源,但很难将这些信息结合起来并加以综合,无法获得一个更全面的数据视角。目前 GUAC 还处于早期开发阶段。 GUAC 有以下四个关键功能: 收集:可以配置 GUAC,并将其连接到各种软件安全元数据的信息来源(包括:公开、内部,以及合作的第三方数据来源)。 摄取:GUAC 从其上游数据源导入关于工件、项目、资源、漏洞、存储库甚至开发者的数据。 整理:从不同的上游数据源摄取原始元数据后,GUAC 通过规范实体标识符、遍历依赖树等,将其组合成一个连贯的图表。 查询:对照整理好的图表,用户可以查询附属于图中实体或与之相关的元数据。查询一个给定的工件可以返回它的 SBOM、出处、漏洞和最近的生命周期事件,以及那些与之相关的依赖关系。 目前你可以在 GitHub 上找到该项目的更多信息,该项目还在开发中, 目前并不完善,感兴趣的开发者也能积极参与项目开发。

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册