入门

本节提供了如何开始使用 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 中获取。 您的构建文件无需任何更改。

快照版本 - 添加快照仓库

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

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

  • Maven

  • Gradle

<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>
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 快照一起使用时,请注意您的 Maven 镜像配置。如果您在 settings.xml 中配置了如下镜像:

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

通配符 * 会将所有仓库请求重定向到您的镜像,从而阻止访问 Spring 快照仓库。要解决此问题,请修改 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 快照仓库,同时仍将您的镜像用于其他依赖项。

依赖管理

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

将 BOM 添加到您的项目:

  • Maven

  • Gradle

<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>
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。这通过将“platform”依赖处理方法添加到 Gradle 构建脚本的依赖部分来实现。

添加特定组件的依赖项

文档中的以下每个部分都显示了您需要添加到项目构建系统中的依赖项。

Spring AI 示例

有关 Spring AI 的更多资源和示例,请参阅 此页面