文章目录
Spring Ai 概述
项目旨在简化人工智能功能的应用程序的开发,避免不必要的复杂性。
该项目从著名的 Python 项目(例如 LangChain 和 LlamaIndex)中汲取灵感,但 Spring AI 并不是这些项目的直接移植。该项目的成立是因为负责人相信下一波生成式人工智能应用程序不仅适用于 Python 开发人员,也适用于其他开发人员,而且将在许多编程语言中普遍存在。
Spring AI 的核心包提供了开发 AI 应用程序的基础的抽象概念。这些抽象概念有多种实现,让我们可以通过最少的代码修改对实现组件进行替换。
Spring AI 提供以下特性:
- 支持所有主要模型提供商,例如 OpenAI、Microsoft、Amazon、Google 和 Huggingface。
- 支持的模型类型包括 “聊天” 和 “文生图” ,还有更多模型类型正在开发中。
- 跨 AI 提供商的可移植 API,用于聊天和嵌入模型。支持 同步调用 和 stream API 选项。还支持下拉访问模型特定功能。
- AI 模型输出到 POJO 的映射。
- 支持所有主要矢量数据库提供商,例如 Azure 矢量搜索、Chroma、Milvus、Neo4j、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate
- 跨 Vector Store 提供商的可移植 API,包括同样可移植的新颖的类似 SQL 的元数据过滤器 API。
- 函数调用
- AI 模型和向量存储的 Spring Boot 自动配置和启动器。
- 数据工程的 ETL 框架
这些特性可让您实现常见用例,例如“对文档进行问答”或“与文档聊天”。
AI 概念章节 提供了 AI 概念及其在 Spring AI 中的表示的高级概述。
入门章节 向您展示如何创建您的第一个 AI 应用程序。后续部分使用以代码为中心的方法深入研究每个组件和常见用例。