Amazon Bedrock

根據 Bedrock 的建議,Spring AI 已轉換為使用 Amazon Bedrock 的 Converse API 來實現 Spring AI 中的所有聊天對話。 Bedrock Converse API 具有以下主要優勢

  • 統一介面:一次編寫程式碼,即可與任何受支援的 Amazon Bedrock 模型一起使用

  • 模型靈活性:在不同對話模型之間無縫切換,無需更改程式碼

  • 擴充套件功能:透過專用結構支援模型特定引數

  • 工具支援:與函式呼叫和工具使用功能原生整合

  • 多模態功能:內建支援視覺和其他多模態功能

  • 面向未來:符合 Amazon Bedrock 推薦的最佳實踐

Converse API 不支援嵌入操作,因此這些操作將保留在當前 API 中,並且現有 InvokeModel API 中的嵌入模型功能將得到維護

Amazon Bedrock 是一項託管服務,透過統一的 API 提供來自各種 AI 提供商的基礎模型。

Spring AI 透過實現 Spring EmbeddingModel 介面支援透過 Amazon Bedrock 提供的 Embedding AI 模型

此外,Spring AI 為所有客戶端提供了 Spring 自動配置和啟動器,使其易於為 Bedrock 模型引導和配置。

入門

有幾個入門步驟

  • 將 Bedrock 的 Spring Boot 啟動器新增到您的專案。

  • 獲取 AWS 憑證:如果您還沒有 AWS 賬戶和 AWS CLI 配置,此影片指南可以幫助您進行配置:在不到 4 分鐘內設定 AWS CLI 和 SDK!您應該能夠獲取您的訪問金鑰和安全金鑰。

  • 啟用要使用的模型:轉到 Amazon Bedrock,然後從左側的模型訪問選單中,配置對您將要使用的模型的訪問許可權。

專案依賴

然後將 Spring Boot 啟動器依賴項新增到您的專案的 Maven pom.xml 構建檔案

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

或新增到您的 Gradle build.gradle 構建檔案中。

dependencies {
    implementation 'org.springframework.ai:spring-ai-starter-model-bedrock'
}
請參閱依賴管理部分,將 Spring AI BOM 新增到您的構建檔案。

連線到 AWS Bedrock

使用 BedrockAwsConnectionProperties 配置 AWS 憑證和區域

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 屬性是強制性的。

AWS 憑證按以下順序解析

  1. Spring-AI Bedrock spring.ai.bedrock.aws.access-keyspring.ai.bedrock.aws.secret-key 屬性。

  2. Java 系統屬性 - aws.accessKeyIdaws.secretAccessKey

  3. 環境變數 - AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY

  4. 來自系統屬性或環境變數的 Web 身份令牌憑證。

  5. 預設位置(~/.aws/credentials)的憑證配置檔案,所有 AWS SDK 和 AWS CLI 共享。

  6. 如果設定了 AWS_CONTAINER_CREDENTIALS_RELATIVE_URI 環境變數並且安全管理器有權訪問該變數,則透過 Amazon EC2 容器服務傳遞的憑證。

  7. 透過 Amazon EC2 元資料服務傳遞的例項配置檔案憑證,或設定 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 環境變數。

AWS 區域按以下順序解析

  1. Spring-AI Bedrock spring.ai.bedrock.aws.region 屬性。

  2. Java 系統屬性 - aws.region

  3. 環境變數 - AWS_REGION

  4. 預設位置(~/.aws/credentials)的憑證配置檔案,所有 AWS SDK 和 AWS CLI 共享。

  5. 透過 Amazon EC2 元資料服務傳遞的例項配置檔案區域。

除了標準 Spring-AI Bedrock 憑證和區域屬性配置之外,Spring-AI 還支援自定義 AwsCredentialsProviderAwsRegionProvider bean。

例如,同時使用 Spring-AI 和 Spring Cloud for Amazon Web Services。Spring-AI 與 Spring Cloud for Amazon Web Services 憑證配置相容。

啟用選定的 Bedrock 模型

預設情況下,所有模型都已停用。您必須使用 spring.ai.bedrock.<model>.embedding.enabled=true 屬性顯式啟用所選的 Bedrock 模型。

以下是受支援的 ``s

模型

cohere

titan (尚不支援批次處理)

例如,要啟用 Bedrock Cohere 嵌入模型,您需要設定 spring.ai.bedrock.cohere.embedding.enabled=true

接下來,您可以使用 spring.ai.bedrock.<model>.embedding.* 屬性來配置每個提供的模型。

有關更多資訊,請參閱下面每個受支援模型的文件。

© . This site is unofficial and not affiliated with VMware.