入门指南

本节提供了如何开始使用 Spring AI 的指引。

您应根据需要遵循以下各节中的步骤。

Spring AI 支持 Spring Boot 3.4.x。Spring Boot 3.5.x 发布后,我们也将支持它。

Spring Initializr

前往 start.spring.io 并选择您希望在新应用中使用的 AI 模型和向量数据库。

Artifact 仓库

里程碑版本 - 使用 Maven Central

从 1.0.0-M6 版本开始,发布版本已在 Maven Central 提供。您的构建文件无需任何更改。

Snapshot 版本 - 添加 Snapshot 仓库

要使用 Snapshot 版本(以及 1.0.0-M6 之前的里程碑版本),您需要在构建文件中添加以下 Snapshot 仓库。

将以下仓库定义添加到您的 Maven 或 Gradle 构建文件中

Maven
<repositories>
  <repository>
    <id>spring-snapshots</id>
    <name>Spring Snapshots</name>
    <url>https://repo.spring.io/snapshot</url>
    <releases>
      <enabled>false</enabled>
    </releases>
  </repository>
  <repository>
    <name>Central Portal Snapshots</name>
    <id>central-portal-snapshots</id>
    <url>https://central.sonatype.com/repository/maven-snapshots/</url>
    <releases>
      <enabled>false</enabled>
    </releases>
    <snapshots>
      <enabled>true</enabled>
    </snapshots>
  </repository>
</repositories>
Gradle
repositories {
  mavenCentral()
  maven { url 'https://repo.spring.io/milestone' }
  maven { url 'https://repo.spring.io/snapshot' }
  maven {
    name = 'Central Portal Snapshots'
    url = 'https://central.sonatype.com/repository/maven-snapshots/'
  }
}

注意:当在 Maven 中使用 Spring AI Snapshot 版本时,请注意您的 Maven 镜像配置。如果您在 settings.xml 中配置了如下所示的镜像:

<mirror>
    <id>my-mirror</id>
    <mirrorOf>*</mirrorOf>
    <url>https://my-company-repository.com/maven</url>
</mirror>

通配符 * 将把所有仓库请求重定向到您的镜像,从而阻止访问 Spring Snapshot 仓库。要解决此问题,请修改 mirrorOf 配置以排除 Spring 仓库。

<mirror>
    <id>my-mirror</id>
    <mirrorOf>*,!spring-snapshots,!central-portal-snapshots</mirrorOf>
    <url>https://my-company-repository.com/maven</url>
</mirror>

此配置允许 Maven 直接访问 Spring Snapshot 仓库,同时仍使用您的镜像获取其他依赖项。

依赖管理

Spring AI 物料清单 (BOM) 声明了给定 Spring AI 版本所使用的所有依赖项的推荐版本。这是一个仅包含 BOM 的版本,它只包含依赖管理,不包含插件声明或对 Spring 或 Spring Boot 的直接引用。您可以使用 Spring Boot 父级 POM,或者使用 Spring Boot 的 BOM(spring-boot-dependencies)来管理 Spring Boot 版本。

将 BOM 添加到您的项目

Maven
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-bom</artifactId>
            <version>1.0.0-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
Gradle
dependencies {
  implementation platform("org.springframework.ai:spring-ai-bom:1.0.0-SNAPSHOT")
  // Replace the following with the starter dependencies of specific modules you wish to use
  implementation 'org.springframework.ai:spring-ai-openai'
}

Gradle 用户也可以通过利用 Gradle (5.0+) 对使用 Maven BOM 声明依赖约束的原生支持来使用 Spring AI BOM。这可以通过向 Gradle 构建脚本的 dependencies 部分添加 'platform' 依赖处理方法来实现。

添加特定组件的依赖项

文档中的以下各节都说明了您需要添加到项目构建系统中的依赖项。

Spring AI 示例

请参阅 此页面 以获取更多与 Spring AI 相关的资源和示例。