自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 基于spring ai的java后端multi-agent项目(已开源)

本文介绍了一个开源的多智能体协作系统,支持主智能体调度子智能体完成复杂任务(如报告生成),具备Plan/Execute和ReAct混合执行模式、动态任务重排、任务拆解与并发执行能力。系统集成了AgenticRAG检索工具,采用Skill+SOP工作流机制模块化专家能力,并提供丰富的工具集(网页爬取、图片生成等)。该项目适用于Java后端方向的智能体开发,已在GitHub开源,欢迎交流学习。项目地址:https://github.com/OWWZO/ai-agent

2026-05-30 17:07:19 45

原创 多智能体协作平台项目开源 java后端+ai技术栈

摘要:OWWZO/ai-agent项目实现了多智能体协同系统,核心功能包括:1)采用PlanExecute+ReAct混合执行模式,支持任务动态拆解与多智能体协作;2)建立共享工作区实现跨工具数据流转;3)基于CompletableFuture实现工具并发执行;4)构建Skill+SOP标准化作业体系;5)集成多模态混合检索增强RAG能力;6)开发MCP统一管理系统;7)实现全链路执行记录与历史回放功能。该系统显著提升了复杂任务的执行效率、可靠性和可观测性。

2026-05-25 13:13:29 228

原创 2025年全面认识SDD:规范驱动开发到底是什么?

SDD 可以理解为:在写代码之前,先编写结构化、可验证、可执行的规格说明,再由这些规格驱动后续的设计、开发、测试与维护。系统要做什么输入输出是什么约束条件有哪些异常和边界场景如何处理验收标准是什么测试应该如何验证所以,SDD 的关键不是“文档多”,而是“规格清晰且可执行”。明确功能目标、用户场景、输入输出、边界条件、异常处理、性能约束、安全要求和验收标准。SDD 并不是万能方法,也不会自动替代经验丰富的工程判断。

2026-04-11 20:18:22 775

原创 Vibe Coding 有哪些实用技巧?这篇文章讲透工作流、提示词和避坑方法

做什么为什么做成功标准是什么Vibe Coding 适合快速原型、样板代码、探索性开发高质量使用它的关键,不是“多会聊天”,而是“多会拆任务、给上下文、设约束、做验证”小步生成、持续反馈、人工复审、补齐测试模糊提需求、一次生成过多、无脑接受、直接上线未来很长一段时间,真正有竞争力的开发者,可能不是“完全手写代码的人”,也不是“完全依赖 AI 的人”,而是那些知道什么时候该交给 AI,什么时候必须自己接管的人。你现在的 Vibe Coding 工作流,最有效的一招是什么?

2026-04-03 12:08:57 405

原创 用 DeepWiki 线索看 OpenClaw:它到底用到了哪些 AI 技术?

如果用一句话总结 OpenClaw 用到的 AI 技术,我会这样概括:OpenClaw 采用了“大模型接入 + 多代理路由 + 会话控制 + 工具调用 + 浏览器自动化 + 多模态语音 + 技能生态 + 安全沙箱”的综合式 Agent 技术路线。它最值得关注的,不是某一个单点技术,而是把这些能力拼成了一套本地优先、可常驻、可执行、可扩展、可控风险的个人 AI 助手系统。对于正在关注 AI Agent、个人智能体、自动化助手和本地优先 AI 产品的人来说,OpenClaw 是一个很值得持续跟进的项目。

2026-04-02 23:49:14 383

原创 程序员最浪漫的一天:我对 Bug 说了分手,它却回我一个 500

联调时,我发现接口字段不对。我问后端:“哥,这个userName怎么变成了?后端回答:“为了兼容历史版本。我又问:“那历史版本里有这个字段吗?后端沉默两秒,说:“没有,但我希望未来它有。代码可以先写,世界观必须完整。后来查了半天,发现真正的问题是我本地缓存没清。我表面平静,内心已经把自己开除了三遍。亲爱的 Bug:我们认识很多年了。你总在我最忙的时候出现,在我最自信的时候打脸,在我准备下班的时候微笑着向我招手。你像前任,平时不联系,一联系就要命。我曾无数次对你说分手,

2026-04-02 23:33:00 339

原创 什么是MCP(Model Context Protocol)?全面解析

MCP(Model Context Protocol)是由Anthropic公司提出的一个标准化协议框架,专门用于解决AI模型之间的上下文传递和通信问题。它的核心目标是建立一个统一的上下文交换标准,让不同的AI模型能够高效、准确地共享和理解上下文信息。MCP使用Protocol Buffers或JSON Schema定义消息格式,确保类型安全和版本兼容性。

2026-02-19 01:24:22 293

原创 本地缓存 vs Redis缓存:深入对比与实战应用指南

对延迟要求极其严格数据量小且无扩展需求预算有限且运维能力不足单机应用或原型系统分布式系统架构需要数据共享和一致性有扩展性和高可用需求需要丰富的数据结构和功能对于大多数生产系统,推荐使用Redis作为主缓存在Redis基础上,针对特定高频访问数据使用本地缓存作为补充根据业务特点设计合适的缓存策略和过期机制建立完善的缓存监控和告警机制缓存技术的选择不是非此即彼的二元选择,而应根据业务场景、技术团队能力、预算约束等多方面因素综合考虑。

2026-02-19 01:11:32 331

原创 vcpkg在C++中的用法详解

vcpkg是一个开源的C++包管理器,它通过提供一个统一的接口来管理第三方库的下载、编译和安装。vcpkg解决了Windows下常用依赖包的管理问题,这几乎和各大Linux发行版都早已经解决的问题(而且做得更好),但也是不小的进步了。

2026-02-12 21:03:02 362

原创 深入解析Java HashMap.get()方法的完整执行流程

的高效源于:✅ 哈希扰动提升分布均匀性;✅ 位运算桶定位零开销;✅ 首节点快速命中优化热点访问;✅ 链表→红黑树动态升级应对哈希碰撞;✅null键统一归零处理,逻辑简洁可靠。理解此过程,是写出高性能、健壮 Java 代码的基础。

2026-02-11 18:10:01 326

原创 哈希冲突的5种经典解决方法详解

方法 | 空间开销 | 平均查找 | 最坏查找 | 删除难度 | 聚集问题 || 线性探测 | 低 | O(1/(1-α)) | O(n) | 中 | 严重 || 二次探测 | 低 | O(1/(1-α)) | O(√n) | 中 | 中等 || 再哈希 | 低 | O(1/(1-α)) | O(n) | 中 | 极轻 || 链地址 | 中高 | O(1+α) | O(n) | 易 | 无 || 公共溢出区 | 中 | 取决于溢出区 | O(n) | 难 | 无 |

2026-02-11 18:01:21 383

原创 Java线程安全的集合是什么?原理与使用指南

线程安全集合是指在多线程环境下,多个线程可以同时访问而不会导致数据不一致或程序异常的集合类。它们通过各种同步机制(如锁、CAS操作、不可变性等)来保证操作的原子性和可见性。

2026-02-10 23:33:47 301

原创 深入理解Java对象生命周期:从创建到回收的完整解析

创建阶段:对象的分配、初始化和引用建立使用阶段:对象的访问、操作和状态变化回收阶段:对象的不可达、垃圾回收和内存释放每个阶段都涉及到JVM的不同机制和内存管理策略。理解这三个阶段的内在联系,是编写高质量Java代码的基础。

2026-02-08 14:39:27 509

原创 深入理解Java对象生命周期:从创建到回收的完整解析

创建阶段:对象的分配、初始化和引用建立使用阶段:对象的访问、操作和状态变化回收阶段:对象的不可达、垃圾回收和内存释放每个阶段都涉及到JVM的不同机制和内存管理策略。

2026-02-08 14:33:34 499

原创 深入理解Java synchronized锁升级过程

synchronized锁升级机制是Java并发编程中的重要优化技术,它通过动态调整锁状态,在保证线程安全的前提下尽可能减少性能开销。理解锁升级过程对于编写高效的多线程程序至关重要。关键要点总结锁升级是单向过程:无锁 → 偏向锁 → 轻量级锁 → 重量级锁偏向锁撤销需要全局安全点,这是其被废弃的主要原因之一轻量级锁基于CAS操作,避免了用户态到内核态的切换重量级锁涉及操作系统调度,开销最大但最安全JVM提供了丰富的配置参数,可以根据应用特点进行调优未来发展趋势偏向锁的演进。

2026-02-07 21:47:16 307

原创 Java并发编程:synchronized与ReentrantLock深度对比

对比维度 | synchronized | ReentrantLock || JVM内置隐式锁 | 显式锁(java.util.concurrent) || 自动(进入/退出代码块时) | 手动(需显式调用lock/unlock) |

2026-02-07 21:31:48 343

原创 Java内存模型(JMM)深度解析:掌握并发编程的核心

Java内存模型是理解Java并发编程的基石。掌握JMM的核心概念——原子性、可见性、有序性,理解happens-before原则,正确使用volatile、synchronized和final关键字,对于编写正确、高效的并发程序至关重要。深入理解内存可见性问题正确选择同步机制遵循最佳实践进行充分的测试只有深入理解JMM,才能写出真正线程安全的Java程序,避免那些难以调试的并发bug。

2026-02-06 23:00:08 286

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除