- 博客(57)
- 资源 (9)
- 收藏
- 关注
原创 大模型本质是词语接龙:Transformer的极简进化史
本文用大白话梳理了LLM从笨到聪明的进化全过程。最早的N-gram就是个数词频的,没见过的搭配直接判零、看不远;Embedding给每个词配坐标,让意思相近的词靠在一起,学会了举一反三;RNN揣了个小本本想记住全文,但传远了信息就糊;LSTM加了分类抽屉缓解了记忆问题,却还是得排队算;直到Transformer让每个词直接看全句、同时算,才成了今天大模型的底座。
2026-09-19 19:23:14
70
原创 多agent系统工程落地:从架构设计到治理体系的完整方法论
本文聚焦多agent系统工程落地的普遍痛点,指出多数系统效果不及预期的根源不在模型能力,而在组织方式设计失当。文章提出多agent价值的核心判断标准:协作过程是否引入单 agent 生成时无法获得的新信息,明确了适用场景边界。全文从架构、角色、通信、调度、治理五个核心工程维度展开,拆解各维度的矛盾对立、落地解法与实践技巧,结合业界主流框架案例验证,给出分阶段演进路径,为生产级多agent系统设计提供可落地的方法论参考,帮助团队平衡效率与稳定性,避免盲目堆叠模型。
2026-09-16 23:41:15
150
原创 大模型四层推理缓存体系深度拆解:KV Cache、Prefix Cache、Prompt Cache与Semantic Cache
深度拆解大模型四层推理缓存体系:KV Cache、Prefix Cache、Prompt Cache 与 Semantic Cache。四类缓存按复用粒度分层递进,分别对应 token 级、前缀级、完整 Prompt 级、语义级的计算复用,并非替代关系。文章解析各层缓存底层原理、核心矛盾与工程落地方案,梳理请求流转链路,结合多轮对话、RAG 等场景给出架构选型与迭代路径,提供可落地的评估与优化方法论。
2026-09-14 23:37:05
378
1
原创 手打万字长文 | AI Agent的工程体系:Prompt、Context、Harness、Loop四大工程
本文系统拆解构建可靠AI Agent所需的四大工程体系:prompt工程解决“确定性与创造性”的矛盾,context工程解决“信息饥渴与过载”的矛盾,harness工程解决“能力开放与安全管控”的矛盾,loop工程解决“自主性与目标漂移”的矛盾。四者协同,将大模型从“会说话”的玩具,变为“能干活”的生产力系统。
2026-09-11 06:32:12
322
原创 Agent评测指南:不要只看结果,要看过程、成本和安全
面向一线工程师的Agent评测实践指南。Agent不是输入到输出的函数,它自己找路、自己调工具,只看最终答案会漏掉路径偏差、成本失控和安全风险。本文从工程视角拆解Agent评测:四层指标(结果、过程、成本、安全)同评,三种评测器(代码规则、大模型评委、人工)按场景选,双轨闭环让线上失败自动回流成离线用例。附五类高频翻车点和四阶段落地路线,把评测接进CI门禁,让上线后出事变成合码前拦住。
2026-09-08 07:33:09
293
原创 agent记忆系统
拆解了Agent记忆系统的五大核心环节:引入时机、写入策略、保鲜机制、共享边界与健康监测。作者指出,多数“Agent失忆”问题其实源于工具契约或配置错误,而非记忆系统缺陷。文章对比了mem0、zep、letta等主流框架的实践,提出用时间戳过滤替代降权来作废错误记忆、维护依赖链追踪级联失效、采用半自动冲突检测等落地方法,为构建可靠、防污染的Agent记忆体系提供了可操作的工程指南。
2026-09-05 12:55:55
304
原创 写了几十个Skill之后,我总结出这套工程方法:从「触发不了」到「生产可用」
本文为解决Skill“触发不了”和“执行不靠谱”这两大痛点,将Skill拆分为三层架构:L1元数据负责路由发现、L2指令控制执行行为、L3资源与代码提供确定性,并逐层给出优化策略。
2026-09-03 21:59:19
301
原创 一行代码让Agent账单翻10倍:KV Cache友好的Agent设计
Agent跑得又慢又贵?问题往往出在KV Cache被打穿。本文从KV Cache原理讲起,给出三条铁律:系统提示词与工具定义字节级固定、动态信息一律追加到末尾、使用标准API格式勿自行拼接。并以Qwen3、DeepSeek、Claude为例,剖析不同模型对思维链回传的差异与缓存杀手,助你建立缓存可观测性,让首Token延迟与账单同时下降。
2026-09-02 20:59:47
331
原创 从Agent Loop到PlanMode:一套能跑生产的AI Agent工程骨架
以操作系统类比Agent体系:Harness管资源,LLM为CPU,AgentLoop为内核调度循环,Two-Stage ReAct为dry-run模拟执行,四个工具(读、写、改、bash)对应文件系统操作,AGENTS.md/Skills/PlanMode构成三级存储。跑得稳需明确终止条件、工具边界、读写并发优化与状态持久化。
2026-09-01 22:01:39
370
1
原创 docker和k8s
container有自己的ip,它的ip映射到主机的docker0这个虚拟网卡上,它们能访问外网,外网不能访问它们(外网要访问,可以加通过端口映射,将容器端口映射到主机端口上)。原理:当 Docker 守护进程启动时,会在主机上创建一个名为docker0的虚拟网桥。容器在使用bridge模式时,会创建一对虚拟网卡,一端在容器内,通常命名为eth0;另一端在主机的docker0网桥上。容器通过docker0网桥与外部网络通信,主机充当容器与外部网络之间的桥梁。
2025-02-26 11:28:01
1544
原创 事务的原理
锁定少:一阶段不强锁定,通过数据前后镜像来回滚,RM锁定粒度和时长与传统2PC不同。无侵入:对业务代码无侵入,开发者无需关心事务的具体实现细节,只需关注业务逻辑本身。高性能:可以把2阶段异步化,这样只处理了一阶段就返回响应,然后异步慢慢处理二阶段。
2024-09-08 17:39:34
1038
原创 redis
当AOF文件很大之后,会在一个子进程里进行rewrite,相当于做了压缩,rewrite的同时会正常write,这样会产生两个文件:rewrite的压缩小文件和正常write的文件,当rewrite完成后,就把正常write的文件覆盖,新的日志写入到rewrite完后的文件中。redis的“网络请求+kv处理”一直是单线程,因为redis的瓶颈在内存而不是CPU,用多线程帮不了忙,还需要处理线程同步的问题,用单线程的话,还不用考虑上下文切换的性能开销。redis4可以用unlink来异步删除缓存的大对象。
2024-09-06 20:09:23
1559
原创 Cookie/session/token/jwt
1. cookie长度有限制,一般最大4k,存储在浏览器在中,受同源策略限制,不能跨域访问。 一般是明文传输,容易被篡改,不要在里面放用户名、密码等敏感信息。 每次请求,浏览器会自动带上cookie。2. session存储在服务端,占用服务端的资源。 客户端通过cookie中的会话id与服务端的session关联,也可以把sessionId放到url、隐藏表单中传给服务端。 相对安全,因为关键信息都存储在服务器端。3. token客户端每次请求都带上token,服务器通过一定的规则
2024-09-04 13:09:43
622
原创 缓存读写策略
我看到过两种分类方式,其实大同小异,都是按DB和缓存先处理谁(或者说以谁为主)来分的,只是角度不同,为了加深理解,都记下来吧。读的时候,如果缓存里读到了,就直接返回读到的结果,这一步是通用的,下面就不赘述“读”时“从缓存读到”的情况了。
2024-09-01 20:44:44
637
原创 Spring Bean的生命周期
1. bean的作用域singleton:单例模式,spring bean默认就是这个模式。 prototype:每次请求都会创建一个新的bean。 request:每次http请求都会创建一个新的bean,该bean在当前http request内生效。 session:每次http请求都会创建一个新的bean,该bean在当前http session内生效。 globle-session:全局session作用域。2. bean生命周期实例化 属性赋值 初始化 销毁2.1. 实
2024-08-31 14:12:31
430
原创 IO多路复用
需要处理较多文件描述符,但又不想受到select最大数量限制的场景下可以使用。高并发的网络服务器、分布式系统等需要同时处理大量连接的应用程序。适用于低并发场景,或者对性能要求不高的小型应用程序。
2024-08-30 12:51:12
461
原创 跨域请求和同源策略
一个网页中的脚本尝试向不同源的服务器发起请求时,就称为跨域请求。例如,网页http://a.com中的脚本向http://b.com发起的请求就是跨域请求。
2024-08-27 19:44:30
421
原创 Java类加载器
开发人员可编写自己的类加载器,以实现灵活的类加载策略,如加解密字节码、热部署(运行时替换类)、远程加载(加载网络上的类)、隔离类(避免冲突和安全)。若未指定,自定义类加载器的父加载器默认是应用程序类加载器。可以指定自定义类加载器是扩展、应用程序、其他自定义类加载器作为父加载器。不能指定启动类加载器作为父加载器。启动核心无法动,扩展加载扩展类。应用加载开发类,自定灵活随便搞。启动:超市仓库,存放核心货物,对应加载核心类库,神秘不可见。扩展:进口商品区,带来特色商品,如加载扩展类库增添功能。
2024-08-24 14:27:11
653
原创 Java的强软弱虚引用
JVM宁愿死,都不会回收。如果堆内存被强引用占满,JVM会OOMError、甚至崩溃,但就是不会去回收强引用。强引用就是这么强。
2024-08-22 14:50:17
491
原创 理解零拷贝
零拷贝(Zero-copy)是一种旨在减少数据在计算机里复制次数的方法,以提高数据传输的效率。下面用从硬盘读取一个文件,通过网络发送出去的场景来介绍零拷贝。
2024-08-22 10:26:15
503
原创 JVM内存区域和GC
由于JVM的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。它可以在满足短停顿时间的同时,保持较高的吞吐量,能够有效地处理大内存和多处理器环境下的垃圾回收问题。它的目标是达到一个可控制的吞吐量,即运行用户代码的时间与垃圾回收时间的比例。进行垃圾回收时,会暂停所有用户线程,使用多个线程进行垃圾回收操作,比Serial的垃圾回收时间短。一个较小的内存空间,是当前线程所执行的字节码的行号指示器。
2024-08-21 11:25:13
1345
原创 Java动态代理
静态代理就是B类中用A类去真正地做。正式点说就是,手动创建代理类,实现与目标对象相同的接口,并在代理类中调用目标对象的方法,同时可以在调用前后添加额外的逻辑。这里主要介绍动态代理,有两种常见的动态代理方式。Spring的AOP中,如果目标对象实现了接口,则用JDK动态代理,否则采用CGLIB动态代理。
2024-08-18 11:54:48
792
原创 常见Java集合
TreeMap的key不能空,value可为空;TreeSet是包了TreeMap且只用它的key,所以TreeSet的元素不能为空;HashMap的key、value都可以为空;HashTable包了HashMap,但它为了线程安全,key、value都不能为空;HashSet包了HashMap且只用它的key,所以HashSet的元素可以为空;ConcurrentHashMap的key、value为了线程安全,都不能为空;
2024-08-16 08:23:09
1120
原创 Java IO
上面表中为了简单,只写了输入的,输出的流与输入是一一对应的(input对应output、reader对应writer)。DataInputStream读取基本类型(如int、float等);ObjectInputStream读取复杂对象,也就是用于序列化/反序列化的场景。FilterInputStream/FilterReader 可用于数据进行加密、压缩、转换,Buffered的那几个类就是继承了Filter的这些类来实现的。
2024-08-15 13:47:40
675
原创 操作系统内存管理
操作系统中的进程空间,也称为进程地址空间,是指为每个进程分配的独立的虚拟内存区域。进程空间为每个进程提供了一种隔离和保护的机制,使得不同进程之间不会相互干扰。每个进程都认为自己拥有整个地址空间,但实际上是通过操作系统的内存管理机制实现的虚拟映射。打个比方,进程空间就像每个进程自己的“独立房间”,房间里有不同的“区域”用来存放各种东西,而且每个房间之间是相互隔开的,保证了各自的“隐私”和“安全”。例如,进程 A 不能直接访问进程 B 的内存空间,避免了数据混乱和错误。
2024-08-14 12:30:00
466
原创 进程和线程
进程:资源分配的最小单位,这里的资源指内存。线程:调度和执行的最小单位,即CPU隔离。协程:用户态的轻量级线程。纤程是Windows系统对协程的一个具体实现,而协程是一个更广泛的概念,由编程语言或运行时库支持。一个线程可以有多个纤程。用户态:是指程序运行时的普通状态。在用户态下,程序只能访问有限的资源和执行受限的操作,比如进行一些基本的计算、访问自身的内存空间等。这是为了保证系统的稳定性和安全性,防止用户程序对系统造成破坏或非法访问关键资源。内核态:则具有更高的权限。
2024-08-12 19:28:46
779
原创 VPC虚拟私有云
VPC即虚拟私有云(Virtual Private Cloud)是在公有云上创建的一个逻辑隔离的网络。VPC是对网络资源的一种抽象,提供类似于操作系统的虚拟内存的功能,让每个用户在云上像是在独占地使用整个网络,无需担心IP地址冲突等问题。
2024-08-11 14:43:10
871
The C++ Standard Library
2012-07-26
Code Reading: The Open Source Perspective
2012-07-26
C++ Common Knowledge
2012-07-26
C++语言的设计和演化
2012-07-26
linux0.11版内核,学习用
2012-08-14
GPT免费使用了吗?
2026-09-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅