Stability AI イメージの生成
Spring AI は、Stability AI のテキストからイメージへの生成モデル (英語) をサポートします。
前提条件
AI モデルにアクセスするには、Stability AI で API キーを作成し、入門ドキュメント (英語) に従ってください。
Spring AI プロジェクトは、Stability AI から取得した API Key
の値に設定する必要がある spring.ai.stabilityai.api-key
という名前の構成プロパティを定義します。環境変数をエクスポートすることは、その構成プロパティを設定する 1 つの方法です。
export SPRING_AI_STABILITYAI_API_KEY=<INSERT KEY HERE>
自動構成
Spring AI は、Stability AI イメージ生成クライアント用の Spring Boot 自動構成を提供します。これを有効にするには、プロジェクトの Maven pom.xml
ファイルに次の依存関係を追加します。
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-stability-ai-spring-boot-starter</artifactId>
</dependency>
または、Gradle build.gradle
ビルドファイルに保存します。
dependencies {
implementation 'org.springframework.ai:spring-ai-stability-ai-spring-boot-starter'
}
Spring AI BOM をビルドファイルに追加するには、"依存関係管理" セクションを参照してください。 |
イメージ生成プロパティ
接頭辞 spring.ai.stabilityai
は、Stability AI への接続を可能にするプロパティ接頭辞として使用されます。
プロパティ | 説明 | デフォルト |
---|---|---|
spring.ai.stabilityai.base-url | 接続先の URL | |
spring.ai.stabilityai.api-key | API キー | - |
接頭辞 spring.ai.stabilityai.image
は、Stability AI の ImageModel
実装を構成できるプロパティ接頭辞です。
プロパティ | 説明 | デフォルト |
---|---|---|
spring.ai.stabilityai.image.enabled | Stability AI イメージモデルを有効にします。 | true |
spring.ai.stabilityai.image.base-url | オプションで spring.ai.openai.base-url をオーバーライドして特定の URL を提供します | |
spring.ai.stabilityai.image.api-key | オプションで spring.ai.openai.api-key をオーバーライドして、特定の API キーを提供します | - |
spring.ai.stabilityai.image.option.n | 生成されるイメージの数。1 ~ 10 の間で指定する必要があります。 | 1 |
spring.ai.stabilityai.image.option.model | Stability AI で使用するエンジン / モデル。モデルはパスパラメーターとして URL に渡されます。 |
|
spring.ai.stabilityai.image.option.width | 生成するイメージの幅 (ピクセル単位)。増分は 64 で割り切れます。エンジン固有の寸法検証が適用されます。 | 512 |
spring.ai.stabilityai.image.option.height | 生成するイメージの高さ (ピクセル単位)。増分は 64 で割り切れます。エンジン固有の寸法検証が適用されます。 | 512 |
spring.ai.stabilityai.image.option.responseFormat | 生成されたイメージが返される形式。"application/json" または "image/png" である必要があります。 | - |
spring.ai.stabilityai.image.option.cfg_scale | プロンプトテキストに対する拡散プロセスの遵守の厳密さのレベル。範囲: 0 ~ 35。 | 7 |
spring.ai.stabilityai.image.option.clip_guidance_preset | スタイルプリセットを渡して、イメージモデルを特定のスタイルに導きます。このスタイルプリセットのリストは変更される可能性があります。 |
|
spring.ai.stabilityai.image.option.sampler | 拡散プロセスにどのサンプラーを使用するか。この値を省略すると、適切なサンプラーが自動的に選択されます。 | - |
spring.ai.stabilityai.image.option.seed | ランダムノイズシード (このオプションを省略するか、ランダムシードに 0 を使用します)。有効な範囲: 0 ~ 4294967295。 | 0 |
spring.ai.stabilityai.image.option.steps | 実行する拡散ステップの数。有効な範囲: 10 ~ 50。 | 30 |
spring.ai.stabilityai.image.option.style_preset | スタイルプリセットを渡して、イメージモデルを特定のスタイルに導きます。このスタイルプリセットのリストは変更される可能性があります。 | - |
ランタイムオプション
StabilityAiImageOptions.java [GitHub] (英語) は、使用するモデル、スタイル、サイズなどのモデル構成を提供します。
起動時に、StabilityAiImageModel(StabilityAiApi stabilityAiApi, StabilityAiImageOptions options)
コンストラクターを使用してデフォルトのオプションを構成できます。あるいは、前述の spring.ai.openai.image.options.*
プロパティを使用します。
実行時に、新しいリクエスト固有のオプションを ImagePrompt
呼び出しに追加することで、デフォルトのオプションをオーバーライドできます。たとえば、品質や作成するイメージの数などの Stability AI 固有のオプションをオーバーライドするには、次のコード例を使用します。
ImageResponse response = openaiImageModel.call(
new ImagePrompt("A light cream colored mini golden doodle",
StabilityAiImageOptions.builder()
.withStylePreset("cinematic")
.withN(4)
.withHeight(1024)
.withWidth(1024).build())
);
モデル固有の StabilityAiImageOptions [GitHub] (英語) に加えて、ImageOptionsBuilder#builder() [GitHub] (英語) で作成されたポータブル ImageOptions [GitHub] (英語) インスタンスを使用できます。 |