如需最新的快照版本,请使用 Spring AI 1.1.3spring-doc.cadn.net.cn

Amazon Bedrock

遵循 Bedrock 的建议,Spring AI 已过渡到使用 Amazon Bedrock 的 Converse API 来实现 Spring AI 中的所有聊天对话功能。 Bedrock Converse API 具有以下主要优势:spring-doc.cadn.net.cn

The Converse API 不支持嵌入操作,因此这些功能将保持在当前 API 中,并且现有 InvokeModel API 中的嵌入模型功能也将维持不变spring-doc.cadn.net.cn

Amazon Bedrock 是一项托管服务,通过统一的 API 提供来自各类 AI 提供商的基础模型。spring-doc.cadn.net.cn

Spring AI 通过实现 Spring EmbeddingModel 接口,支持通过 Amazon Bedrock 提供的嵌入型 AI 模型spring-doc.cadn.net.cn

此外,Spring AI 为所有客户端提供了 Spring 自动配置和 Boot Starters,使得引导和配置 Bedrock 模型变得轻而易举。spring-doc.cadn.net.cn

快速开始

开始使用只需几个步骤spring-doc.cadn.net.cn

项目依赖

然后将 Spring Boot Starter 依赖项添加到项目的 Maven pom.xml 构建文件中:spring-doc.cadn.net.cn

<dependency>
 <artifactId>spring-ai-starter-model-bedrock</artifactId>
 <groupId>org.springframework.ai</groupId>
</dependency>

请将以下内容添加到您的Gradle build.gradle 构建文件中。spring-doc.cadn.net.cn

dependencies {
    implementation 'org.springframework.ai:spring-ai-starter-model-bedrock'
}
请参阅依赖管理部分,将Spring AI BOM添加到您的构建文件中。

连接到 AWS Bedrock

使用 BedrockAwsConnectionProperties 来配置 AWS 凭证和区域:spring-doc.cadn.net.cn

spring.ai.bedrock.aws.region=us-east-1

spring.ai.bedrock.aws.access-key=YOUR_ACCESS_KEY
spring.ai.bedrock.aws.secret-key=YOUR_SECRET_KEY

spring.ai.bedrock.aws.timeout=10m

region 属性是必需的。spring-doc.cadn.net.cn

AWS 凭据按以下顺序解析:spring-doc.cadn.net.cn

  1. Spring-AI Bedrock spring.ai.bedrock.aws.access-keyspring.ai.bedrock.aws.secret-key 属性。spring-doc.cadn.net.cn

  2. Java 系统属性 - aws.accessKeyIdaws.secretAccessKeyspring-doc.cadn.net.cn

  3. 环境变量 - AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYspring-doc.cadn.net.cn

  4. 来自系统属性或环境变量的 Web 身份Tokens凭据。spring-doc.cadn.net.cn

  5. 凭据配置文件位于默认位置(~/.aws/credentials),由所有 AWS SDK 和 AWS CLI 共享。spring-doc.cadn.net.cn

  6. 如果设置了 AWS_CONTAINER_CREDENTIALS_RELATIVE_URI 环境变量,并且安全管理器具有访问该变量的权限,则凭据将通过 Amazon EC2 容器服务交付。spring-doc.cadn.net.cn

  7. 通过 Amazon EC2 元数据服务提供的实例配置文件凭证,或设置 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 环境变量。spring-doc.cadn.net.cn

AWS 区域按以下顺序解析:spring-doc.cadn.net.cn

  1. Spring-AI Bedrock spring.ai.bedrock.aws.region 属性。spring-doc.cadn.net.cn

  2. Java 系统属性 - aws.regionspring-doc.cadn.net.cn

  3. 环境变量 - AWS_REGIONspring-doc.cadn.net.cn

  4. 凭据配置文件位于默认位置(~/.aws/credentials),由所有 AWS SDK 和 AWS CLI 共享。spring-doc.cadn.net.cn

  5. 通过 Amazon EC2 元数据服务提供的实例配置文件区域。spring-doc.cadn.net.cn

除了标准的 Spring-AI Bedrock 凭证和区域属性配置外,Spring-AI 还支持自定义的 AwsCredentialsProviderAwsRegionProvider Bean。spring-doc.cadn.net.cn

例如,同时使用 Spring-AI 和 适用于亚马逊云科技 (AWS) 的 Spring Cloud。Spring-AI 与适用于亚马逊云科技 (AWS) 的 Spring Cloud 凭证配置兼容。

启用选定的 Bedrock 模型

默认情况下,所有模型均处于禁用状态。您必须使用 spring.ai.bedrock.<model>.embedding.enabled=true 属性显式启用所选的 Bedrock 模型。

以下是支持的 `<model>`:spring-doc.cadn.net.cn

模型spring-doc.cadn.net.cn

Coherespring-doc.cadn.net.cn

titan(暂不支持批量处理)spring-doc.cadn.net.cn

例如,要启用 Bedrock Cohere 嵌入模型,您需要设置 spring.ai.bedrock.cohere.embedding.enabled=truespring-doc.cadn.net.cn

接下来,您可以使用spring.ai.bedrock.<model>.embedding.*属性来配置所提供的每个模型。spring-doc.cadn.net.cn

更多信息,请参阅下方各支持模型的文档。spring-doc.cadn.net.cn