Spring AI 简介
-
概述
Spring AI 是一个用于 AI 工程的应用程序框架。 其目标是将 Spring 生态系统设计原则(如可移植性和模块化设计)应用于 AI 领域,并将使用 POJO 作为应用程序的构建块推广到 AI 领域。

Spring AI 的核心是解决了 AI 集成的根本挑战:将您的企业数据和 API 与 AI 模型连接起来。
-
特征
Spring AI 提供以下功能:
-
支持所有主要的 AI 模型提供商,例如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama。支持的模型类型包括:
-
聊天完成
-
嵌入
-
文本到图像
-
音频转录
-
文本到语音
-
适度
-
-
支持跨 AI 提供商对同步和流式处理 API 选项的可移植 API 支持。此外,还可以访问特定于模型的特征。
-
结构化输出 - AI 模型输出到 POJO 的映射。
-
支持所有主要的矢量数据库提供商,例如 Apache Cassandra、Azure Vector Search、Chroma、Milvus、MongoDB Atlas、Neo4j、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate。
-
跨 Vector Store 提供商的可移植 API,包括一种新颖的类似 SQL 的元数据过滤器 API。
-
工具/函数调用 - 允许模型请求执行客户端工具和函数,从而根据需要访问必要的实时信息。
-
可观察性 - 提供对 AI 相关作的见解。
-
用于数据工程的文档注入 ETL 框架。
-
AI 模型评估 - 帮助评估生成的内容并防止幻觉响应的实用程序。
-
ChatClient API - 用于与 AI 聊天模型通信的 Fluent API,惯用性类似于 WebClient 和 RestClient API。
-
Advisors API - 封装重复的生成式 AI 模式,转换发送到和传出语言模型 (LLM) 的数据,并提供跨各种模型和用例的可移植性。
-
支持 Chat Conversation Memory and Retrieval Augmented Generation (RAG)。
-
Spring Boot 所有 AI 模型和向量存储的自动配置和启动器 - 使用 start.spring.io 选择所需的模型或向量存储。
此功能集允许您实施常见使用案例,例如 “” 或 ”Q&A over your documentationChat with your documentation."
-
文档
广泛的参考文档、示例应用程序和研讨会/课程材料。
开始
您可以通过几个简单的步骤开始:
-
使用 Spring AI OpenAI 启动启动器依赖项创建 Spring Boot Web 应用程序。此 Spring Initializr 链接可以帮助您引导应用程序。 (使用 start.spring.io 您可以选择要在新应用程序中使用的任何 AI 模型或 Vector Store)。
-
将您的 OpenAI 密钥添加到 :
application.propertiesplaintext Copyspring.ai.openai.api-key=<YOUR OPENAI KEY> -
将以下代码段添加到您的类中:
SpringAiDemoApplicationjava Copy@Bean public CommandLineRunner runner(ChatClient.Builder builder) { return args -> { ChatClient chatClient = builder.build(); String response = chatClient.prompt("Tell me a joke").call().content(); System.out.println(response); }; } -
运行应用程序:
plaintext Copy./mvnw spring-boot:run
想以其他方式开始吗?查看参考文档中的 Getting Started 部分。