资讯详情

AI Agent 脚手架系统架构设计:基于 Spring AI + Google ADK 的三层架构与技术选型实践

📅 2026/9/24 16:35:34 | 华诺云谱 👁 阅读
AI Agent 脚手架系统架构设计:基于 Spring AI + Google ADK 的三层架构与技术选型实践
文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载本文是《AI Agent 脚手架》项目第 1-2 节课程内容聚焦于对智能体脚手架进行应用技术选型与工程框架设计。文章完整阐述整个应用的 3 层架构基础底座、脚手架、业务场景、底座运行流程YML 配置 → 智能体装配 → Runner 执行器 → Spring 容器 → 通用对话接口以及基于 Maven Archetype 的脚手架发布方式并结合仓库中装配域Armory各节点的源码设计细节做纵深印证。读完本文你将掌握一套企业级 AI Agent 智能体工程从技术选型到框架落地的完整设计思路以及如何在业务中像搭积木一样编排多智能体协作流程。一、本章诉求先做技术选型再做方案设计对 AI Agent 智能体脚手架进行应用技术选型和工程框架设计是本节的唯一诉求。这个过程等同于大家接到一个新项目时要做的事分析项目实现过程、梳理过程中所需的技术能力并对未知的技术点进行案例验证。待全部梳理完成后再进行详细的方案设计。这一点对于初入职场或正在转型的开发者尤其重要。在实际公司里承接一个新项目/需求时会大量重复选型 → 验证 → 设计这件事你会遇到很多没用过却必须使用的技术或方案。随着积累的增加做这件事会越来越熟练、高效。相反如果之前的学习总是对照视频 CV 代码、希望一次就成功运行、害怕出错、不敢排查缺少思考与验证的过程那么很难积累真正的经验。因此正视自己的学习方法是本节传递的核心方法论。从仓库的课程规划看脚手架需求分析 一节已从业务背景说明了为什么需要脚手架2025 年起互联网公司纷纷通过 AI 赋能业务构建多样化的 AI Agent 智能体业务应用成为常态面对大量复杂的工程搭建需求亟需一套统一标准的框架快速创建项目、降低使用门槛与开发成本。而本节则进入技术视角回答用什么东西、以什么结构来完成这套脚手架。二、技术选型演进从 HTTP 接口到智能体编排框架在给出架构图之前先梳理清楚技术选型的由来这决定了脚手架的组件构成。仓库 脚手架需求分析 中完整回顾了 AI 应用开发的技术演进路径LLM 接口直连阶段大规模语言模型基本通过 HTTP 响应式接口对接每个业务各自封装重复劳动多。AI SDK 阶段为简化各自封装 AI HTTP 接口的复杂度出现了以 AI SDK 方式对接的设计提升开发效率与集成体验。能力扩展阶段AI 服务不再局限于简单接口调用引入了 RAG检索增强生成知识库、Tool 工具如 Function、MCP等能力同时不同厂商的大模型OpenAI、Google、智谱、阿里千问等在接口和功能上存在差异推动了类似Spring AI这类产品的诞生帮助开发者统一调用和管理多样化的 AI 服务。智能体编排阶段随着 AI Agent 概念兴起开发者开始设计支持顺序执行、循环执行分析与决策、并行执行等复杂流程的智能体方案。Google ADKAgent Development Kit智能体框架的出现标志着这一阶段的技术成熟和标准化趋势。据仓库总览 ai-agent-scaffold.md 记录2025 年 11 月 27 日 Google 在 Maven 仓库管理中心推送了 0.4.0 版本 ADK该版本新增了Spring AI 集成google-adk-spring-ai。正是基于这套服务组合项目选择了以Spring AI LangChain4j对照学习 Google ADK为核心的技术选型融合 MCP、Skills、Plugin、Session 等多项智能体开发技术构建通用智能体脚手架工程。分工上可以这样理解Spring AI 解决 AI 对接的前半部分把 AI API、Model、Prompt、RAG、ToolFunction、MCP等非常方便地构建出一个单一的 AI Agent 服务也可以称之为一个客户端。Google ADK 解决多个 AI Agent 怎么协同工作的问题包括 Sequential 序列顺序执行、Loop 循环执行、Parallel 并行执行而这些执行方式又可以组合搭配地配置到一个 Sequential 中顺序执行。说明Spring AI、LangChain4j、Google ADK 三套框架类似选择一套深入学习后其他的也都很容易上手。仓库以 Spring AI 为主线、LangChain4j 对照学习最终统一整合进 Google ADK 工作流编排中这部分在 工程初始化创建 及其后续课程中落地。三、整体架构设计基础底座、脚手架、业务场景三层整个应用架构分为3 层这是本节架构设计的核心骨架层级职责对应课程基础底座负责 Spring AI Google ADK 框架的使用重点是整个智能体工作流程的设计和使用第 2 部分约 20 节课程脚手架将基础底座使用 Maven 抽取为脚手架可快速复刻出一套基础工程第 3 部分3 节课程业务场景结合 draw.io 绘图操作 AI Agent 智能体做一套 AI 交互式画图系统第 4 部分6 节课程对应到仓库目录结构这一分层在 docs/md/project/ai-agent-scaffold 下体现得非常清晰part-2/为基础底座装配实现从工程初始化到会话服务接口part-3/为 Maven 脚手架配置与发布part-4/、part-5/则分别是 AI draw.io 交互式绘图 与 MobileOpenClaw 手机自动化网关 两个具体业务场景。这套分层的关键价值在于底座可复用智能体工作流的构建逻辑完全沉淀在基础底座中与具体业务解耦脚手架可复制底座经 Maven 抽取后成为工程模板新项目一键生成场景可插拔业务场景基于底座的能力做纵深细化这是企业里必备的架构设计——针对细化场景通用的编排往往失效需要通过脚手架快速落地新场景。从仓库 notes.md 中的面试归纳看底座在实现层面还严格遵循DDD领域驱动设计分层架构API 接口层 / 应用层 / 领域层 / 基础设施层核心采用组合模式Composite Pattern构建智能体执行规则树支持串行、并行、循环流转并结合工厂模式创建不同类型的 Agent/Tool 节点、策略模式处理不同的模型调用策略以及责任链设计思维处理节点间的上下文传递。这种设计解耦了底层模型Spring AI、Google ADK与上层业务逻辑使系统在面对新增 MCP 协议、对接新模型等扩展性诉求时能灵活迭代。四、底座运行流程YML 配置驱动智能体装配底座是整个脚手架的发动机其运行流程可归纳为一条主链路基于脚手架创建工程 → 使用YML 文件配置智能体 → 启动项目后执行装配api → model → agent → workflow → runner→ 注册到 Spring 容器 → 通过通用接口进行对话这一流程在 ai-agent-scaffold.md 中有完整描述其中两点尤为巧妙智能体工作流的组装完全由配置驱动可以自由组合出多种类型的智能体不需要硬编码装配完成后对外提供通用接口能力进行对话业务方无需关心底层模型与编排细节。4.1 智能体配置表设计YML配置是整个装配链路的入口。智能体配置表设计 一节定义了一套通用的 YML 配置结构允许用户在使用脚手架创建完智能体工程后通过 YML 配置出自己的智能体再结合业务场景做衔接开发。其配置项层级如下应用名称、智能体描述、智能体模块一个智能体配置所需的最基本信息主要的组件类配置都在智能体模块下AiApi负责对接 AI 接口建立与模型的请求连接ChatModel负责模型创建同时也会把 AiApi 对接进来MCP 工具创建出可被智能体调用的工具能力Agent构建单一智能体这里可以顺序创建出很多的智能体AgentWorkflow将多个 Agent 编排起来构建出一个完整的智能体映射了本节架构设计中的流程设计。仓库 notes.md 中还给出了一套多智能体协作的配置示例需求分析与检索智能体 → 绘图执行智能体 → 检查与优化智能体每个智能体通过name、description、instruction、output-key等字段定义前一个智能体的输出通过output-key注入到下一个智能体的 Prompt 中形成可复用的编排链路。4.2 装配域Armory结构化定义规则树 工厂 上下文对象装配链路在代码层面由装配域Armory支撑。装配域结构化定义 通过单一职责、规则树组合模式、工厂、上下文对象、泛型等设计手段结合领域驱动设计思想定义了智能体装配服务结构规则树组合模式设计模块框架用于各项节点流转实现如 RootNode、AiApiNode、ChatModelNode 等IArmoryService 装配服务接口单一职责统一各节点的装配规范工厂管理节点与服务的衔接上下文对象在各个节点间记录数据并流转使用避免方法参数爆炸。结合 notes.md 的面试总结装配域的完整实现要素还包括统一的IArmoryService接口与AbstractArmorySupport抽象类确保所有节点遵循相同规范DefaultArmoryFactory工厂负责创建和管理节点DynamicContext动态上下文机制利用责任链模式在节点间传递会话状态与中间结果解决多智能体协作时的数据共享与状态一致性问题。新增节点只需实现接口并注册即可具备很高的扩展性。4.3 节点装配与流转从 AiApiNode 到 RunnerNode装配域将复杂的构建流程拆解为一系列独立节点按序流转完成整个智能体的创建AiApiNode第一个装配节点目的是和 AI 接口建立请求连接。装配域节点-AiApiNode 说明其使用的是 Spring AI 框架提供的构建方法课程此前也讲解过 LangChain4j后续可以在 Agent 装配阶段做兼容替换。ChatModelNode配置模型创建将 AiApi 对接进来。AgentNode实例化智能体。AgentWorkflowNode工作流编排节点。装配域节点-AgentWorkflowNode 指出在 AiApi、ChatModel、Agent 装配完成后进入智能体工作流编排组合可能是 LoopAgent 把几个 LlmAgent 作为子 Agent也可能是 ParallelAgent 把几个 LlmAgent 并行执行最后又被 SequentialAgent 串行使用。正是因为存在多重组合才需要一个流转判断器的节点让这些节点的执行串联起来——LoopAgent、ParallelAgentNode、SequentialAgentNode 三个节点最终由 SequentialAgentNode 作为结束即最终是一个序列化执行。也存在单一智能体 LlmAgent 直接结束、不包装 SequentialAgentNode 的情况这部分作为后续扩展。RunnerNode装配终点节点。装配域节点-RunnerNode 将构建完成的智能体当前是把最后构建的 SequentialAgent填充到InMemoryRunner中并注册到 Spring 容器这样后续任何地方都可以获取到执行对象进行 AI Agent 对话后续会做成动态的让配置的任何智能体都可以填充到 InMemoryRunner 中。至此api、model、agent、workflow、runner → Spring 容器的完整装配链路闭环与本节架构设计的运行流程完全对应。4.4 工作流编排Sequential / Parallel / Loop工作流编排是底座的灵魂三种节点解决不同的问题依据 notes.md 归纳Sequential串行编排任务之间有严格依赖关系如搜索信息 → 整理摘要 → 生成报告按顺序依次执行 List 中的 Agent上一个 Agent 的输出作为下一个的输入。Parallel并行编排任务独立且耗时如同时搜索多个技术方案后汇总对比使用线程池并发执行多个 Agent通过CountDownLatch或CompletableFuture.allOf等待全部完成并聚合结果。Loop循环编排需要反复迭代直到满足条件如生成代码 → 运行测试 → 报错 → 修正 → 再测试直到通过或达到最大重试次数在循环节点中根据评估函数Evaluator的结果决定继续循环还是输出最终结果。五、脚手架配置发布Maven Archetype 打包复用架构设计的最后一块拼图是如何把底座工程变成可复用的脚手架。仓库 ai-agent-scaffold.md 记录了完整的发布流程左侧打包对现有工程使用maven-archetype-plugin插件构建工程脚手架将当前工程打包成一个可复用的 Archetype 模板中间发布打包好的脚手架可以在本地直接使用也可以发布 jar 到私服供大家使用私服部分后续处理右侧使用使用方可以基于命令行或者 IntelliJ IDEA 配置 Maven 脚手架的方式创建和启动工程。这部分在课程 part-3 中展开为 Maven 脚手架配置、上传 jar 到 Maven 仓库、部署脚手架网页三节实现一键生成包含完整依赖与最佳实践的 AI 工程代码的工程化目标。六、环境约束与工程前提本套架构设计对运行环境有明确要求见 工程初始化创建JDK 17Maven 3.8.xIntelliJ IDEA社区版即可Git配置到 IntelliJ IDEA 后用于推送/拉取代码从 notes.md 的核心技术清单看完整技术栈还包括Spring Boot、Spring AILangChain4j、Google ADK、MCPModel Context Protocol支持 SSE / Stdio / 本地 Bean 三种策略、RAGVector Store、Netty手机网关通信、React Draw.iomxGraph绘图场景、TypeScript、Docker、Nginx 等。需要注意依赖组件版本以当前仓库对应课程阶段的配置为准JDK 17 与 Maven 3.8.x 是工程初始化的硬性前提。七、小结本节的架构设计为整个《AI Agent 脚手架》项目定下了基调技术选型上采用 Spring AILangChain4j 对照 Google ADK 的组合覆盖从模型接入到多智能体工作流编排的完整能力框架结构上采用基础底座、脚手架、业务场景的三层架构底座以 DDD 分层 组合模式规则树 工厂 上下文对象构建可配置的装配域运行机制上以 YML 配置驱动 api、model、agent、workflow、runner 的链路装配注册进 Spring 容器后通过通用接口对外提供对话能力工程化上通过 Maven Archetype 将底座打包成脚手架实现快速复刻新工程。后续课程将沿着这条架构主线逐节点落地先做工程初始化与 API 功能测试第2-1节、第2-2节再定义智能体配置表第2-3节随后按装配域节点逐个实现并验证最终在 第2-19节 前后完成对话 UI 对接。对于希望快速验证架构效果的读者建议按第 2 部分的课程顺序逐步跟进每一节都只负责一小部分独立内容的实现方便回顾时直接定位。赞分享文档教程后端【免费下载链接】CodeGuide:books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总旨在为大家提供一个清晰详细的学习教程侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助请给予支持(关注、点赞、分享)项目地址https://gitcode.com/gh_mirrors/code/CodeGuide点击查看免费下载相关推荐claude-obsidian Compound Vault架构深潜4个角色与4层知识分层claude obsidian Compound Vault架构深潜4个角色与4层知识分层 claude obsidian 是一个开源的 AI 第二大脑项目AI 技能知识库知识管理RAG人工智能如何利用MiniCPM5-1B-MLX构建本地AI助手完整指南与最佳实践如何利用MiniCPM5 1B MLX构建本地AI助手完整指南与最佳实践 想要在本地部署一个功能强大的AI助手吗MiniCPM5 1B MLX正是您需要的解GitHub_Trending/sp/spring-reading架构设计分层架构在Spring中的实践GitHub_Trending/sp/spring reading架构设计分层架构在Spring中的实践 1. 分层架构核心价值与Spring实现范式 在企业示例工程文档上一篇Toonflow 国风3D美术角色四视图设定图生成art_character 约束手册实战指南下一篇3分钟恢复Windows 11任务栏拖放功能告别繁琐操作的高效修复方案创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。