需要反复记忆的东西--暂时无用

一  JVM

     1.  栈帧包括:局部变量表、操作数栈、常量池、动态链接、方法出口信息等

     2.  方法区:堆的一个逻辑部分,线程共享,存放已经被虚拟机加载的类信息、常量、

                        静态变量、即时编译器编译后的代码等。

     3.  如何判断对象已死

          对象不可达并经历两次标记的对象。

        (1)可达性分析算法

                 该算法的思路是通过一系列称为“GC Root”的对象作为始点,从这些节点开始向下搜索,

                 搜索所走过的路称为引用链(Reference Chain),当一个对象到GC Roots没有任何引

                 用链相接(不可达)时,则证明此对象时不可用的。如下图所示,object5、object6、

                 object7虽然相会关联,但是它们到GC Root是不可达的,所以将会被判定为是可回收

                 的对象。

                 

                在Java中,可作为GC Root的对象包括下面几种:

                --  虚拟机栈(栈帧中的本地变量表)中引用的对象。

                --  本地方法栈中JNI(即一般说的Native方法)引用的对象

                --  方法区内类静态属性引用的对象和常量引用的对象。

          (2)可达性分析算法            

                   如果进行垃圾回收的时候发现一个对象没有在GC Root链上,那么就需要进行两次的

                   标记过程,如果当前发现没有关联在GC Root链上,那么就会进行第一次标记,如果

                   此时对象的finalize()方法没有被覆盖或该方法已经被虚拟机调用过,那么此时将被标

                   记为没有必要执行,此时该对象会被放入“即将回收”集合,否则就会放入F-Queue的

                   对象中等待执行finalize()方法,如果在此方法中对象将自己与GC Root链上的任何一

                   个对象关联(譬如把自己(this)赋值给某个类变量或者对象的成员变量),那么就

                   会被移出”即将回收“集合。

     4.  常见的垃圾回收算法

        (1)标记清除算法

                         分为两个阶段,标注和清除。标记阶段标记出所有需要回收的对象,清除阶段回

                         收被标记的对象所占用的空间,该算法最大的问题是内存碎片产生严重。

        (2)复制算法

                        为了解决Mark-Sweep算法内存碎片化的缺陷而被提出的算法。按内存容量将内存

                        划分为等大小的两块。每次只使用其中一块,当这一块内存满后将尚存活的对象复

                        制到另一块上去,把已使用的内存清掉。这种算法虽然实现简单,内存效率高,不

                        易产生碎片,但是最大的问题是可用内存被压缩到了原本的一半。且存活对象增多

                        的话,Copying算法的效率会大大降低。

        (3)标记压缩算法

                         标记阶段和标记算法相同,标记后不是清理对象而是将存活的对象移动到内存的

                         一端,然后清除边界外的对象。

        (4)分代算法

                        分代收集法是目前大部分JVM所采用的方法,其核心思想是根据对象存活的不同

                        生命周期将内存划分为不同的域,一般情况下将GC堆划分为老生代

                        (Tenured/Old Generation)和新生代(Young Generation)。老生代的特点是每次垃

                        圾回收时只有少量对象需要被回收,新生代的特点是每次垃圾回收时都有大量垃

                        圾需要被回收,因此可以根据不同区域选择不同的算法。新生代采用复制算法,

                        老年代采用标记压缩算法。

        (5)分区算法

                         将整个内存分为N个小的独立空间,每个小空间都可以独立使用,这样细粒度控

                         制一次回收多少个小空间和哪些个小空间,而不是对整个空间进行GC,从而提

                         升性能。

     5.  垃圾回收器

         (1)Serial收集器

                           新生代收集器,是一个单线程的收集器,采用的是“复制算法”。它的 “单线程”

                           的意义并不仅仅说明它只会使用一个CPU或一条收集线程去完成垃圾收集工

                           作,更重要的是在它进行垃圾收集时,必须暂停其它所有工作线程,直到它收

                           集结束。

         (2)ParNew收集器

                           是Serial收集器的多线程版本,采用的是“复制算法”。除了使用多线程进行垃圾

                           收集之外,其余行为包括Serial收集器可用的所有控制参 数、收集算法、

                           Stop The World、对象分配规则、回收策略等都与Serial收集器完全一样,在

                           实现上,这两种收集器也共用了相当多的代码。ParNew收集器除了多线程收集

                           之外,其它与Serial收集器相比并没有太多创新之处,但它却是运行在Server模

                           式下的虚拟机中首选的新生代收集器,其中一个与性能无关但很重要的原因是,

                           除了Serial收集器外,目前只有它能与CMS收集器配合工作。

         (3)Parallel Scavenge收集器:

                          是工作在新生代的垃圾回收器,使用了复制算法,也是多线程独占(独占回收器:

                          GC来的时候应用停顿只执行GC)形式的收集器,它的特点是关注系统的吞吐量。

         (4)Serial Old收集器:

                          是Serial收集器的老年代版本,它同样是一个单线程的收集器,使用“标记-整理”

                          算法。这个收集器的主要意义也是在于给Client模式下的虚拟机使用。如果在

                          Server模式下,那么它主要还有两大用途:

                          一种用途在JDK1.5以及之前的版本中与Parallel Scavenge收集器搭配使用。

                          另一种用途就是作为CMS收集器的后备方案,在并发收集器发生

                          Concurrent Mode Failure时使用。

         (5)Parallel Old是Parallel Scavenge收集器的老年代版本,使用多线程和“标记-整理”算法。

                   这个收集器在JDK1.6中才开始提供的,在此之前,新生代的Parallel Scavenge收集器

                   一直处于比较尴尬大的状态。原因是如果新生代选择了Parallel Scavenge收集器,老

                   年代除了Serial Old收集器外别无选择。由于老年代Serial Old收集器在服务端性能上

                   的拖累,使用Parallel Scavenge收集器也未必能在整体应用上获得吞吐量最大的效果。

                   直到。

        (6)CMS回收器:

                 工作在老年代的回收器,使用的是标记清除法,是一种以获取最短回收停顿时间为目标

                 的收集器。主要关注的是系统的停顿时间。CMS并不是独占的回收器,也就是说CMS回

                 收的过程中,应用程序仍然在不停的工作,又会有新的垃圾不断产生,所以在使用CMS

                 过程中应该确保应用程序的内存足够可用,CMS不会等到应用程序饱和的时候在去回收

                 圾,而是到达某个阈值的时候就去回收,回收的阈值可以通过指定的参数来设置

                 -XX:CMSInitiatingOccupancyFraction来指定,默认值是68,也就是说当老年代的使用率

                 达到68%的时候会执行CMS垃圾回收,如果内存使用增长的很快,在CMS过程中出现了

                 内存不足的情况,CMS回收就会失败,虚拟机将启用老年代串行回收器进行垃圾回收,

                 这会导致应用程序中断,直到垃圾回收完成后才会正常工作,这个过程GC停顿时间可能

                 过长,所以设置-XX:CMSInitiatingOccupancyFraction要根据实际情况。

                 运作过程:初始标记、并发标记、重新标记、并发清除。有的版本叫(另外CMS收集

                 器比较详细的步骤查看:https://blog.youkuaiyun.com/zqz_zqz/article/details/70568819)

                 初始标记、重新标记这两个步骤仍需“Stop The World”。初始标记仅仅只是标记一下

                 GC Root能直接关联到的对象(不包括间接到达的哈,没有直接关联的对象在并发标记

                 阶段标记哈),速度很快;并发标记阶段就是进行GC Roots Tracing的过程;重新标记

                 则是为了修正并发标记期间因用户程序继续而导致标记产生变动的那一部分对象的标记

                 记录,这个时间的停顿时间一般会比初始标记阶段稍长些,但远比并发标记短。在这个

                 阶段暂停所有用户线程,重新扫描堆中的对象,进行可达性分析,标记活着的对象,特

                 别需要注意一点,这个阶段是以新生代中对象为根来判断对象是否存活的;并发清除,

                 这个阶段主要是清除那些没有标记的对象并且回收空间,由于CMS并发清理阶段用户线

                 程还在运行着,伴随程序运行自然就还会有新的垃圾不断产生,这一部分垃圾出现在标

                 记过程之后,CMS无法在当次收集中处理掉它们,只好留待下一次GC时再清理掉。这

                 一部分垃圾就称为“浮动垃圾”。

                 缺点:

                 (A)CMS收集器对CPU资源非常敏感(其实应该说它比较消耗cpu资源)。在并

                           发阶段,它虽然不会导致用户线程停顿,但是会因为占用一部分CPU资源而

                           导致应用程序变慢。CMS默认启动的回收器线程数量是 (CPU数量+3) / 4,

                           也就是当CPU在4个以上时,并发回收时垃圾收集线程不少于25%的CPU

                           资源,并且随着CPU数量的增加而下降。但是当CPU的数量不足时(譬

                           如2个),CMS对用户程序的影响就可能变得很大。为了应付这种情况,

                           虚拟机提供了一种称为“增量式并发收集器”(i-CMS)的CMS收集器变种,

                           就时在并发标记、清理的时候让GC线程、用户线程交替运行,尽量减少线

                           程的独占资源的时间。在目前版本中i-CMS已经被声明为“deprecated”,即

                           不在提倡用户使用。

                 (B)CMS处理器无法处理浮动垃圾。

                 (C)基于“标记-清除”算法实现的收集器,会产生大量额空间碎片,会出现并发

                           模式失败的情况,并发模式失败就要执行内存整理(内存压缩),这种情

                           况下会导致CMS比Parallel Scavenge更慢(通常情况下CMS比

                           Parallel Scavenge要快)。

        (7)G1回收器:

                 是JDK1.7中提出的基于“标记-整理”算法的垃圾回收器,它的使命是取代CMS

                 回收器,可建立可预测的停顿时间模型属于分代垃圾回收器 区分新生代和老

                 年代,依然有eden和from、to区,它不要求新生代、老年代、eden、from、

                 to区空 间都 连续,使用了分区算法。据说JDK1.7之后使用的是G1回收算法,

                 不过有待考证,目前不能确定,但是在

                 JDK1.7里它还不太成熟。

                        G1收集器将整个Java堆划分为大小相等的独立区域(Region),虽然还

                 保留着新生代和老年代的概念,但新生代和老年代不再是物理隔离的了,它

                 们都是一部分Region(不需要连续)的集合。

                        G1收集器之所以能建立可预测的停顿时间模型,是因为它可以有计划

                 地避免在整个Java堆中进行全区域的垃圾收集。G1跟踪各个堆里面的垃圾

                 堆积的价值大小(回收所获得的空间大小以及回收所需要时间的经验值),

                 在后台维护一个优先列表,每次根据允许的回收时间,优先回收价值最大

                 的Region。

                 特点:

                 并行和并发:G1充分利用多CPU、多核环境下的硬件优势,使用多个CPU

                                      来缩短Stop-The-World停顿的时间,部分其它收集器原本需要

                                       停顿Java线程执行的GC动作,G1收集器仍然可以通过并发的

                                        方式让Java程序继续执行。

                 分代收集:存在Eden、from、to。不需要其它收集器的配合就能独立管理

                                   整个GC堆,可以自己处理堆中的对象。

                 空间整合:重整体来看是基于“标记-整理”算法实现的;局部(两个Region

                                   之间)来看是基于“复制”算法的实现的,但这两种算法都不会

                                   产生内存碎片。

                 可预测停顿:能建立可预测的停顿时间模型。能让使用者明确指定一个长

                                      度为M毫秒的时间片段内,消耗在垃圾收集上的时间不得超

                                      过N毫秒。(这点是G1相对于CMS的另外一大优势,低停

                                      顿是G1和CMS共同的关注点,但G1除了追求低停顿外,还

                                      能建立可预测的停顿时间模型)

                 执行过程:如果不计算维护Remembered Set的操作,G1收集器的运作

                                   大致可划分为以下几个步骤:

                                   初始标记、并发标记、并行标记、最终标记、筛选回收。

                                   初始标记仅仅是标记一下GC Root能直接关联到的对象,并

                                   且修改TAMS(Next Top at Mark Start)的值,让下一阶段

                                   用户程序并发运行时,能在正确可用的Region中创建对象,

                                   这阶段需要停顿但时耗时短;并发标记是从GC Root开始对

                                   堆中对象进行可达性分析,找出存活的对象,这阶段耗时较长,

                                   但可与用户程序并发执行;最终标记是为了修正在并发标记期

                                    间因用户程序继续运作而导致标记产生变动的那一部分标记记

                                    录;筛选回收阶段首先要对各个Region的回收价值和成本进行

                                   排序,根据用户所期望的GC停顿时间来制定回收计划,根据

                                   Sun公司透露的信息来看,这个阶段其实可以做到与用户程序

                                   一起并发执行。

  

     6.  减少GC开销的编程技巧

           http://www.importnew.com/10472.html

         (1)不要显式调用System.gc()

                  此函数建议JVM进行主GC,虽然只是建议而非一定,但很多情况下它

                  会触发主GC,从而增加主GC的频率,也即增加了间歇性停顿的次数。

         (2)尽量减少临时对象的使用

                  临时对象在跳出函数调用后,会成为垃圾,少用临时变量就相当于

                  减少了垃圾的产生,从而延长了出现上述第二个触发条件出现的时

                  间,减少了主GC的机会。

         (3)尽量使用StringBuffer,而不用String来累加字符串

             由于String是固定长的字符串对象,累加String对象时,并非在一个

                  String对象中扩增,而是重新创建新的String对象,如

                  Str5=Str1+Str2+Str3+Str4,这条语句执行过

                  程中会产生多个垃圾对象,因为对次作“+”操作时都必须创建新的

                  String对象,但这

                  些过渡对象对系统来说是没有实际意义的,只会增加更多的垃圾。

        (4)计划好List的容量

                 像ArrayList这样的动态集合用来存储一些长度可变化数据的基本结

                 构。ArrayList和一些其他的集合(如HashMap、TreeMap),底层

                 都是通过使用Object[]数组来实现的。而String(它们自己包装在

                 char[]数组中),char数组的大小是不变的。那么问题就出现了,

                 如果它们的大小是不变的,我们怎么能放item记录到集合中去呢?

                 答案显而易见:分配更多的数组。所以,无论什么时候,尽可能

                 的给List或者Map分配一个初始容量,就像这样。

        (5)能用基本类型如Int,long,就不用Integer,Long对象

                 基本类型变量占用的内存资源比相应对象占用的少得多,如果没有

                 必要,最好使用基本变量。

        (6)尽量少用静态对象变量

                 静态变量属于全局变量,不会被GC回收,它们会一直占用内存。

        (7)对象不用时最好显式置为Null

                 一般而言,为Null的对象都会被作为垃圾处理,所以将不用的对象显

                 式地设为Null,有利于GC收集器判定垃圾,从而提高了GC的效

                 率。

        (8)分散对象创建或删除的时间(个人觉得这个似乎不太现实)

                 集中在短时间内大量创建新对象,特别是大对象,会导致突然需要大

                 量内存,JVM在面临这种情况时,只能进行主GC,以回收内存或

                 整合内存碎片,从而增加主GC的频率。集中删除对象,道理也是一

                 样的。它使得突然出现了大量的垃圾对象,空闲空间必然减少,从

                 而大大增加了下一次创建新对象时强制主GC的机会。

转载于:https://www.cnblogs.com/jialanshun/p/10926997.html

Claude记忆系统合并:跨场景记忆让AI真正成为开发协作者 大模型本身是无状态的,每次请求只依赖当前上下文,因此聊天、编程、协作等场景之间往往存在记忆割裂。Agent的记忆能力由此成为AI从工具升级为协作者的关键分水岭。短期记忆依赖上下文窗口,长期记忆则依靠用户偏好与项目规范沉淀,而情景记忆与程序性记忆分别对应会话历史和工具调用技能。Anthropic将聊天与Claude Cowork记忆系统合并,构建统一记忆层,实现了跨场景自动记住用户偏好与项目上下文。工程实践上,Claude Code通过CLAUDE.md项目记忆文件固化团队规范,结合MCP协议扩展工具能力,让 阅读详情

相关推荐

AI Agent记忆工程实战:从短期、长期到外部记忆的架构设计与避坑指南

在构建具备连续对话能力的智能体时,记忆系统是其核心组件,它决定了智能体能否像人类一样在交互中保持连贯与智能。其基本原理在于通过分层架构管理信息:短期记忆处理当前会话的上下文,维持对话连贯性;长期记忆则负责存储跨越会话的知识与用户档案,实现个性化服务;而外部记忆通过工具调用访问实时数据与系统,确保信息的准确性与时效性。这项技术的核心价值在于解决智能体的“健忘”问题,提升其任务完成效率和用户体验。在实际应用场景中,例如智能客服、个人助理和复杂任务自动化,一个设计良好的记忆系统能显著提升智能体的实用性和可靠性。本

weixin_33834628的博客 685

记忆方法

1. “351-351”记忆法 这个方法的重点就在于掌握最恰当的复习间隔。具体做法是,当你把需要学习的内容全部记住后,要尽量在3个小时之内回忆一遍,接下来,分别在5小时内、10小时内、3天内、5天内、10天内复习一遍,经过这6次的学习,长期记忆就会形成,你对这部分内容的记忆会相当深刻。 2. 整体复习 我们在复习背诵的文章时,遇到记不起来的段落不要翻书查看,把这一段略过去,继续往下回忆,整篇

qq_38672263的博客 3714

MemOS革命:上海交通大学团队如何让AI拥有类人记忆系统

上海交通大学团队提出的MemOS(记忆操作系统)为AI构建了类人记忆系统,解决了大模型长期存在的“记忆困境”。该系统通过参数记忆、激活记忆和明文记忆三层架构,实现了记忆的智能调度、转化与长期存储,显著提升了AI在复杂推理和个性化交互中的表现,让AI能够真正记住并利用用户信息,迈向更智能、更贴心的数字伙伴时代。

weixin_29297127的博客 292

浅谈学习与记忆

浅谈学习与记忆

cnds123的专栏 1155

海康威视工业相机SDK二次开发实战:多相机同步采集与图像存储

本文详细介绍了海康威视工业相机SDK二次开发实战,包括多相机同步采集与图像存储的优化方案。通过MVS软件搭建开发环境,实现硬件与软件触发同步采集,并提供高效的图像存储管理技巧,帮助开发者提升工业视觉项目的效率与稳定性。

weixin_29168813的博客 666

SNAP新手避坑指南:手把手教你搞定Sentinel-2影像的镶嵌与重采样(附详细参数)

本文为SNAP新手提供Sentinel-2影像处理的详细指南,重点讲解镶嵌与重采样的关键步骤和参数设置。通过实际案例和常见问题解决方案,帮助用户避免常见错误,高效完成遥感影像处理任务。

weixin_29271263的博客 406

基础心理学MOOC|记忆系统以及遗忘规律

【记忆的基本概念】记忆:指人脑对经验的保留过程,其中经验包括我们所感知过的事物、思考过的问题、体验过的情绪和练习过的动作等等。记忆的环节:识记->保持->再认->回忆识记:识别并记住事物,仅仅是一种初步的记忆;保持:巩固已经获得的知识经验的过程,是进一步记住的过程;再认和回忆可看作检验记忆效果的环节。再认:经验过的事物再次出现在面前,个体将其认出来(eg 选择题);回忆:经验过的...

笔记本 2302

ubuntu18.04在carla中导入Roadrunner自建的地图

进入Carla根目录下的Import文件夹在Import文件夹下面新建一个文件夹 这里我取名为RoadA进入新建的文件夹,创建json文件,json文件的名字与文件夹名字相同再将从RoadRunner中导出的地图文件夹(map)放入新建的文件夹目录下重点关注.fbx和.xodr文件然后打开新建的json文件添加并修改如下代码name为RoadRunner中导出的地图文件夹名字。

justinyjf的博客 1898

《记忆力心理学》5个方法 让你过目不忘

短期记忆只有转化为长期记忆才能对我 们的生活产生有效的帮助。 所谓记忆力强,其实就是一直在跟遗忘抗争。

海阔天空 1467

ABAP CDS SELECT, parameters 全面解析:把参数化视图玩明白(含可运行示例)

这篇技术博客介绍了ABAP CDS中参数化视图的用法与实践。文章从业务需求出发,解释了参数化视图的必要性,并详细说明了语法规则、参数类型匹配、视图内部参数引用等关键点。重点展示了在JOIN和ASSOCIATION中传递参数的写法,提供了航线分析的完整业务案例和可运行代码示例。文章还总结了视图实体与DDIC视图的差异、会话变量使用技巧等实践要点,特别强调了JOIN中必须显式传参的语法要求。通过真实场景演示,帮助开发者掌握参数化CDS的高效应用。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 362

《C#零基础入门之百识百例》(七)算数运算符 -- 圆的面积

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C# 有丰富的内置运算符,本文带你学习C# 中算数运算符。

陈言必行 -- Unity游戏开发领域优质博主 3613

我给 AI 编程做了一套跨 Codex 和 Cursor 的共享记忆

很多人用 AI 写代码时,都会遇到一个很烦的问题:AI 很强,但记不住。

m0_59163425的博客 296

康复训练监测系统:基于YOLOv8的患者动作规范识别

本文系统介绍了基于YOLOv8的康复训练动作规范识别系统,从理论背景、数据准备、模型训练、推理应用到UI界面,提供了完整技术链条及代码示范。希望对康复领域的智能监测应用提供参考和借鉴。

YOLO 453

彻底根治Hermes失忆!MemOS插件直接拉满AI长期记忆

我还没摸透MemOS全部功能,但目前体验已经彻底解决我最大痛点。如果你天天用Hermes、OpenClaw写代码、跑项目,一定要装本地插件试几天。它的价值不是装完立刻就能感受到,得带着它完成完整项目,看着经验、技能一点点自动沉淀,才能明显感觉到AI越来越贴合你的工作习惯,完全不用反复重复需求。P.S. 挖到宝藏AI教程!全程通俗易懂,风趣幽默,零基础轻松入门,传送门https://blog.youkuaiyun.com/qq_34419312。

我是 二川兄,对Web开发、GIS开发、3D模型、机器学习、面试技巧等方面都有一些涉猎~ 欢迎您加入技术交流圈!你可以在我的文章末尾找到我~ 431

基于YOLOv8的智能肿瘤检测系统:从图像到诊断的深度学习应用——含代码和论文

本文提出了一种基于YOLOv8深度学习的智能肿瘤检测系统,用于医学影像(CT/MRI/X光)的自动分析与诊断。针对传统人工阅片效率低、主观性强的问题,系统采用最新的YOLOv8目标检测算法,通过改进的C2F骨干网络、Anchor-Free检测头和解耦头等创新设计,实现高效精准的肿瘤定位。文章详细阐述了模型架构、数据处理流程、训练优化方法及PyQt5用户界面开发,为临床提供可靠的AI辅助诊断工具。实验结果表明,该系统在速度和准确率上达到良好平衡,有望提升肿瘤早期筛查效率。

FJN110的博客 199

前拉后推计划逻辑适用于哪些行业和企业规模?

《前拉后推计划逻辑的行业适用性分析》摘要:前拉后推计划逻辑(需求端后推锚定交付、供应端前拉匹配资源)最适用于需求波动大且具规模效益的行业,包括家具制造(定制化需求+批量运输)、机械装备(非标设备+部件采购)、消费电子(短周期产品+核心部件备货)及汽车配套(交期绑定+批量生产)等领域。该模式要求企业具备:1)独立计划部门;2)ERP/MES等信息系统;3)资源冗余能力,故更适配中型(1-10亿营收)和大型企业(10亿+)。小型企业需简化应用,仅聚焦关键环节。不适配需求稳定(如快消品)、无规模效益或短周期生产的

追随内心 144

在学东西的时候,大脑为什么会欺骗自己学会了

记住:真正的学会,是当你不再依赖“感觉会了”,而是能证明自己“做到了”。元认知指“对思考的思考”,即评估自身学习状态的能力。当信息呈现方式简单流畅(如重复阅读、被动听讲)时,大脑误将“流畅感”等同于“掌握感”。在学习过程中,大脑“欺骗”自己以为已经学会的现象,通常与认知偏差、记忆机制和学习策略的局限性有关。大脑倾向于用最小能耗处理信息,可能过早终止深度学习,将表层记忆误判为掌握(进化机制:节省能量以应对突发情况)。方法:用实际成果检验学习效果(如“能独立完成一道题/用外语对话5分钟”),而非主观感觉。

weixin_42908597的博客 737

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

每天读一点好玩心理学--记忆

人类在获取外部信息的时候,80%靠视觉完成的。 1.什么是认知心理学 1)知觉,记忆,思考,学习,换句话说:视,听,记忆 2) 制造厂为了开发出了更容易使用的家用电器,更方便操作的汽车,更简单的电视,手机 都用到了认知心理学 3)人类瞬间最多能记住几位数字? 平均是7位,不过大体也在 -2之内 手机号码一连串写出来,很难记忆,如果分成两组,每组4位数字,就好记多了,便于记忆

张永光的博客 2万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

关于知识整理、积累与记忆

在去年的年度总结中有提到过一个关于知识积累方面的困惑,最近被问起今年的年度总结中怎么没有再提及去年提出的那些问题,实际的原因是忘记了……这也正说明了对于像我这种忘性巨大的人来说知识积累真是一件迫在眉睫的事情,实际上在过去的一年中其实也做过各种尝试,虽然并没有算解决了这个问题,但是也不妨趁此机会分享一下我的一些尝试和想法吧。 首先说一下背景,我自己是一个记忆力比较不行的人,特别是短期记忆,比如

479

总体记忆法

总体阅读法是指将整篇文章作为一个总体,按照一定的步骤,有顺序、有目的的来阅读,整个阅读过程井井有条,从而使阅读效果大大提高。这种阅读法,就像你根据自己的需要,拿着写好的购货单去商店买东西,这样很快就能买到所需的东西。   总体阅读法是“定势”理论在阅读中的灵活运用。例如,先让一个人反复地看两个大小不等的球,然后再让他看两个大小相等的球,在这种情况下,他就会觉得这两个球仍然大小不一。这个人所产生的这...

幸福着迈向国荣 159

零Token记忆:打造高效LLM Agent的架构关键

在大模型应用开发中,上下文窗口与Token消耗始终是LLM Agent落地的关键瓶颈。传统方案将历史对话、业务画像等全部塞入Prompt,导致每次请求的Token成本线性增长,甚至记忆维护的代价超过任务本身。Zero-Mem提出一种架构思路:将Agent记忆的写入、更新、检索等操作从依赖大模型的“智能行为”转变为确定性系统调用,即零Token记忆层。这种设计不仅大幅降低推理成本,还能提升响应速度与记忆一致性。在客服、知识助手等场景中,通过向量检索与外部记忆存储,Agent只需在需要时把少量相关结果拼入上下文

weixin_30580341的博客 383

语言智能体空间记忆设计:如何通过“遮挡测试”构建动态世界模型

在人工智能与机器人领域,构建具备物理世界理解能力的智能体是核心挑战之一,这直接关系到**具身智能**的落地应用。其关键在于让智能体不仅能处理当前感知信息,更能形成持续、连贯的环境认知,即空间记忆。空间记忆的原理在于将离散、瞬时的感知整合为动态、结构化的内部模型,其技术价值在于支撑智能体进行规划、推理和长期任务执行。在家庭服务机器人、自动驾驶、虚拟助手等应用场景中,智能体常需处理物体被遮挡、移出视野等动态变化。本文聚焦于“遮挡”这一关键测试基准,探讨如何设计记忆系统以记住暂时不可见但理应存在的物体,从而自然收

weixin_34221276的博客 480

SCG-MEM:基于模式约束生成的智能体记忆系统构建指南

在构建基于大语言模型的智能体时,如何实现稳定可靠的记忆是核心挑战。传统方法如将对话历史塞入上下文窗口或使用向量数据库检索,常面临信息失焦、结果杂乱、难以支持结构化推理等问题。其根本在于,智能体决策所需的知识应是有组织、可推理的结构,而非信息的简单堆砌。模式约束生成技术为解决这一难题提供了新思路,它通过预定义的结构化模板来规范记忆的写入与读取,将记忆从被动存储库转变为主动的知识构建引擎。这种技术能显著提升记忆的质量、一致性与可用性,是实现具备长期一致性和可靠性的复杂智能体(如多轮对话客服、自主规划AI助手)的

weixin_30561177的博客 335

mfsocket怎样彻底删除_催眠能删除我那些痛苦的记忆吗?(上)

聊起“催眠”,很多人会有这样一种需求或疑问——催眠能删除我那些痛苦的记忆吗?那么,今天我们就来聊一聊这个话题。在这之前,我们先思考一个很重要的问题——记忆对我们人生具有什么样的价值和意义?从人生的发展心理学来讲,过去的所有记忆(无论是痛苦的还是快乐的记忆),它们都是我们今后(以及当下)怎样去很好生活的一个重要的资源。过去那些痛苦的记忆可以让我们在未来(包括当下)不再犯同样的错误;过去那些快乐的记忆...

weixin_39715907的博客 280

CLAUDE.md 从 30 行到 1000 行,如何构建自剪枝记忆系统?

随着 AI 编码助手在复杂项目中的普及,如何高效管理其上下文记忆成为关键。CLAUDE.md 作为项目规范文件,动辄上千行,会导致模型指令稀释、token 预算超支,甚至出现规则冲突。本文从记忆系统角度出发,介绍自剪枝记忆机制的原理与实现——通过为每条规则附加元数据,结合时效性、命中率和冲突检测策略,自动淘汰过期信息,保留核心约束,让记忆文件保持精简高效。这套方案适用于 Claude Code、Cursor 等工具,能够帮助开发者构建可持续维护的 agent memory,提升模型在长周期项目中的稳定表现,

weixin_34210740的博客 451

Claude合并聊天与Cowork记忆:跨场景上下文使用全解析

在AI对话工具中,记忆系统是决定上下文连续性的核心。用户在同一工具的不同场景间切换时,若记忆无法共享,往往需要反复交代身份、偏好与项目背景。Anthropic将Claude聊天记忆与Cowork工作空间记忆合并,使偏好、项目信息等能在聊天、工作空间及命令行工具间自动延续。理解这一机制,能帮助用户避免重复输入,提升跨场景协作效率。本文围绕记忆合并的原理与边界,从最小验证流程、环境准备、常见报错排查到落地建议,梳理一套可上手的实践方法。

weixin_33778544的博客 366
上一篇: 梦学谷视频笔记整理
下一篇: tomcat
anshuo7139
博客等级 码龄10年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值