介绍
这春季AI该项目旨在简化集成人工智能功能的应用程序开发,避免不必要的复杂性。
该项目汲取了著名Python项目的灵感,如LangChain和LlamaIndex,但Spring AI并非这些项目的直接移植。该项目成立时相信,下一代生成式AI应用不仅仅面向Python开发者,而是将无处不在,涵盖多种编程语言。
春季人工智能解决了人工智能整合的根本挑战:将您的企业数据和API与AI模型连接起来. |
Spring AI 提供了为开发 AI 应用奠定基础的抽象。这些抽象有多种实现方式,使组件交换变得轻松,代码修改极少。
Spring AI 提供以下功能:
-
跨 AI 提供商支持 Chat、文本转图像和嵌入模型的可移植 API。支持同步和流式 API 选项。还可访问模型特定功能。
-
支持所有主要的人工智能模型提供商,如Anthropic、OpenAI、Microsoft、亚马逊、谷歌和Ollama。支持的模型类型包括:
-
结构化输出——将AI模型输出映射到POJO。
-
支持所有主要矢量数据库提供商,如 Apache Cassandra、Azure Cosmos DB、Azure 矢量搜索、Chroma、Elasticsearch、GemFire、MariaDB、Milvus、MongoDB Atlas、Neo4j、OpenSearch、Oracle、PostgreSQL/PGVector、Pinecone、Qdrant、Redis、SAP Hana、Typesense 和 Weaviate。
-
跨向量存储提供商的可移植API,包括一个新颖的类SQL元数据过滤API。
-
工具/函数调用——允许模型请求客户端工具和函数的执行,从而根据需要访问必要的实时信息并采取行动。
-
可观察性——提供关于人工智能相关作的洞察。
-
用于数据工程的文档摄取ETL框架。
-
AI模型评估——帮助评估生成内容并防止幻觉反应的实用工具。
-
Spring Boot 自动配置和 AI 模型及向量存储的入门。
-
ChatClient API - 用于与 AI 聊天模型通信的流畅 API,习语上类似于 WebClient 和 RestClient API。
-
Advisors API - 封装反复出现的生成式人工智能模式,转换与语言模型(LLM)之间的数据转换,并提供跨多种模型和用例的可移植性。
这个功能集允许你实现常见的使用场景,比如“对你的文档进行问答”或“与你的文档聊天”。
概念部分提供了 AI 概念及其在 Spring AI 中的表现方式的高级概述。
入门部分教你如何创建第一个AI应用。后续章节将以代码为核心的方式深入介绍每个组件和常见用例。