云绑定
Spring AI 基于 spring-cloud-bindings 提供了对云绑定的支持。这使得应用程序可以为提供者指定绑定类型,并使用通用格式表达属性。spring-ai 云绑定将处理这些属性,并将它们绑定到 spring-ai 的原生属性上。
例如,当使用 OpenAi 时,绑定类型为 openai。通过属性 spring.ai.cloud.bindings.openai.enabled,可以启用或禁用绑定处理器。默认情况下,当指定绑定类型时,此属性将被启用。可以配置 api-key、uri、username、password 等,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 Vecor 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 和 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 |