Skip to content

wanghongqiang1027/java-to-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java 开发转 Agent 开发教程系列

基于《Java 开发转 Agent 开发完整学习清单》编写的实战教程

📚 教程目录

✅ 已完成教程

学习时间: 2-4 周
核心内容:

  • LLM API 基础概念(Token、上下文窗口、Temperature)
  • Java 调用 LLM API(同步、流式、结构化输出)
  • Prompt Engineering 实战技巧
  • 成本与性能控制
  • 错误处理与降级策略
  • 完整示例:订单意图识别服务

实战项目:

  • 文本分类器
  • 信息抽取工具
  • 流式聊天机器人

学习时间: 2-3 周
核心内容:

  • Tool Calling 工作原理
  • Spring AI 工具定义与注册
  • 业务方法封装为 LLM 工具
  • 参数校验与错误处理
  • 工具安全控制(只读/写操作分级)
  • 人工确认机制
  • 完整示例:客服 Agent

实战项目:

  • 商品搜索工具
  • 订单取消工具
  • 多工具协作 Agent

学习时间: 3-4 周
核心内容:

  • RAG 核心原理与工作流程
  • 文档解析(PDF、Word)
  • 文档切分策略(固定大小、段落、语义)
  • 向量化与相似度计算
  • pgvector 向量数据库
  • 混合检索(向量 + 关键词)
  • 权限过滤与引用溯源
  • 完整示例:企业知识库问答系统

实战项目:

  • 简单知识库构建
  • 检索质量优化
  • 完整问答系统(RAG + Tool Calling)

🚧 计划中的教程

教程 04:Agent 工作流编排

预计时间: 3-4 周
主要内容:

  • ReAct Agent 模式
  • Plan-and-Execute 模式
  • LangGraph 状态机
  • 多步骤任务编排
  • 中断与恢复
  • Human-in-the-loop

教程 05:Spring AI 与 LangChain4j 深入

预计时间: 2-3 周
主要内容:

  • Spring AI 核心组件
  • LangChain4j AI Service
  • Memory 管理
  • Advisors 机制
  • 可观测性集成

教程 06:MCP 与系统集成

预计时间: 2-3 周
主要内容:

  • MCP 协议基础
  • MCP Server 开发
  • 企业系统集成
  • 安全与权限控制

教程 07:评估与可观测性

预计时间: 2-3 周
主要内容:

  • Golden Dataset 构建
  • Prompt 回归测试
  • RAG 评估指标
  • Tool Calling 评估
  • Trace 与监控

教程 08:安全与部署

预计时间: 2-3 周
主要内容:

  • Prompt Injection 防护
  • 数据安全与权限
  • 本地模型部署(Ollama、vLLM)
  • 性能优化与压测

🎯 学习路径建议

第一阶段(2-4 周):基础入门

  1. 完成教程 01:LLM API 与 Prompt 基础
  2. 实战练习:构建简单的 LLM 调用 Demo
  3. 验收标准: 能稳定调用 LLM API,实现结构化输出

第二阶段(4-6 周):工具与知识

  1. 完成教程 02:Tool Calling
  2. 完成教程 03:RAG
  3. 实战练习:构建业务 Agent(查询 + 知识库)
  4. 验收标准: 能封装业务工具,能构建知识库问答

第三阶段(6-8 周):工作流与框架

  1. 完成教程 04:Agent 工作流编排
  2. 完成教程 05:Spring AI 与 LangChain4j
  3. 实战练习:工单处理 Agent
  4. 验收标准: 能设计多步骤 Agent 流程

第四阶段(4-6 周):生产化

  1. 完成教程 06:MCP 与系统集成
  2. 完成教程 07:评估与可观测性
  3. 完成教程 08:安全与部署
  4. 验收标准: 能部署生产级 Agent 应用

💡 学习建议

对于 Java 开发者

优势:

  • ✅ Spring Boot 生态熟悉,易上手 Spring AI
  • ✅ 权限、安全、审计经验直接复用
  • ✅ 工程能力强,容易构建稳定系统

挑战:

  • ⚠️ LLM 的非确定性需要适应
  • ⚠️ Prompt Engineering 是新技能
  • ⚠️ 向量检索与传统数据库查询不同

建议:

  1. 先理解概念,再动手编码
  2. 多做实验,Prompt 需要迭代优化
  3. 关注 Token 成本,生产环境要控制
  4. 重视错误处理和降级策略

实战项目推荐

从简单到复杂,逐步实现:

  1. 文档问答助手(RAG 入门)

    • 上传公司制度文档
    • 实现问答功能
    • 标注引用来源
  2. 客服 Agent(Tool Calling + RAG)

    • 查询订单状态
    • 查询物流信息
    • 查询知识库
    • 创建工单
  3. 工单处理 Agent(工作流)

    • 自动分类工单
    • 检索解决方案
    • 生成处理建议
    • 人工审核后执行
  4. 代码审查 Agent(高级)

    • 读取代码文件
    • 分析潜在问题
    • 生成审查报告
    • 提供修复建议

📖 参考资料

官方文档

学习资源

向量数据库


🛠️ 开发环境

必需工具

  • JDK: 17+
  • Maven/Gradle: 最新版
  • IDE: IntelliJ IDEA / VS Code
  • PostgreSQL: 14+ (带 pgvector 扩展)
  • Redis: 用于缓存

推荐配置

Maven 核心依赖:

<dependencies>
    <!-- Spring AI -->
    <dependency>
        <groupId>org.springframework.ai</groupId>
        <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
        <version>1.0.0-M4</version>
    </dependency>
    
    <!-- LangChain4j -->
    <dependency>
        <groupId>dev.langchain4j</groupId>
        <artifactId>langchain4j-spring-boot-starter</artifactId>
        <version>0.28.0</version>
    </dependency>
    
    <!-- 文档解析 -->
    <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>3.0.1</version>
    </dependency>
    
    <!-- PostgreSQL + pgvector -->
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
    </dependency>
</dependencies>

API Keys:

# .env 文件
OPENAI_API_KEY=sk-xxx
ANTHROPIC_API_KEY=sk-ant-xxx

📊 学习进度追踪

阶段一:基础(0-4 周)

  • 理解 Token、上下文窗口、Temperature
  • 能用 Java 调用 LLM API
  • 掌握 Prompt 基本结构
  • 实现结构化输出
  • 完成订单意图识别 Demo

阶段二:工具与知识(4-10 周)

  • 封装业务方法为工具
  • 实现参数校验和错误处理
  • 解析和切分文档
  • 搭建向量数据库
  • 完成知识库问答系统

阶段三:工作流(10-18 周)

  • 理解 ReAct 模式
  • 使用 LangGraph 构建状态机
  • 实现多步骤任务编排
  • 完成工单处理 Agent

阶段四:生产化(18-24 周)

  • 实现 MCP Server
  • 构建评估体系
  • 部署到生产环境
  • 实现监控和告警

🤝 贡献与反馈

如果你在学习过程中发现问题或有改进建议,欢迎反馈。


📝 版本历史

  • v0.1 (2024-07-01)
    • 完成教程 01:LLM API 与 Prompt 基础
    • 完成教程 02:Tool Calling
    • 完成教程 03:RAG

📌 快速开始

  1. 克隆或下载本教程
  2. 从教程 01 开始学习
  3. 跟随代码示例动手实践
  4. 完成每个教程的实战练习
  5. 构建自己的 Agent 项目

祝学习顺利!从 Java 开发到 Agent 开发,你可以的! 🚀

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors