Amazon Bedrockでモデルごとに画像を生成してみた

## はじめに
画像生成AIに興味があり、色々と見ていたのですが、ついにAWSにも導入されたので、色々なモデルを使って遊んでみようと思いました！
生成される画像のクオリティと価格を比較してみたいと思います！

## Bedrockについて
Amazonが2023年4月発表した、生成AIのプラットフォームです。
2023年12月現時点では、下記5リージョンでサポートされており「Text」「Chat」「Image」の3タイプの機能があり、リージョンによって使える機能が異なります。
また、サポートされているモデルも、使用するためにリクエストをしたり、ユースケースを提出する必要があるみたいです。
ユースケースの提出をしない普通のリクエストは、1-2時間で承認されましたので、全然厳しくはなさそうです！

|  |バージニア北部|オレゴン|シンガポール|東京|フランクフルト|
|:-:|:-:|:-:|:-:|:-:|:-:|
|text|◯|◯|◯|◯|◯|
|chat|◯|◯|◯|◯|◯|
|image|◯|◯|×|×|×|
|base model|21|21|2|3|4|

## 画像生成の設定
現時点でAWSがサポートしているモデルは、以下の3つです。
* Stability SDXL 0.8
* Stability SDXL 1.0
* Amazon Titan Image Generator G1
 
これらのモデルを選択した後に、画像生成AI特有の設定（Configurations）をしていきます。
今回は全てデフォルトのパラメータで実施します。
#### Stability SDXL 0.8
![スクリーンショット 2023-12-03 22.43.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/da464e38-5ec5-d6f4-e22e-09a6e4668968.png)

各パラメータの定義（aws公式サイトより引用）
* Prompt strength（プロンプトの強さ） – 最終画像がプロンプトをどの程度描写するかを決定します。
* Generation step（生成ステップ） – 画像がサンプリングされる回数。 ステップ数が多いほど、より正確になる可能性があります。
* Seed（シード） – 初期ノイズを決定します。 同じシードを同じ設定で使用すると、同様のイメージが作成されます。

#### Stability SDXL 1.0
![スクリーンショット 2023-12-03 23.11.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/857fbb49-58ae-bac9-5712-b72f18b475cd.png)

#### Amazon Titan Image Generator G1
Number of imagesだけ、1に変えて実施しました。
![スクリーンショット 2023-12-03 23.21.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/7abedbbc-391c-9e30-f034-9446f3f83a19.png)


## モデル別に実施
今回実施するプロンプトは、以下の3つでやってみようと思います！
① a man walking in the forest（人間）
② Future office building（建造物）
③ Real Ocean, best quiality（自然）

### 実施結果①
#### Stability SDXL 0.8
![a man walking in the forest.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/d038d8c7-b01b-3fff-9b2c-e00e73193a4d.png)

#### Stability SDXL 1.0
![a man walking in the forest (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/c59dfcb0-7691-1b2f-6e34-12f4ab38e38f.png)

#### Amazon Titan Image Generator G1
![a man walking in the forest (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/5d8efe41-095c-541b-1673-3b4a9438d171.png)


### 実施結果②
#### Stability SDXL 0.8
![Future office building.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/126360ac-7e5c-c93d-c211-40b8bc7ab94c.png)

#### Stability SDXL 1.0
![Future office building (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/52aa18b3-ed1b-7c65-6057-92399ba5d9db.png)

#### Amazon Titan Image Generator G1
![Imagined Future office building.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/50cff558-bb2d-db44-6112-ed4740ac1eae.png)


### 実施結果③
#### Stability SDXL 0.8
![Future office building (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/c2ac18d3-05be-d534-d3fe-4f2c11220c34.png)

#### Stability SDXL 1.0
![Real Ocean, best quiality.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/3c0e9d1e-a2e9-ff98-c76e-788d43a151ca.png)

#### Amazon Titan Image Generator G1
![Real Ocean, best quiality (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/70d5a578-7aed-f469-5fe0-11c07228b836.png)


### おまけ
アニメーション調の画像も作ってみました！
比較的単純なプロンプトであれば、綺麗なものを生成してくれます！
ただ、複雑かつよくわからない単語を入れると、結構残念な感じになります。笑

プロンプト: beautiful sky and cloud as animation style

#### Stability SDXL 0.8
![beautiful sky and cloud as animation style (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/db350cac-af4f-3a5e-ee27-ed87e7e631b1.png)

#### Stability SDXL 1.0
![beautiful sky and cloud as animation style (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/2128c7d6-9227-56d2-0197-e240a619500c.png)

#### Amazon Titan Image Generator G1
![beautiful sky and cloud as animation style.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/8345a963-ffed-e942-dc96-1a5149843192.png)

### 残念な例
プロンプト: a man running in the beach with his pet/huge snake

#### Stability SDXL 0.8（普通のプロンプト）
![a man runnning in the beach with his pet_huge snake.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/759fd1fd-6144-b55d-330f-b3f9b95140d7.png)

#### Stability SDXL 0.8（as animation styleと付け加えた時）
![a man runnning in the beach with his pet_huge snake as animation style.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/4db8ed64-f9b2-c1ec-1ffb-cb6b8a2b229d.png)

Amazonのモデルの方は、残念な感じにはなりませんでした！
#### Amazon Titan Image Generator G1（普通のプロンプト）
![a man runnning in the beach with his pet_huge snake (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/9756e284-be5b-6c5d-2f97-6a68efed3ee2.png)

#### Amazon Titan Image Generator G1（as animation styleと付け加えた時）
![a man runnning in the beach with his pet_huge snake as animation style (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3351273/65a4d35b-642e-4613-aaf7-c5ac56d03632.png)

## コスト
2023年12月時点での料金表です。
公式サイトで、言語をEnglishにして、リージョンを指定しないと出てこないのでご注意ください。
#### 円換算まとめ
| モデル | 1画像あたり |
|:-:|:-:|
| Stability SDXL 0.8 | 3〜8円 |
| Stability SDXL 1.0 | 6〜10円 |
| Amazon Titan Image Generator G1 | 1〜2円 |
| Amazon Titan Image Generator G1 custom | 2〜3円 |

#### Stability SDXL 0.8
| サイズ | 50ステップ以下 | 51ステップ以上 |
|:-:|:-:|:-:|
| 512X512 | $0.018/image | $0.036/image |
| 512X512より大きい | $0.036/image | $0.072/image |

#### Stability SDXL 1.0
| サイズ | 50ステップ以下 | 51ステップ以上 |
|:-:|:-:|:-:|
| 1024X1024まで | $0.04/image | $0.08/image |

#### Amazon Titan Image Generator G1
| サイズ | 標準クオリティ | プレミアムクオリティ |
|:-:|:-:|:-:|
| 512X512 | $0.008/image | $0.01/image |
| 1024X1024 | $0.01/image | $0.012/image |

#### Amazon Titan Image Generator（custom models)
今回は使っていないものです。
| サイズ | 標準クオリティ | プレミアムクオリティ |
|:-:|:-:|:-:|
| 512X512 | $0.018/image | $0.02/image |
| 1024X1024 | $0.02/image | $0.022/image |

## 感想
率直な感想としては、Amazonのモデルが安くてクオリティも高い！と思いました。
プロンプトの言葉と、各モデルの相性や解釈には、結構違いがあることもわかりました。
Amazonのモデルは、プロンプトの入れ方をそこまで工夫しなくても、それっぽい理解をしてくれるような印象を受けました。
また、かなり写真的に表現してくれるように感じます。

プロンプトの書き方や、設定の組み合わせをもっと勉強したいと思います！


## 引用リンク
パラメータ定義引用元
https://aws.amazon.com/jp/blogs/news/amazon-bedrock-generative-ai-image-generation-technology/

Bedrock料金
https://aws.amazon.com/jp/bedrock/pricing/