サーバーワークスの松井(宏)です。
本日、Amazon BedrockがGAとなり、早速「画像生成」の機能として利用してみたのでレビュー記事を書きたいと思います。
画像生成AIとしてAWSが提供しているサービスの中で最も簡単に利用が始められるサービスとして、Amazon SageMaker JumpStartがありましたが、今回Amazon BedrockのBase Modelsの中のStability.aiモデルが利用できることになったことで、さらに簡単にAWS上で画像生成が可能になりました。
そもそも画像生成とは何かというと、このような画像を簡単なテキスト入力だけで生成することができます。
これができると何が嬉しいかというと、機械学習で画像判定モデルを作成する際に素材となる画像を自分で多数撮影しなくてもAIに準備させることができたりします。 その他にも利用シーンはあるかと思いますのでみなさん調査してみてはいかがでしょうか。
どうやって利用するかや何が簡単になったかは記事の中で説明していきたいと思います。
ということで試してみた
Amazon Bedrockで画像生成を試していきたいと思います。
まず、Amazon Bedrockで、Stability.aiを利用するには、モデルを利用するためのリクエストをする必要がございます。
[Edit] から利用したいモデルを選択して、[Save changes] を選択するだけでしばらく時間が立つと、Access Grantedと表示され、利用可能になります。
次に、[Playgrounds] -> [image]とタブから選択すると、Promptからテキスト入力が、可能になっているのでお好きな文章や単語をいれていただくだけで画像生成が完了します。
パラメーターを変更してみる
単語に対して1パターンのみしか画像が生成できないかというとそういう訳ではございません。
画像に対してのノイズの量を調整してみると、このように画像が変化します。
今回は、Generation stepと呼ばれるサンプリング回数を調整するパラメーターを変化させてみました。
パラメーターは、以下の3種類を調整できるみたいです。
・プロンプトの強さ( cfg_scale) – 最終画像がプロンプトをどの程度描写するかを決定します。生成時のランダム性を高めるには、より小さい数値を使用します。
・生成ステップ( steps) – 生成ステップは、画像がサンプリングされる回数を決定します。ステップを増やすと、より正確な結果が得られます。
・シード( seed) – シードは初期ノイズ設定を決定します。前回の実行と同じシードと同じ設定を使用して、推論で同様のイメージを作成できるようにします。この値を設定しない場合は、乱数として設定されます。
Inference parameters for foundation models - Amazon Bedrock
Amazon SageMaker JumpStartと違う点
Amazon SageMaker JumpStartと違う点についてご紹介したいと思います。
Amazon SageMaker JumpStartについては、弊社のエンジニア執筆の以下の記事をご参考ください。
変更ポイントその1
前項にて、パラメーターの変更を実施しましたが、Stability.aiをAmazon SageMaker JumpStartで利用した場合には、style_presetなど画像のスタイリングをしてくれるパラメーターなどより多くのパラメーターが利用できていましたが、Amazon Bedrockでは、パラメーターの量を最小限に絞っているようです。
変更ポイントその2
Amazon SageMaker JumpStartは、利用するために高性能なインスタンスを自前で用意する必要がありました。Amazon Bedrockでは、インスタンスを自前で持つ必要はなく、API実行した分の課金となります。
step数が、50を超えるか超えないかで大きく料金が変わりますのでご注意ください。
Build Generative AI Applications with Foundation Models - Amazon Bedrock Pricing - AWS
まとめ
ということで、Amazon BedrockがGAになったことで、AWSでの画像生成がどのように変わったかをご紹介してきました。 AIサービスは、今後ますます利用可能シーンが増えてくるかと思うので是非すばやくキャッチアップして行っていただけるとよいのでは無いかと思います。
松井 宏司
エンタープライズクラウド部
2022 2023 2024Japan AWS All Certifications Engineer
プロレス観戦が趣味