稳定性人工智能图像生成

Spring AI 支持 Stability AI 的文本转图像生成模型spring-doc.cadn.net.cn

前提条件

你需要用 Stability AI 创建一个 API 密钥来访问他们的 AI 模型。按照他们的入门文档获取你的 API 密钥。spring-doc.cadn.net.cn

Spring AI 项目定义了一个配置属性,名为spring.ai.stabilityai.api-key你应该设置为API 密钥这些内容来自Stability AI。spring-doc.cadn.net.cn

你可以在你的application.properties文件:spring-doc.cadn.net.cn

spring.ai.stabilityai.api-key=<your-stabilityai-api-key>

为了在处理敏感信息如 API 密钥时增强安全性,您可以使用 Spring 表达式语言(SpEL)引用自定义环境变量:spring-doc.cadn.net.cn

# In application.yml
spring:
  ai:
    stabilityai:
      api-key: ${STABILITYAI_API_KEY}
# In your environment or .env file
export STABILITYAI_API_KEY=<your-stabilityai-api-key>

你也可以在应用代码中编程设置此配置:spring-doc.cadn.net.cn

// Retrieve API key from a secure source or environment variable
String apiKey = System.getenv("STABILITYAI_API_KEY");

自动配置

春季AI自动配置、起始模块的工件名称发生了重大变化。 更多信息请参阅升级说明spring-doc.cadn.net.cn

Spring AI 为 Stability AI 图像生成客户端提供了 Spring Boot 自动配置。要启用该功能,请在项目的 Maven 中添加以下依赖pom.xml文件:spring-doc.cadn.net.cn

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

或者去你的Gradlebuild.gradle构建文件。spring-doc.cadn.net.cn

dependencies {
    implementation 'org.springframework.ai:spring-ai-starter-model-stability-ai'
}
请参考依赖管理部分,将Spring AI的物料清单添加到你的构建文件中。

图像生成属性

前缀spring.ai.stabilityai作为属性前缀,允许你连接到Stability AI。spring-doc.cadn.net.cn

属性 描述 默认值

spring.ai.stabilityai.base-urlspring-doc.cadn.net.cn

连接的URL(链接)spring-doc.cadn.net.cn

api.stability.ai/v1spring-doc.cadn.net.cn

spring.ai.stabilityai.api-keyspring-doc.cadn.net.cn

API 密钥spring-doc.cadn.net.cn

-spring-doc.cadn.net.cn

启用和禁用图像自动配置现在通过顶层属性配置,前缀为spring.ai.model.image.spring-doc.cadn.net.cn

要启用,请 spring.ai.model.image=stabilityai(默认启用)spring-doc.cadn.net.cn

要禁用,可以选择 spring.ai.model.image=none(或任何与 stabilityai 不匹配的值)spring-doc.cadn.net.cn

此改动旨在允许配置多个模型。spring-doc.cadn.net.cn

前缀spring.ai.stabilityai.image是允许您配置图像模型稳定性人工智能的实现。spring-doc.cadn.net.cn

属性 描述 默认值

spring.ai.stabilityai.image.enabled(已移除且不再有效)spring-doc.cadn.net.cn

启用Stability AI图像模型。spring-doc.cadn.net.cn

truespring-doc.cadn.net.cn

spring.ai.model.imagespring-doc.cadn.net.cn

启用Stability AI图像模型。spring-doc.cadn.net.cn

稳定性人工智能spring-doc.cadn.net.cn

spring.ai.stabilityai.image.base-urlspring-doc.cadn.net.cn

可选 可以覆盖 spring.ai.openai.base-url 以提供特定的 URLspring-doc.cadn.net.cn

https://api.stability.ai/v1spring-doc.cadn.net.cn

spring.ai.stabilityai.image.api-keyspring-doc.cadn.net.cn

可选 覆盖 spring.ai.openai.api-key 以提供特定的 api-keyspring-doc.cadn.net.cn

-spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.nspring-doc.cadn.net.cn

需要生成的图像数量。必须在1到10之间。spring-doc.cadn.net.cn

1spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.modelspring-doc.cadn.net.cn

用于Stability AI的引擎/模型。模型作为路径参数传递在URL中。spring-doc.cadn.net.cn

稳定扩散 V1-6spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.widthspring-doc.cadn.net.cn

图像宽度,生成像素,增量可被64整除。适用引擎特定的尺寸验证。spring-doc.cadn.net.cn

512spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.heightspring-doc.cadn.net.cn

图像生成的高度(像素单位)以增量为64。适用引擎特定的尺寸验证。spring-doc.cadn.net.cn

512spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.response格式spring-doc.cadn.net.cn

生成图像返回的格式。必须是“application/json”或“image/png”。spring-doc.cadn.net.cn

-spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.cfg_scalespring-doc.cadn.net.cn

扩散过程对提示文本的严格程度。范围:0到35。spring-doc.cadn.net.cn

7spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.clip_guidance_presetspring-doc.cadn.net.cn

传递一个样式预设,引导图像模型朝向特定样式。此样式预设列表可能会变动。spring-doc.cadn.net.cn

没有spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.samplerspring-doc.cadn.net.cn

扩散过程中应使用哪个采样器。如果省略了该数值,将自动选择合适的采样器。spring-doc.cadn.net.cn

-spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.seedspring-doc.cadn.net.cn

随机噪声种子(省略此选项或用0作为随机种子)。有效范围:0到4294967295。spring-doc.cadn.net.cn

0spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.stepsspring-doc.cadn.net.cn

需要运行的扩散步骤数。有效范围:10到50。spring-doc.cadn.net.cn

30spring-doc.cadn.net.cn

spring.ai.stabilityai.image.option.style_presetspring-doc.cadn.net.cn

传递一个样式预设,引导图像模型朝向特定样式。此样式预设列表可能会变动。spring-doc.cadn.net.cn

-spring-doc.cadn.net.cn

运行时选项

StabilityAiImageOptions.java提供模型配置,如使用的模型、样式、大小等。spring-doc.cadn.net.cn

启动时,默认选项可以配置为StabilityAiImageModel(StabilityAiApi stabilityAiApi,StabilityAiImageOptions 选项)构造 函数。 或者,可以使用spring.ai.openai.image.options.*上述性质。spring-doc.cadn.net.cn

运行时,你可以通过添加新的、针对请求的选项来覆盖默认选项图片提示叫。 例如,要覆盖 Stability AI 特有的选项,如质量和可创建图片数量,请使用以下代码示例:spring-doc.cadn.net.cn

ImageResponse response = stabilityaiImageModel.call(
        new ImagePrompt("A light cream colored mini golden doodle",
        StabilityAiImageOptions.builder()
                .stylePreset("cinematic")
                .N(4)
                .height(1024)
                .width(1024).build())

);
除了模型特定的 StabilityAiImageOptions,你还可以使用一个可移植的 ImageOptions 实例,该实例是用 ImageOptionsBuilder#builder() 创建的。