Taste of Tech Topics

Acroquest Technology株式会社のエンジニアが書く技術ブログ

Amazon Bedrock の Claude と Stable Diffusion を組み合わせて簡単に画像生成

こんにちは、肌寒い日が続くと南の島の暖かい海に行きたくなる菅野です。

AWS上で、 様々なAIモデルを利用できるようになるサービス、Amazon Bedrockがリリースされました。
Bedrockでは今までのブログで紹介してきた、テキスト生成以外にも、画像生成に利用できるモデルStable Diffusionも利用可能になっています。
Stable Diffusion自体はOSSとなっているので無料で利用できますが、自身のマシンにインストールして動かす必要があり、動かすマシンにはある程度の性能のGPUも必須になってきます。
手軽にStable Diffusionをオンデマンドで利用できるのは今までにないメリットなのではないでしょうか?

今回は、BedrockのClaudeV2モデルを用いて作成したプロンプトを使って、Stable Diffusionで画像生成をしていこうと思います。

Bedrockについて執筆した別記事もあわせてご覧ください。

acro-engineer.hatenablog.com

acro-engineer.hatenablog.com

モデルの利用料金

Amazon BedrockでのStable Diffusionの利用料金はオンデマンド料金とプロビジョニングスループットそれぞれ料金設定がされています。
よく使うであろうオンデマンド利用料金について、Bedrockで利用可能なSDXL0.8モデルではステップ数と画像解像度に応じて以下の料金になっています。

画像解像度 標準品質(51ステップ未満) 高品質(51ステップ以上)
512×512 以下 0.018USD/1画像 0.036USD/1画像
512×512 より大きい 0.036USD/1画像 0.072USD/1画像

詳細は以下の料金ページをご覧ください。

基盤モデルを使用した生成系 AI アプリケーションの構築 – Amazon Bedrock の料金表 – AWS

ステップ数とは?

Stable Diffusionが画像を生成する際には、画像の生成を繰り返し微修正を加えながら画像の精度を上げていきます。
その繰り返し処理1回を1ステップとし、繰り返せば繰り返すだけより高品質な画像が表示されます。

モデルの有効化

Stable Diffusionを利用するにあたって、モデルを有効化する必要があります。
Amazon Bedrock画面のサイドメニューから、Model accessを選択し、表示されるモデル一覧のEditを押下します。 Stability AI>Stable Diffusion XLにチェックを入れてSave Changesを押下します。

Playgroundsの利用

他のテキスト生成AIモデルと同様に、Stable DiffusionもPlaygloudsで簡単にモデルを試すことができます。
簡易的なUIのため変更できるパラメータが少ない、生成画像のサイズを変更できない等の制限が付きますが、まず動かす分には十分かと思います。
Bedrock画面サイドメニューからPlaygrounds>Imageを押下します。

Prompt欄に生成したい画像を示す文言を入力して生成します。
試しに海の画像を生成してみました。

プロンプトをClaudeV2で生成する

Stable Diffusionで期待する画像を生成する際には所謂”呪文”と呼ばれている特定のプロンプトメッセージを入力することが有効であるといわれています。
今回はせっかくなので同じBedrokで利用可能なテキスト生成モデルClaudeV2を利用して、Stable Diffusionのプロンプトを生成してもらいましょう。
カメをカメラと誤解するというおちゃめな出力をしたりしていましたが、訂正してもらって以下のプロンプトを提案してもらいました。

A beautiful coral reef sea at daytime with blue sky. Photorealistic photographic image. A turtle is visible in the frame.

早速こちらのプロンプトを用いて画像生成してみましょう。 以下の画像を生成してくれました。

青空を指定したにもかかわらずちょっと黄昏色に染まってしまってはいますが、カメとサンゴがきれいな海の画像ができました。

まとめ

Amazon BedrockにてStable DiffusionのモデルSDXL0.8を用いて画像生成を実施しました。
Playgroundsではテキストからの画像生成(t2i)しか試せませんが、APIを利用することで画像から画像を生成する(i2i)ことも実施可能なようです。
それについては今後試してみたいですね。
今後も生成AIで何ができるのか探っていこうと思います。
それでは。

Acroquest Technologyでは、キャリア採用を行っています。
  • ディープラーニング等を使った自然言語/画像/音声/動画解析の研究開発
  • Elasticsearch等を使ったデータ収集/分析/可視化
  • マイクロサービス、DevOps、最新のOSSクラウドサービスを利用する開発プロジェクト
  • 書籍・雑誌等の執筆や、社内外での技術の発信・共有によるエンジニアとしての成長
  少しでも上記に興味を持たれた方は、是非以下のページをご覧ください。 www.wantedly.com