2026/4/18 4:19:50
网站建设
项目流程
做网站的中文名字,腾讯企业邮箱基础版,烟台市做网站找哪家好,途谷网站建设你好#xff0c;我是阿香。
前几天#xff0c;技术群里的小伙伴一直在安利 Solon AI。起初我还在想#xff0c;Java 生态里不是已经有 Spring AI 了吗#xff1f;出于好奇#xff0c;我抽空深入研究了一波#xff0c;结果真香了#xff01;
这不仅是一个 AI 框架#x…你好我是阿香。前几天技术群里的小伙伴一直在安利 Solon AI。起初我还在想Java 生态里不是已经有 Spring AI 了吗出于好奇我抽空深入研究了一波结果真香了这不仅是一个 AI 框架它更像是为 Java 开发者量身定制的 “智能体指挥部”。今天就来聊聊这个让我眼前一亮的顶级 Java Multi-Agent 开源项目。什么是 Solon AI简单来说Solon AI 是 Solon 生态中专注 AI 应用开发的轻量级框架。如果说大语言模型LLM是 AI 的大脑那么 Solon AI 就是它的 “神经中枢” 和 “拓扑指挥官”。它不仅仅提供了多智能体协作的架构其核心竞争力在于极致的轻量化、多协议编排能力以及天然的微服务基因。Solon AI 与 Spring AI 有哪些不同很多小伙伴会问“既然有了 Spring AI我为什么要看 Solon AI”两者的设计哲学完全不同Spring AI更像是一个“集成商”侧重于把 LLM 包装成一种资源如 Data Source 一样融入 Spring 业务流。它擅长的是简单的 RAG 和聊天。Solon AI原生为 Agentic智能体范式 而生。它强调的是“协议Protocol”通过多种团队协议TeamProtocols决定任务如何在 Agent 间流转。它更适合构建像“自动化软件公司”、“复杂风控博弈”这种需要多智能体深度协作的应用。就像我常说的“没有银弹选适合自己的”。如果你追求毫秒级启动、追求对协作逻辑的精细控制Solon AI 会让你爽到飞起。Solon AI 为什么强八大协作协议TeamProtocols这是它的杀手锏。从顺序流Sequential、层级制Hierarchical到去中心化的点对点A2A和模拟生物逻辑的蜂群协议Swarm它把多智能体协作玩出了花。死循环熔断机制独创的“信息素惩罚”机制能自动发现并拦截智能体之间的“踢皮球”行为防止 Token 在死循环中白白燃烧。确定性保障内置 TeamTrace 溯源。Agent 之间怎么沟通的、谁在摸鱼、谁在胡言乱语路径回放得清清楚楚。Java 原生友好利用ToolMapping注解直接把你的 Java 方法变成 Agent 的技能配合 ONode 进行结构化数据处理对 Java 开发者极其友好。极致性能延续了 Solon 框架的基因包体积极小冷启动飞快。快速入门1) 引入依赖在你的 pom.xml 中引入 Solon AI 的智能体核心包/* by yours.tools - online tools website : yours.tools/zh/generatepolkadotwallets.html */ dependency groupIdorg.noear/groupId artifactIdsolon-ai-agent/artifactId /dependency2) 基础智能体创建只需几行代码就能创建一个具备身份意识的 Agent。/* by yours.tools - online tools website : yours.tools/zh/generatepolkadotwallets.html */ // 初始化模型支持 OpenAI, DeepSeek, Qwen 等 ChatModel chatModel LlmUtil.getChatModel(); // 创建一个专业助手 SimpleAgent assistant SimpleAgent.of(chatModel) .systemPrompt(SimpleSystemPrompt.builder() .role(Java专家) .instruction(你是一个精通 Solon 框架的 Java 专家。) .build()) .build(); // 对话 String result assistant.prompt(Solon AI 怎么选协作协议).call().getContent(); System.out.println(result);3) 巅峰对决多智能体协作TeamAgent这是 Solon AI 最迷人的地方。我们可以轻易编排一个智能体协作的梦之队。public void testA2AFlowWithRole() { ChatModel chatModel LlmUtil.getChatModel(); // 1. 前端开发者负责编写代码并“移交” Agent webDeveloper SimpleAgent.of(chatModel).name(WebDeveloper) .systemPrompt(SimpleSystemPrompt.builder() .role(资深前端开发者) .instruction(任务根据用户需求编写完整的 HTML/JS 代码。\n 协作写完后请交给 Reviewer 审查代码质量。直接输出代码不要用 Markdown 格式。) .build()) .build(); // 2. 审查者负责质量把关 Agent reviewer SimpleAgent.of(chatModel).name(Reviewer) .systemPrompt(SimpleSystemPrompt.builder() .role(首席架构师) .instruction(任务审查 WebDeveloper 提交的代码查找安全隐患和性能瓶颈。\n 协作如果代码合格请交给 Archiver 归档如果不合格请打回给 WebDeveloper。) .build()) .build(); // 3. 归档员负责总结 Agent archiver SimpleAgent.of(chatModel).name(Archiver) .systemPrompt(SimpleSystemPrompt.builder() .role(文档管理员) .instruction(任务总结最终通过审查的代码功能并生成唯一的版本快照编号。) .build()) .build(); // 编排 A2A 团队 TeamAgent devTeam TeamAgent.of(chatModel) .protocol(TeamProtocols.A2A) // 核心开启点对点直连协议 .agentAdd(webDeveloper, reviewer, archiver) .maxTurns(6) // 兜底防止 Reviewer 和 Developer 陷入无限改 Bug 循环 .build(); // 执行任务 AgentSession session InMemoryAgentSession.of(project_v1); String result devTeam.call(Prompt.of(帮我写一个实现点击按钮换背景颜色的网页), session).getContent(); // 溯源你会看到 WebDeveloper - Reviewer - Archiver 的闪电接力 TeamTrace trace devTeam.getTrace(session); System.out.println(博弈链路: trace.getRecords().stream().map(r - r.getSource()).toList()); System.out.println(最终交付成果\n result); }进阶能力不只是协作A2AAgent-to-Agent协议支持 Agent 之间的“直接移交”。当 A 处理不了时它可以直接把任务“甩”给 B响应速度极快。结构化输出控制通过 ONode 配合 Prompt 约束Solon AI 能把 AI 那些天马行空的回复精准解析成你 Java 里的 POJO 对象。路径断言单测你可以像写 JUnit 一样写 Agent 测试。不只是断言结果字符串而是断言执行记录assert team.getTrace(session).getRecords().stream() .anyMatch(s - ContractNetProtocol.ID_BIDDING.equals(s.getSource()))。总结研究完 Solon AI 后我最大的感受是AI 应用开发正在从“单兵作战”转向“兵团作战”。Solon AI 的出现给了 Java 开发者一个强大的武器库不再需要羡慕 Python 生态Java 同样能优雅地玩转 Multi-Agent。工程化程度极高它解决了 AI 输出不可控、协作过程黑盒等生产痛点。微服务天然集成每一个 Team 都可以是一个微服务这太符合企业级架构的演进方向了。如果你正准备在 Java 项目里接入 AgentSolon AI 绝对值得你加入 Star 列表。Github 地址https://github.com/noear/solon-ai