定位:面向Java 后端做 Agent/RAG 应用开发,避开大量 Python 深度学习资料;优先官方文档,博客,开源项目;区分必看、选看、实战项目、面试资料。
一、基础概念(阶段 0,1 周)
目标:搞懂 LLM、Agent、RAG、Function‑Calling 基础概念
官方文档(必看)
- OpenAI Function Calling 官方文档
理解工具调用的原始设计思想,不管用哪家大模型,底层范式一致
https://platform.openai.com/docs/guides/function-calling
- OpenAI ReAct 介绍(Agent 经典范式)https://react-lm.github.io/
- 通义千问 / DeepSeek 开放平台文档(国内 API,开发实测用)
- 通义千问开放平台:https://help.aliyun.com/document_detail/240031.htm
- DeepSeek 开放平台:https://platform.deepseek.com/docs
重点看:对话接口、function‑calling、stream 流式输出、token 说明
阅读材料(博客,必看)
- 《什么是 Agent,ReAct、Plan‑and‑Solve 通俗讲解》
理解 Agent 不是大模型本身,是一套编排循环逻辑
- Token、上下文窗口、temperature、top‑p 通俗科普
不要停留在概念,要理解参数对业务效果的影响
小实践
- 用 Postman 测试大模型对话接口、function‑calling 接口
- Java 写简单 http 客户端调用,实现 SSE 流式接收
二、Java Agent 生态核心(阶段 1,重中之重)
两大框架:LangChain4j(首选)、Spring‑AI(Spring 官方,必须了解)
LangChain4j【必学,你的主力框架】
🔗 官网:https://docs.langchain4j.dev/
- Quick Start 快速入门,跑通第一个对话 demo
- 重点阅读模块:
- ChatLanguageModel / StreamingChatLanguageModel 流式对话
- Tools:Function Calling 工具调用
- Memory 记忆实现(InMemory、Redis 持久记忆)
- RAG 模块:Embedding、DocumentLoader、Chunking、EmbeddingStore
- Agent:ReActAgent 智能体实现
LangChain4j 支持 Milvus、Redis、Ollama、通义千问、DeepSeek 等
Github 示例仓库(大量可复制 demo)
https://github.com/langchain4j/langchain4j-examples
Spring‑AI(Spring 官方,必看,二选一掌握,另一个读懂 demo)
🔗 官方文档:https://spring.io/projects/spring‑ai
SpringBoot 原生,国内企业热度上涨,适合 Spring 技术栈团队
重点看:ChatClient、Function Calling、RAG、Ollama 集成
向量数据库 Milvus(企业生产首选 RAG 向量库)
🔗 官方文档:https://milvus.io/docs
重点学习:
- 核心概念:Collection、Field、向量索引、相似度距离
- 简单 CRUD,Java SDK 操作 Milvus
- Chunk 入库、相似度检索、Rerank 重排概念
Demo:Docker 一键拉起 Milvus 本地开发环境,不需要裸机安装
Ollama(本地跑开源大模型,开发调试,避免 API 扣费)
🔗 https://ollama.com/
- 安装,拉取 Qwen、Llama3 开源模型
- 调用 Ollama http 接口;LangChain4j/Spring‑AI 对接 Ollama
仅用于本地开发调试,不要求训练、微调
RAG 体系学习材料
- RAG 完整链路:文档解析 → 分块 Chunk → Embedding 入库 → 检索 → 组装 Prompt
必读文章:RAG 从基础到高级(含 Rerank、混合检索、幻觉缓解策略)
- 文档解析工具:Tika(Java 解析 PDF/Word,企业常用)
三、开源参考项目(看源码,抄业务思路,简历可以借鉴)
全部 Java/SpringBoot 项目,适合 Java 开发者阅读,不要直接抄代码,学习架构设计。
- langchain4j-examples
https://github.com/langchain4j/langchain4j‑examples
LangChain4j 官方示例,RAG、Agent、工具调用全部 demo,优先看
- Spring AI Examples
https://github.com/spring‑projects/spring‑ai‑samples
SpringAI 全套示例
- Dify(非常重要,很多公司基于 Dify 二次开发 Agent 平台)
🔗 https://github.com/langgenius/dify
⚠️ Dify 本体后端是 Python,不需要读 Python 源码。
重点学习:
- Dify API 文档,如何用 Java 后端调用 Dify 开放 API,做业务系统集成;
- 学习它的产品设计:会话管理、知识库管理、Agent 工作流、提示词、模型网关、日志统计;
面试高频:很多岗位就是做 Dify 二次开发,对接自有业务系统。
选看(Python 项目,只看架构思想,不写 Python)
- LlamaIndex:RAG 相关架构思想
- LangGraph:多 Agent 工作流思想,理解状态机编排,知道它解决什么问题即可。
四、工程化、安全、性能(阶段 2,Java 后端核心竞争力)
这一块是 Java 开发者对比纯 Python 开发者最大优势,面试重点考察。
1. Prompt 注入防护
- OWLLM Prompt Injection 介绍
- 国内大模型安全最佳实践文档
重点:输入过滤、Prompt 隔离、避免用户输入直接拼接系统 Prompt
2. LLM 模型网关设计思想
不用重复造轮子,学习设计思路:鉴权、限流、多模型路由、失败重试、token 统计计费、日志埋点。
3. 记忆体系设计文章
短时记忆(上下文窗口)、长时记忆(向量库)、实体记忆(Mysql/Redis)的取舍,token 爆炸问题处理方案。
4. SSE 流式输出
Spring SSE 实现,Vue 前端流式渲染对话,处理断连、重连。
5. 监控与可观测性
LLM 调用链路埋点:记录 prompt、返回结果、token 消耗、工具调用记录落库 MySQL。
6. Redis 在 Agent 系统中的使用
- 会话缓存、对话记忆缓存、embedding 结果缓存、限流。
五、视频学习(选看,辅助理解,优先文档)
B 站,只挑重点看,不建议刷全套视频。
- LangChain4j 完整实战系列:SpringBoot + 大模型做 RAG 知识库 Agent
- Milvus 向量库入门实战
- Dify 部署与 API 二次开发实战
提示:网上大量 Python LangChain 视频,当作概念科普,不要跟着写 Python 代码,看完转回 Java 框架实践。
六、面试向资料(阶段 3,简历 & 面试准备)
高频面试方向(后端视角)
- RAG 全链路,分块策略怎么选,幻觉如何缓解,召回不足怎么优化,Rerank 作用。
- Function‑Calling/Agent ReAct 执行流程,如何避免死循环调用工具。
- 记忆怎么设计,如何控制 token,上下文窗口溢出如何处理。
- Prompt 注入是什么,怎么防护。
- LangChain4j vs SpringAI 对比。
- Dify 是什么,如何基于 Dify 做业务集成。Agent应用开发学习打卡清单
- Agent 系统工程难点:并发、限流、监控、多租户隔离。
参考面试文档
- 《大模型应用开发后端面试 100 问》(网络公开版,聚焦应用层,避开算法微调)
- 梳理自己 Demo 项目:知识库 Agent,整理项目架构图,每一个模块遇到的坑以及解决方案。
七、推荐学习顺序(按执行顺序)
- 先看:OpenAI Function‑Calling + ReAct 概念 → 跑通 Java 调用 LLM API
- LangChain4j 文档,跑 examples 中的:对话 demo → function‑calling demo → RAG demo
- Docker 部署 Milvus,完成文档入库检索 demo
- Ollama 本地部署开源模型,本地调试
- 阅读 Dify 官方 API 文档,理解 Agent 平台产品设计
- 学习工程化问题:安全、缓存、监控、多租户
- 简单过 Spring‑AI,对比 LangChain4j 差异
- 完善个人实战项目,整理架构,准备面试
八、避坑提醒
- 不要沉迷看论文,应用 Agent 开发不需要深度学习知识;
- 不要花大量时间学 Python,Python 仅用于看懂 Demo,你的主力是 Java;
- 不要一开始就折腾本地大模型训练微调;
- 概念看懂一定要写代码跑 Demo,Agent/RAG 是强工程实践领域。
按天精简学习任务清单,方便每天勾选打卡!!!
Agent应用开发学习打卡清单