Spring AI 是一个用于 AI 工程的应用框架。
其目标是将 Spring 生态系统设计原则应用于 AI 领域,如可移植性和模块化设计,并推广将 POJO 作为应用构建模块到人工智能领域的应用。

Spring AI 的核心是解决人工智能集成的根本挑战:将企业数据和 API 与 AI 模型连接起来。
特征
Spring AI 提供以下功能:
- 支持所有主要的人工智能模型提供商,如Anthropic、OpenAI、Microsoft、亚马逊、谷歌和Ollama。支持的模型类型包括:
- 支持跨 AI 提供商的可移植 API 支持,支持同步和流式 API 选项。还可访问模型专属功能。
- 结构化输出——将AI模型输出映射到POJO。
- 支持所有主要的向量数据库提供商,如 Apache Cassandra、Azure Vector Search、Chroma、Milvus、MongoDB Atlas、Neo4j、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate。
- 跨向量存储提供商的可移植API,包括一种新颖的类SQL元数据过滤API。
- 工具/函数调用——允许模型请求执行客户端工具和函数,从而根据需要访问必要的实时信息。
- 可观察性——提供关于人工智能相关作的洞察。
- 用于数据工程的文档注入ETL框架。
- AI模型评估——帮助评估生成内容并防止幻觉反应的实用工具。
- ChatClient API - 用于与 AI 聊天模型通信的流畅 API,习语上类似于 WebClient 和 RestClient API。
- Advisors API - 封装反复出现的生成式人工智能模式,转换与语言模型(LLM)之间的数据转换,并提供跨多种模型和用例的可移植性。
- 支持聊天对话、记忆和检索增强生成(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模型或向量存储。)
-
将您的OpenAI密钥添加到:application.properties
spring.ai.openai.api-key=<YOUR OPENAI KEY>
-
给你的课堂添加以下片段:SpringAiDemoApplication
@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);
};
}
-
运行应用程序:
./mvnw spring-boot:run
想换个方式开始吗?请查看参考文献中的“入门”部分。