Getting Started
本部分提供了有关如何开始使用 Spring AI 的切入点。 你应根据自己的需要遵循以下每个部分中的步骤。
Spring CLI
Spring CLI简化了直接从终端创建新应用程序的过程。对于熟悉 JavaScript 生态系统的用户来说,就像’create-react-app' 命令,Spring CLI 提供了 `spring boot new`命令来创建基于 Spring 的项目。Spring CLI 还提供将外部代码库集成到当前项目的功能,以及许多其他生产力功能。
重要的是要理解,“Spring CLI”是一个独立的项目,与“Spring Boot CLI”不同,它们各自有一组独特的功能。 |
要开始创建 Spring AI 应用程序,请按照以下步骤操作:
-
下载最新的 Spring CLI Release并遵循 installation instructions。
-
要创建基于 OpenAI 的简单应用程序,请使用以下命令:[source, shell]
spring boot new --from ai --name myai
-
查阅生成的
README.md
文件,获得有关获取 OpenAI API 密钥和运行第一个 AI 应用程序的指导。
若要将同一个简单 AI 应用程序添加到一个*现有的*项目,请执行:
spring boot add ai
|
Spring Initializr
进入 start.spring.io,选择要在新应用程序中使用的 AI 模型和向量存储。
Add Milestone and Snapshot Repositories
如果你希望手工添加依赖项代码段,请遵循以下部分中的说明。
要使用里程碑和快照版本,你需要在你的构建文件中添加对 Spring 里程碑和/或快照存储库的引用。
对于 Maven,根据需要添加以下存储库定义:
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
对于 Gradle,根据需要添加以下存储库定义:
repositories {
mavenCentral()
maven { url 'https://repo.spring.io/milestone' }
maven { url 'https://repo.spring.io/snapshot' }
}
Dependency Management
Spring AI 物料清单 (BOM) 声明了 Spring AI 给定版本使用的所有依赖项的推荐版本。在你应用程序的构建脚本中使用 BOM 无需你自己指定和维护依赖项版本。相反,你使用的 BOM 版本决定了所利用的依赖项版本。它还确保了你默认情况下使用依赖项的受支持和经过测试的版本,除非你选择覆盖它们。
如果你是一个 Maven 用户,你可以通过将以下内容添加到你的 pom.xml 文件中来使用 BOM -
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>0.8.1-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Gradle 用户还可以通过使用 Gradle (5.0+) 固有支持来声明依赖项约束(使用 Maven BOM)来使用 Spring AI BOM。这是通过向你的 Gradle 构建脚本的依赖项部分添加一个 'platform' 依赖项处理程序方法来实现的。如下面的代码段所示,这之后可以紧跟着对你想要使用的模块 starter 依赖项的无版本声明,例如:spring-ai-openai。
dependencies {
implementation platform("org.springframework.ai:spring-ai-bom:0.8.1-SNAPSHOT")
// Replace the following with the starter dependencies of specific modules you wish to use
implementation 'org.springframework.ai:spring-ai-openai'
}
Add dependencies for specific components
文档中以下每个部分都显示了你需要将哪些依赖项添加到你的项目构建系统中。
Chat Models
-
-
OpenAI Chat Completion (流和函数调用支持)
-
Microsoft Azure Open AI Chat Completion (流和函数调用支持)
-
HuggingFace Chat Completion(不支持流媒体)
-
Google Vertex AI Gemini Chat Completion(支持流媒体、多模态和函数调用)
-
MistralAI Chat Completion(支持流媒体和函数调用)
-
Vector Databases
-
-
Azure Vector Search- Azure矢量存储。
-
ChromaVectorStore- Chroma矢量存储。
-
MilvusVectorStore- Milvus矢量存储。
-
Neo4jVectorStore- Neo4j矢量存储。
-
PineconeVectorStore- PineCone矢量存储。
-
QdrantVectorStore- Qdrant矢量存储。
-
RedisVectorStore- Redis矢量存储。
-
WeaviateVectorStore- Weaviate矢量存储。
-
SimpleVectorStore- 一个简单(内存中)的持久矢量存储实现,适合作为教学用途。
-
Sample Projects
你可以克隆这些项目,然后在 GitHub 上开始使用。
OpenAI
-
[role="bare"]https://github.com/rd-1-2022/ai-openai-helloworld