介绍
当前翻译版本为 2025 年 2 月 21 日 Spring 官网发布的快照版本,由于快照版本内容变更较快,因此可能会出现与官网文档不一致的情况,实际请以官网为主。在官网发布正式的 Release 版本后,我们会重新翻译,并替换掉当前的快照版本。
Spring AI
项目旨在简化集成人工智能功能的应用程序开发,避免不必要的复杂性。
该项目从知名的 Python 项目中汲取灵感,例如 LangChain 和 LlamaIndex,但 Spring AI 并不是这些项目的直接移植。该项目的创立基于一个信念,即下一波生成式 AI 应用将不仅仅面向 Python 开发者,而是会普及到许多编程语言中。
Spring AI 解决了 AI 集成的根本挑战:将您的企业数据和 API 与 AI 模型连接起来
。
Spring AI 提供了作为开发 AI 应用程序基础的抽象层。这些抽象层具有多种实现,使得在最小化代码更改的情况下轻松替换组件成为可能。
Spring AI 提供了以下功能:
-
跨 AI 提供商的便携式 API 支持,涵盖 Chat、文本到图像和 Embedding 模型。支持同步和流式 API 选项。还可以访问模型特定的功能。
-
支持所有主要的 AI 模型提供商,如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama。支持的模型类型包括:
-
结构化输出 - 将 AI 模型输出映射到 POJO。
-
支持所有主要的 向量数据库提供商,如 Apache Cassandra、Azure Cosmos DB、Azure Vector Search、Chroma、Elasticsearch、GemFire、MariaDB、Milvus、MongoDB Atlas、Neo4j、OpenSearch、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis、SAP Hana、Typesense 和 Weaviate。
-
跨向量存储提供商的便携式 API,包括一种新颖的类似 SQL 的元数据过滤 API。
-
工具/函数调用 - 允许模型请求执行客户端工具和函数,从而根据需要访问必要的实时信息并采取行动。
-
可观测性 - 提供对 AI 相关操作的洞察。
-
用于数据工程的文档摄取 ETL 框架。
-
AI 模型评估 - 帮助评估生成内容并防止产生幻觉响应的实用工具。
-
用于 AI 模型和向量存储的 Spring Boot 自动配置和启动器。
-
ChatClient API - 用于与 AI Chat 模型通信的流式 API,与 WebClient 和 RestClient API 类似。
-
Advisors API - 封装了常见的生成式 AI 模式,转换发送到语言模型(LLMs)和从语言模型接收的数据,并提供跨各种模型和用例的可移植性。
-
支持 Chat 对话记忆 和 检索增强生成 (RAG)。
此功能集使您能够实现常见的使用场景,例如“文档问答”或“与文档聊天”。
概念部分 提供了对 AI 概念及其在 Spring AI 中表示的高层次概述。
入门指南 部分将向您展示如何创建您的第一个 AI 应用程序。随后的部分将以代码为中心的方式深入探讨每个组件和常见用例。
章节摘要
📄️ AI 概念
本节介绍了 Spring AI 使用的核心概念。我们建议您仔细阅读,以理解 Spring AI 实现背后的思想。