Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

3323223659/Java-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

10 Commits

Repository files navigation

Spring AI & LangChain4j 学习项目集合

项目简介

本项目是一个综合性的 AI 大模型应用学习项目,包含了 Spring AI 和 LangChain4j 两个主流 Java AI 框架的完整学习示例。项目通过多个模块展示了从基础聊天到高级 AI Agent、RAG(检索增强生成)、工具调用等核心功能的实现,适合 Java 开发者学习和实践 AI 应用开发。

详细说明参考csdn文档:https://blog.csdn.net/2302_79380280?spm=1011.2415.3001.5343

技术架构

  • AI 框架:Spring AI、LangChain4j
  • 后端框架:Spring Boot 3.x
  • 大模型支持:
    • 阿里云通义千问(DashScope)
    • DeepSeek
    • OpenAI
    • Ollama(本地模型)
  • 向量数据库:SimpleVectorStore、内存向量存储
  • 构建工具:Maven
  • Java 版本:JDK 17+

目录结构

ai-learning-projects/
├── spring-ai-parent/ # Spring AI 学习项目主目录
│ ├── 01quick-start/ # 快速入门示例
│ ├── 02chat-client/ # 聊天客户端基础用法
│ ├── 03more-platform-and-model/ # 多平台多模型集成
│ ├── 04more-model-structured-agent/ # 结构化 Agent 示例
│ ├── 05tools/ # 工具调用功能
│ ├── 06flight-booking/ # 航班预订智能助手
│ ├── 07mcp-stdio-server/ # MCP STDIO 服务器
│ ├── 08mcp-sse-server/ # MCP SSE 服务器
│ ├── 09rag/ # RAG 检索增强生成
│ ├── 10observability-actuator/ # 可观测性监控
│ └── 11spring-ai-agent/ # 高级 AI Agent 示例
├── spring-ai-dome/ # Spring AI 综合演示项目
│ ├── src/main/java/ # Java 源码
│ ├── src/main/resources/ # 配置文件和静态资源
| ├── 前端代码 # 该项目前端代码
│ └── pom.xml # Maven 配置
├── langchain4j/ # LangChain4j 学习项目目录
│ └── langchain4j_springboot/ # LangChain4j + Spring Boot 集成
│ ├── src/main/java/ # Java 源码
│ ├── src/main/resources/ # 配置文件
│ └── pom.xml # Maven 配置
└── README.md # 项目说明文档

核心功能模块

Spring AI 模块

  1. 基础聊天功能

    • 多模型支持(通义千问、DeepSeek、Ollama)
    • 流式对话
    • 聊天记忆管理
  2. 高级 AI Agent

    • 链式工作流处理
    • 并行任务处理
    • 评估优化器
    • 任务编排器
  3. RAG 检索增强

    • 文档向量化
    • 语义搜索
    • PDF 文档问答
  4. 工具调用

    • 航班预订助手
    • 天气查询工具
    • 自定义函数调用
  5. MCP 协议支持

    • STDIO 通信
    • SSE 实时通信

LangChain4j 模块

  1. 聊天功能

    • 基础对话
    • 流式聊天
    • 多用户记忆隔离
  2. RAG 系统

    • 文档加载和分割
    • 向量存储和检索
    • 知识库问答
  3. AI 助手配置

    • 系统提示词模板
    • 记忆管理
    • 工具集成

使用说明

1. 环境准备

  • JDK 17+
  • Maven 3.6+
  • IDE:IntelliJ IDEA 或 Eclipse

2. 配置 API Key

在各模块的 application.properties 中配置相应的 API Key:

# 阿里云通义千问
spring.ai.dashscope.api-key=${ALI_AI_KEY}
# DeepSeek
spring.ai.deepseek.api-key=${DEEP_SEEK_KEY}
# OpenAI
spring.ai.openai.api-key=${OPENAI_API_KEY}

3. 运行项目

  1. 克隆项目到本地
  2. 配置环境变量或直接在配置文件中设置 API Key
  3. 选择要运行的模块,执行:
    cd spring-ai-parent/01quick-start
    mvn spring-boot:run
  4. spring-ai-dome里的前端代码需要下载后再启动
    npm install

4. 模块说明

  • spring-ai-parent:Spring AI 框架的完整学习示例
  • spring-ai-dome:Spring AI 综合演示项目,包含 Web 界面
  • langchain4j:LangChain4j 框架学习示例
  • 每个子模块都有独立的 README 和示例代码

5. 常见命令

# 编译整个项目
mvn clean compile
# 运行测试
mvn test
# 打包项目
mvn clean package
# 跳过测试打包
mvn clean package -DskipTests

学习路径建议

  1. 入门阶段:从 01quick-start 开始,了解基础聊天功能
  2. 进阶阶段:学习 06flight-booking 的工具调用和 09rag 的检索增强
  3. 高级阶段:研究 11spring-ai-agent 的复杂 Agent 实现
  4. 对比学习:比较 Spring AI 和 LangChain4j 的不同实现方式

参考资料

免责声明

本项目仅用于学习和技术交流,请遵守各 AI 服务提供商的使用条款。商业使用请确保符合相关法律法规和服务协议,如有侵权请联系删除。

贡献指南

欢迎提交 Issue 和 Pull Request 来完善项目。请确保代码风格一致,并添加必要的注释和文档。

许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

About

SpringAI与LangChain4j学习dome

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /