Gemini API を使用すると、Google の最高品質のテキストから画像へのモデルである Imagen 3 にアクセスできます。このモデルには、多くの新機能や改善された機能があります。Imagen 3 は次のことができます。
- 以前のモデルよりもディテールが鮮明で、照明が豊富で、演出の妨げになるアーティファクトが少ない画像を生成
- 自然言語で記述されたプロンプトを理解する
- 幅広い形式とスタイルで画像を生成
- 以前のモデルよりも効果的にテキストをレンダリングする
画像を生成
このセクションでは、Imagen モデルをインスタンス化し、画像を生成する方法について説明します。
Google 生成 AI SDK をインストールしたら、次のコードを使用して画像を生成できます。
from google import genai
from google.genai import types
from PIL import Image
from io import BytesIO
client = genai.Client(api_key='GEMINI_API_KEY')
response = client.models.generate_images(
model='imagen-3.0-generate-002',
prompt='Fuzzy bunnies in my kitchen',
config=types.GenerateImagesConfig(
number_of_images= 4,
)
)
for generated_image in response.generated_images:
image = Image.open(BytesIO(generated_image.image.image_bytes))
image.show()
コードサンプルにより、次のような 4 つの画像が出力されます。
Python デベロッパーは、Gemini クックブックの Imagen スタートガイド ノートブックを試すこともできます。
Imagen モデル パラメータ
generate_images()
では、次のパラメータを使用できます。
prompt
: 画像のテキスト プロンプト。number_of_images
: 生成する画像の数(1 ~ 4)。デフォルトは 4 です。aspect_ratio
: 生成される画像のアスペクト比を変更します。サポートされる値は"1:1"
、"3:4"
、"4:3"
、"9:16"
、"16:9"
です。デフォルトは"1:1"
です。safety_filter_level
: 安全フィルタリングにフィルタレベルを追加します。有効な値は次のとおりです。"BLOCK_LOW_AND_ABOVE"
: 確率スコアまたは重大度スコアがLOW
、MEDIUM
、またはHIGH
の場合にブロックします。"BLOCK_MEDIUM_AND_ABOVE"
: 確率スコアまたは重大度スコアがMEDIUM
またはHIGH
の場合にブロックします。"BLOCK_ONLY_HIGH"
: 確率スコアまたは重大度スコアがHIGH
の場合にブロックします。
person_generation
: モデルが人物の画像を生成できるようにします。次の値を使用できます。"DONT_ALLOW"
: 人物の画像の生成をブロックします。"ALLOW_ADULT"
: 大人の画像を生成しますが、子供の画像は生成しません。これがデフォルトです。
生成された画像には、非表示のデジタル SynthID 透かしが常に追加されます。
テキスト プロンプト言語
次の入力テキスト プロンプト言語がサポートされています。
- 英語(
en
)
次のステップ
Imagen のプロンプトの作成の詳細については、Imagen プロンプト ガイドをご覧ください。