Spring AI

Spring AI 项目旨在简化包含人工智能功能的应用程序的开发,而无需不必要的复杂性。

该项目从著名的 Python 项目(如 LangChain 和 LlamaIndex)中汲取灵感,但 Spring AI 并非这些项目的直接移植。该项目基于这样的信念:下一波生成式 AI 应用不仅面向 Python 开发人员,而且将在多种编程语言中无处不在。

Spring AI 的核心是提供抽象,作为开发 AI 应用的基础。这些抽象有多种实现,可以轻松地用最少的代码更改来交换组件。

Spring AI 提供以下功能:

  • 支持所有主要的模型提供商,例如 OpenAI、Microsoft、Amazon、Google 和 Huggingface。

  • 支持的模型类型包括聊天、文本转图像、音频转录、文本转语音,以及更多即将推出的类型。

  • 所有模型的 AI 提供商之间可移植的 API。支持同步和流式 API 选项。还支持降级以访问特定于模型的功能。

  • 将 AI 模型输出映射到 POJO。

  • 支持所有主要的向量数据库提供商,例如 Apache Cassandra、Azure Vector Search、Chroma、Milvus、Neo4j、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate。

  • 向量存储提供商之间可移植的 API,包括一个新颖的类似 SQL 的元数据过滤器 API,该 API 也是可移植的。

  • 函数调用。

  • 用于 AI 模型和向量存储的 Spring Boot 自动配置和启动器。

  • 用于数据工程的 ETL 框架。

这些功能集使您能够实现常见的用例,例如“对您的文档进行问答”或“与您的文档聊天”。

概念部分 提供了 AI 概念及其在 Spring AI 中的表示的高级概述。

入门 部分向您展示了如何创建您的第一个 AI 应用。后续部分将深入探讨每个组件和常见用例,并采用以代码为中心的 подход。