Spring AI 从入门到实战-目录

这套系列教程是面向 Java 开发者,尤其是熟悉 Spring Boot 的后端工程师。本教程以"低代码量+高实用性"为核心概念,帮助开发者快速掌握Spring AI 或 Apring AI Alibaba .

开发过程中遇见不会的怎么办?

👉 开发喵AI 👈

已集成 GPT-5 Claude3.7 Gemini 御三家

致力于解决用户魔法上 网、答案高要求、内容高标准

已内置 100余种 命令与角色

解决问题的方式有很多 种,请试试 开发喵AI 给你的答案 🙇🙇‍♀️

后台发送 开发喵AI 了解详情 🔎

📢 大家都在用的AI工具,在等什么,赶快上车!

🎯 教程目标

  1. 让 Java 开发者快速上手 Spring AI,理解其设计思想与核心组件。
  2. 通过大量可运行代码示例,掌握 Chat、Embedding、记忆、绘图、RAG、MCP, 工具调用等关键技术。
  3. 学会集成主流向量数据库(如 PGVector、milvus)和大模型服务(OpenAI, 通义千问,DeepSeek, 智普清言等)
  4. 最终使用 Spring AI Alibaba 模块调用 阿里通义千问大模型 ,实现一个"文档智能问答系统"。

🗂️ 教程大纲(共 9 大章节+番外)

第1章:初识 Spring AI ---Java 开发者的 AI 新纪元

🎯 目标:建立对 Spring AI 的整体认知,理解它为什么重要。

1.1 什么是 Spring AI?它的诞生背景与愿景

1.2 为什么 Java 开发者也需要玩转 AI?

1.3 Spring AI 与 LangChain 的异同

1.4 Spring AI 的核心设计理念:抽象、可移植、易集成

1.5 Spring AI 项目搭建,快速体验

💡 概念预览:ChatClient、Model、Prompt、Response

第2章:核心 API 入门 --- 使用 ChatClient 与大模型对话

🎯 目标:掌握最基础也是最重要的交互方式 ------ 聊天模型调用。

2.1 核心概念预览

2.2 ChatClientAPI 设计理念

2.3 同步 VS 流式响应(Streaming)

2.4 消息类型: prompt,user,assistant,system

2.5 核心概念详解

2.6 Prompt模板

2.7 默认角色

第3章:数据结构化输出 --- 让 AI 返回 Java 对象

🎯 目标:掌握 Spring AI 的结构化输出功能,让大模型直接返回类型安全的 Java 对象,避免繁琐且易错的字符串解析。

3.1 为什么需要结构化输出?

3.2 核心原理:转换器的"两步工作法"

3.3 核心API:StructuredOutputConverter接口

3.4 常用转换器实战

  • BeanOutputConverter
  • 用低级API (ChatModel) 理解底层逻辑
  • 处理泛型类型比如List
  • 键值对用 MapOutputConverter
  • 简单列表用ListOutputConverter

第4章:函数调用(Function Calling / Tool Calling)---让 AI 调用你的 API

🎯 目标:让大模型具备"行动力",能调用外部工具。

4.1 什么是 Function Calling?它解决了什么问题?

4.2 定义 @Tool 方法(Spring AI 的 ToolCallback

4.3 其它方式定义工具

4.4 本地Tool的局限性:引出MCP

第5章:聊天记忆(Chat Memory) --- 让AI 记住上下文

🎯 目标:实现多轮对话中的上下文管理,避免"健忘"的 AI

5.1 什么是 Chat Memory?为什么需要它?

5.2 ChatMemoryChatMemoryRepository的核心设计

5.3 内存存储:InMemoryChatMemoryRepository

5.4 关系型数据库存储: JdbcChatMemoryRepository

5.5 Advisor核心机制

5.6 实战:构建一个支持多种记忆策略的聊天系统

5.7 实战:Redis记忆存储仓库

第6章:MCP(Model Context Protocol)---构建可服用的AI 工具生态

🎯 目标:突破本地 @Tool 的局限,构建跨语言、可复用的工具服务

6.1 什么是MCP? 它解决了什么问题?

6.2 Spring AI MCP

6.3 MCP-Client (Stdio模式)

  • Cherry Stdio中测试
  • Spring AI 客户端调用

6.4 MCP-Client(SSE 模式)

  • 12306-MCP 车票查询工具
  • pring AI 客户端调用

6.5 MCP-Server(Stdio模式)

  • 天气预报查询工具
  • Cherry Stdio中测试

6.6 MCP-Server(SSE模式)

第7章:嵌入模型(Embedding Models) 与向量化存储

🎯 目标:理解文本向量化原理,为 RAG 打基础

7.1 什么事Embedding? 它在AI 中的作用

7.2 Spring AI 中的 Embedding接口与类

7.3 使用Spring AI Embedding

7.4 向量相似度计算原理(余弦相似度)

7.5 向量存储 VectorStore

7.6 Milvus 向量数据库

第8章:RAG(检索增强生成)实战 --- 让 AI"看懂"你的文档

🎯 目标:构建一个真正可用、具备上下文感知能力的知识库问答系统,让大模型基于你提供的私有文档生成准确、可靠的回答。

8.1 RAG 原理详解: 检索 + 增强 + 生成

8.2 ETL 管道 (Pipeline): 数据处理的核心流程

8.3 Document Reader接口

8.4 DocumentTransformer接口

8.5 DocumentWriter接口

8.6 实战:对PDF文件进行ETL处理

第9章:使用 Spring AI Alibaba

🎯 目标:摆脱对国外模型依赖,使用阿里云通义千问完成完整项目。

9.1 什么是 Spring AI Alibaba?社区版 vs 阿里云商业版

9.2 通义千问(Qwen)模型家族介绍(Turbo、Plus、Max、Long)

9.3 配置 alibaba-qwen-chat-client-auto-configuration

9.4 支持功能:Chat、Embedding、Function Calling、流式输出

9.5 与开源模型(如 Ollama)对比优劣

实战项目:"智能客服知识库问答系统"

附加内容(番外篇)

📘 番外1:本地部署大模型 ------ 使用 Ollama + Llama3/Llama3.1

📘 番外2:模型评估(Model Evaluation)

📘 番外3:可观测性(Observability)

📘 番外4:生产环境部署建议

源代码地址https://github.com/kaiwill/kaifamiao

相关推荐
Hello.Reader2 小时前
用 Maven 配置 Flink 从初始化到可部署的完整实践
java·flink·maven
andyguo2 小时前
AI模型测评平台工程化实战十二讲(第五讲:大模型测评分享功能:安全、高效的结果展示与协作)
人工智能·安全·c#
ACEEE12222 小时前
解读DeepSeek-V3.2-Exp:基于MLA架构的Lightning Index如何重塑长上下文效率
人工智能·深度学习·算法·架构·deep
用户5191495848452 小时前
全面解析DoS攻击防护与应对策略
人工智能·aigc
程序员大雄学编程3 小时前
「机器学习笔记2」机器学习系统设计:从理论到实践
人工智能·笔记·机器学习
java_logo3 小时前
使用 Docker 部署 Nginx 教程
java·spring cloud·eureka
金井PRATHAMA3 小时前
框架系统的多维赋能——论其对自然语言处理深层语义分析的影响与启示
人工智能·自然语言处理·知识图谱
小蒜学长3 小时前
springboot基于BS的小区家政服务预约平台(代码+数据库+LW)
java·数据库·spring boot·后端
面壁的熊猫3 小时前
目标检测概述
人工智能·目标检测·计算机视觉