入门指南

本节提供了使用 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 应用程序,请按照以下步骤操作:

  1. 下载最新的 Spring CLI 发行版 并按照 安装说明 进行操作。

  2. 要创建一个简单的基于 OpenAI 的应用程序,请使用以下命令:

    spring boot new --from ai --name myai
  3. 参考生成的 README.md 文件,了解如何获取 OpenAI API 密钥并运行您的第一个 AI 应用程序。

要将相同的简单 AI 应用程序添加到 现有 项目中,请执行以下操作:

spring boot add ai
Spring CLI 允许用户定义自己的 项目目录,定义您可以创建或添加到现有代码库中的项目。

Spring Initializr

前往 start.spring.io 并选择要在新应用程序中使用的 AI 模型和向量存储。

添加里程碑和快照仓库

如果您更喜欢手动添加依赖片段,请按照以下部分中的说明进行操作。

要使用里程碑和快照版本,您需要在构建文件中添加对 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' }
}

依赖管理

Spring AI Bill of Materials (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。这可以通过将依赖节的 'platform' 依赖处理方法添加到Gradle构建脚本的依赖部分来实现。如下片段所示,然后可以跟随一个或多个spring-ai模块的无版本声明的Starter依赖项,例如spring-ai-openai。

dependencies {
  implementation platform("org.springframework.ai:spring-ai-bom:0.8.1-SNAPSHOT")
  // 使用您希望使用的特定模块的Starter依赖项替换以下内容
  implementation 'org.springframework.ai:spring-ai-openai'
}

为特定组件添加依赖项

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

聊天模型

向量数据库