云服务绑定

本站(springdoc.cn)中的内容来源于 spring.io ,原始版权归属于 spring.io。由 springdoc.cn 进行翻译,整理。可供个人学习、研究,未经许可,不得进行任何转载、商用或与之相关的行为。 商标声明:Spring 是 Pivotal Software, Inc. 在美国以及其他国家的商标。

Spring AI 基于 spring-cloud-bindings 基础架构提供云服务绑定(Cloud Bindings))支持。该功能允许应用为供应商指定绑定类型后,通过通用格式声明配置属性。spring-ai 云绑定模块会自动处理这些属性,并将其映射为 spring-ai 原生配置。

以 OpenAi 为例,绑定类型(Binding Type)为 openai。通过属性 spring.ai.cloud.bindings.openai.enabled 可启用或禁用绑定处理器(默认启用)。配置 api-keyuriusernamepassword 等参数时,spring-ai 会自动将其映射至对应系统的原生属性。

启用云服务绑定功能需在应用中添加以下依赖:

<dependency>
   <groupId>org.springframework.ai</groupId>
   <artifactId>spring-ai-spring-cloud-bindings</artifactId>
</dependency>

或添加到 Gradle 的 build.gradle 构建文件中。

dependencies {
    implementation 'org.springframework.ai:spring-ai-spring-cloud-bindings'
}
请参考 依赖管理 章节,将 Spring AI BOM 添加到构建文件中。

可用的云服务绑定

当前 spring-ai-spring-cloud-bindings 模块已支持以下组件的云服务绑定:

服务类型

绑定类型

原属性

目标属性

Chroma Vector Store

chroma

uri, username, passwor

spring.ai.vectorstore.chroma.client.host, spring.ai.vectorstore.chroma.client.port, spring.ai.vectorstore.chroma.client.username, spring.ai.vectorstore.chroma.client.host.password

Mistral AI

mistralai

api-key, uri

spring.ai.mistralai.api-key, spring.ai.mistralai.base-url

Ollama

ollama

uri

spring.ai.ollama.base-url

OpenAi

openai

api-key, uri

spring.ai.openai.api-key, spring.ai.openai.base-url

Weaviate

weaviate

uri, api-key

spring.ai.vectorstore.weaviate.scheme, spring.ai.vectorstore.weaviate.host, spring.ai.vectorstore.weaviate.api-key

Tanzu GenAI

genai

uri, api-key, model-capabilities (chat and embedding), model-name

spring.ai.openai.chat.base-url, spring.ai.openai.chat.api-key, spring.ai.openai.chat.options.model, spring.ai.openai.embedding.base-url, spring.ai.openai.embedding.api-key, spring.ai.openai.embedding.options.model