本文主要讲了概述的内容
🌱 Spring AI 的定位
- 目标:简化 AI 应用开发,让开发者像用 Spring Data、Spring Cloud 一样用 AI
- 灵感:借鉴 Python 里的 LangChain、LlamaIndex
- 差异:不是简单移植,而是按照 Spring 生态 的设计原则(POJO、依赖注入、自动配置、模块化)来做
- 核心挑战:让 企业数据 + API 和 AI 模型 无缝连接
⚙️ Spring AI 提供的核心抽象
Spring AI 给你一套统一的 API,屏蔽不同厂商差异。它的抽象层次可以类比 Spring Data:
- Model API(统一调用不同模型)
- Vector Store API(统一调用不同向量数据库)
- Prompt & Advisor API(统一 Prompt 管理、RAG、对话记忆)
- Observability(监控与可观测性)
这样做的好处是:
👉 想从 OpenAI 切换到 Azure OpenAI、Ollama,只要改配置,几乎不用改代码。
🚀 Spring AI 支持的功能
-
模型调用
- Chat Completion(对话/文本生成)
- Embedding(向量化,用于 RAG/语义搜索)
- Text to Image(文生图)
- Audio Transcription(语音转文字)
- Text to Speech(文字转语音)
- Moderation(内容审核)
-
向量数据库
- 支持主流数据库:PostgreSQL/PGVector、Milvus、Pinecone、Redis、Chroma、Weaviate …
- 有统一 API,还支持 类 SQL 的元数据过滤
-
高级功能
- Structured Outputs(直接把 AI 输出转成 POJO)
- Tools / Function Calling(AI 能调用外部函数,获取实时数据)
- Observability(监控 AI 调用,调试和优化 Prompt)
- Document Ingestion ETL(把文档注入向量数据库)
- AI Model Evaluation(检测模型输出质量,避免幻觉)
- Chat Memory + RAG(对话记忆 + 检索增强生成)
📦 开发者友好
- Spring Boot Starter(开箱即用,start.spring.io 勾选即可)
- ChatClient API(调用风格类似 WebClient / RestClient)
- Advisors API(封装常见 AI 模式,比如 RAG、角色转换)
🧑💻 常见用例
- “Q&A over your docs” (文档问答系统)
- “Chat with your documentation” (企业知识库助手)
- 智能客服、代码助手、语义搜索、内容生成