Spring AI 项目旨在简化开发包含人工智能功能的应用程序,避免不必要的复杂性。
该项目从诸如 LangChain 和 LlamaIndex 等著名的 Python 项目中汲取灵感,但 Spring AI 并非这些项目的直接移植。
Spring AI 的创立基于这样一个信念:下一代生成式 AI (Generative AI) 应用程序将不仅仅面向 Python 开发者,而是将普及到许多编程语言中。
在核心层面,Spring AI 提供了作为开发 AI 应用程序基础的抽象。
这些抽象拥有多种实现方式,使得组件更换变得容易,几乎不需要更改代码。
Spring AI 提供以下功能:支持所有主要的模型提供商,如 OpenAI、Microsoft、Amazon、Google 和 Huggingface。支持的模型类型包括聊天和文本到图像,未来将支持更多类型。跨 AI 提供商的便携式 API,用于聊天和嵌入模型。支持同步和流式 API 选项。也支持访问特定模型的特性。将 AI 模型输出映射到 POJOs。支持所有主要的向量数据库提供商,如 Azure Vector Search、Chroma、Milvus、Neo4j、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate。跨向量存储提供商的便携式 API,包括一个新颖的、可移植的类似 SQL 的元数据过滤 API。函数调用(Function Calling)Spring Boot 自动配置和 AI 模型与向量存储的启动器(Starters)。数据工程的 ETL 框架。