AI深栈 · Spring AI × LangGraph4j
文章平均质量分 84
AI 工程深度实践,每日一篇。用 Java 后端视角把大模型做成可交付能力:共享模型与工具,替换编排引擎;从 Hello World 走到 Agent 编排与生产落地。版本锁定 Spring AI 2.0.1 × LangGraph4j 1.8.25,源码对照、可跑示例、明确边界。
AI深栈
13 年 Java 后端。近年专注 AI 工程化落地:基于 Spring AI + LangGraph4j,做 Agent 工作流、RAG、Tool Calling、多轮记忆,以及从模型调用到可交付服务的完整链路。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第 20 章 · AI 流式输出与异步调度:别堵死线程
节点“慢”分三类:同步阻塞(应避免)、未完成Future、流式生成器(AsyncGenerator),后者可提前推送chunk。stream()返回可取消的AsyncGenerator.Cancellable,chunk来自流式节点内嵌的StreamingOutput,结束帧合并状态。原创 2026-10-01 23:13:06 · 372 阅读 · 0 评论 -
第 19 章 · AI 工具循环与条件路由:管住 recursionLimit
基于LangGraph4j构建Agent与工具的循环调用结构,通过needTool状态控制条件边跳转,实现ReACT风格的多轮推理。使用rounds限制业务轮次,recursionLimit(默认25)防止无限迭代。轨迹显示2轮工具共5次节点执行,验证了环形拓扑与退出逻辑。强调条件边仅读状态、不解析文本,需确保映射表包含所有返回键,避免超限异常。推荐先用stream调试轨迹,再接入真实模型,确保环路可控、退出明确。原创 2026-09-28 21:40:59 · 328 阅读 · 0 评论 -
第 18 章 · 跑通 AI 图:CompiledGraph 的 compile、invoke、stream
跑通 AI 图:CompiledGraph 的 compile、invoke、stream原创 2026-09-27 22:43:56 · 348 阅读 · 0 评论 -
第 17 章 · 编排 AI 流程:StateGraph 节点、条件边与意图路由
基于LangGraph4j,实现一个意图三路分支的StateGraph拓扑图。通过定义状态结构(RouteState),使用addNode添加分类、FAQ、订单、兜底等节点,以addEdge构建直线流程,再用addConditionalEdges实现按意图(faq/order/unknown)的条件路由。原创 2026-09-23 20:12:54 · 143 阅读 · 0 评论 -
第 16 章 · AI Agent 共享状态:AgentState 与 Channels
LangGraph4j中,通过Channel定义状态键的合并策略:base覆盖、appender追加(可去重)。节点返回部分更新的Map,由AgentState.updateState按Schema中的Channel规则合并。原创 2026-09-22 23:32:23 · 171 阅读 · 0 评论 -
第 15 章 · 第一个 AI 工作流:Hello Graph 从 START 跑到 END
通过StateGraph定义状态与节点,greet节点返回greeting和logs,利用Channels.base与appenderWithDuplicate实现合并逻辑。输入含name,输出获取最终greeting。原创 2026-09-21 22:39:23 · 138 阅读 · 0 评论 -
第 14 章 · LangGraph4j 入门:AI Agent 什么时候该上状态图
相比SpringAI聚焦模型与工具调用,LangGraph4j专注流程控制,适用于审批、并行、子图、断点续跑等场景。上图前提:需求涉及多分支、循环或需状态持久化;否则优先稳住SpringAI主链。原创 2026-09-20 19:15:52 · 169 阅读 · 0 评论 -
第 13 章 · AI智能体的可观测性、运维与安全
基于SpringAI 2.0,系统梳理AI服务上线必备四关:观测(通过Observation+Micrometer聚合指标,脱敏处理敏感数据)、重试与限流(配置合理退避策略,应用层设配额与降级文案)、密钥与鉴权(密钥隔离、Prompt防护、工具调用强制鉴权)、成本与审计(按模型/工具记账,保留摘要日志,发布清单闭环)。强调全程脱敏,关键指标聚焦低基数标签,确保可观测性、稳定性与安全性,达成可生产上线标准。原创 2026-09-18 22:58:20 · 225 阅读 · 0 评论 -
第 12 章 · AI智能体的结构化输出与流式响应
用 entity(...) 把模型输出变成 Java 对象;用 stream() 推出 token,接到 SSE,并旁路拼完整文本落库。原创 2026-09-17 18:48:00 · 249 阅读 · 0 评论 -
第 11 章 · 知识图谱 GraphRAG
本文基于SpringAI 2.0.1,探索知识图谱与向量RAG的差异与协同。原创 2026-09-16 23:13:45 · 225 阅读 · 0 评论 -
第 10 章 · Embedding、VectorStore 与 RAG
本文基于Spring AI 2.0.1,实现「文档进库→检索增强生成」最小闭环原创 2026-09-15 22:20:26 · 282 阅读 · 0 评论 -
第 9 章 · Model Context Protocol(MCP)
在Spring AI的 MCP中,分清 Host / Server,选对 starter 与传输,用注解暴露工具,并把 MCP Tool 桥进 ChatClient。原创 2026-09-14 19:50:05 · 306 阅读 · 0 评论 -
第 8 章 · Tool Calling 与 Tool Search
在Spring AI种,工具如何声明、如何挂到 ChatClient、运行时如何循环执行,以及工具很多时怎样用 Tool Search 做渐进披露。原创 2026-09-12 22:09:41 · 255 阅读 · 0 评论 -
第 7 章 · AI会话中的窗口记忆与长期记忆
弄清对话为什么要「记住」、记忆分几类,以及窗口、向量长期记忆、用户偏好表怎么接。原创 2026-09-10 20:57:36 · 30 阅读 · 0 评论 -
第 6 章 · Spring AI中的Advisors
弄明白Spring AI中 ChatClient 上的 Advisor 链——契约、挂法、内置门牌、顺序语义,以及如何自定义。原创 2026-09-09 22:27:40 · 48 阅读 · 0 评论 -
第 5 章 · ChatModel 与 Provider
弄清 ChatModel 与 ChatClient 的分工:call/stream 契约、Provider 选型,以及用 OpenAI Options 作标本覆盖连接、生成与工具旋钮;并说明多模型注入、兼容网关排查,以及何时该直接用薄调用。原创 2026-09-08 20:33:03 · 333 阅读 · 0 评论 -
第 4 章 · ChatClient:应用层入口
Spring AI 2.0.1中,ChatClient是核心应用入口,通过Builder或注入prototype创建,支持默认值与单次请求覆盖。调用prompt()组装消息,call()/stream()同步或流式获取结果,entity()实现结构化输出,tools()注册工具。注意请求级tools整组覆盖默认,多轮记忆需Advisor,客户端本身无状态。原创 2026-09-07 20:24:21 · 365 阅读 · 0 评论 -
第 3 章 · Message / Prompt / ChatResponse
SpringAI 2.0.1中一次模型调用的数据形状由Message、Prompt、ChatOptions与ChatResponse构成。角色消息有System/User/Assistant/Tool,工具调用通过AssistantMessage的toolCalls与ToolResponseMessage衔接。Prompt打包消息与选项,ChatResponse读取文本、工具调用及Usage。原创 2026-09-06 23:13:44 · 373 阅读 · 0 评论 -
第 2 章 · SpringAI环境搭建与 Hello World
本文介绍了SpringAI 2.0.1与SpringBoot 4.x的快速入门:通过BOM管理版本,添加model-starter(如OpenAI或Ollama),配置API Key与模型参数,即可实现同步调用(ChatClient.call)和流式调用(Flux SSE)。同时提供最小配置示例、工程骨架、多模型区分、测试方法和常见问题排查,帮助开发者用最小成本跑通对话流程。原创 2026-09-05 18:59:15 · 339 阅读 · 0 评论 -
第 1 章 · Spring AI 技术概览
本文介绍SpringAI 2.0.1在SpringBoot 4.x下的应用框架,核心为三层结构(应用、抽象、提供商)和一次对话请求路径。业务通过ChatClient起步,借助Advisors实现记忆、RAG、工具等能力。原创 2026-09-04 12:39:22 · 529 阅读 · 0 评论 -
为什么选择 Spring AI + LangGraph4j
Java Agent开发选型:官方SpringAI管模型接入,LangGraph4j管可控编排(状态图、检查点、人工审批),相比SpringAI Alibaba更利于测试、排障和恢复。Alibaba适合快速上阿里云Agent平台;LangGraph4j适合需长期演进、流程透明的场景。原创 2026-09-03 23:33:50 · 430 阅读 · 0 评论 -
序言:用 Java 把 Spring AI 与 LangGraph4j 做成可交付能力
面向Java后端开发者的大模型集成实战系列:基于SpringAI 2.0.1与LangGraph4j 1.8.25,每日一篇,分享从“Demo能跑”到“可交付”的关键问题,包括对象模型、工具/记忆/RAG边界、流程编排、测试与观测,并提供源码级契约。原创 2026-09-03 17:33:03 · 385 阅读 · 0 评论
分享