このページでは、Vertex AI の Imagen が生成する画像のアスペクト比を構成する方法について説明します。
生成された画像の使用方法によっては、特定のアスペクト比のほうが優れている場合があります。ユースケースに最適なアスペクト比を選択します。
使用できる画像生成モデルは複数あり、特定のアスペクト比は特定の Imagen モデルで使用できます。詳細については、Imagen モデルをご覧ください。
| アスペクト比 | 意図された用途 | サンプル画像 | 
|---|---|---|
1:1 | 
   デフォルト、スクエア、一般的な使用 | 
     
       | 
  
3:4 | 
   テレビ、メディア、映画 | 
     
       | 
  
4:3 | 
   テレビ、メディア、映画 | 
     
       | 
  
9:16 | 
   ポートレート、縦長のオブジェクト、モバイル デバイス | 
     
       | 
  
16:9 | 
   風景 | 
     
       | 
  
コンソール
Google Cloud コンソールで、[Vertex AI] > [Media Studio] ページに移動します。
[Imagen] をクリックします。Imagen Media Studio の画像生成ページが表示されます。
[設定] パネルで、次のオプションを調整します。
モデル: 使用可能なオプションからモデルを選択します。
使用可能なモデルの詳細については、Imagen モデルをご覧ください。
アスペクト比: 画像を生成する際に使用するアスペクト比
[プロンプトを記述] ボックスに、生成する画像の説明を入力します。例: 朝の水上の小さなボートの水彩画
[生成] をクリックします。
REST
アスペクト比は、JSON リクエスト本文の parameters オブジェクトのオプション フィールドです。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
 - 
    
MODEL_VERSION: 使用する Imagen モデルのバージョン。使用可能なモデルの詳細については、Imagen モデルをご覧ください。
 - LOCATION: プロジェクトのリージョン。たとえば、
us-central1、europe-west2、asia-northeast3です。使用可能なリージョンの一覧については、Vertex AI の生成 AI のロケーションをご覧ください。 - TEXT_PROMPT: 生成する画像をモデルに指示するテキスト プロンプト。生成と編集のどちらでも必須フィールドです。
 - IMAGE_COUNT: 生成される画像の数。指定できる整数値: 1~8(
imagegeneration@002)、1~4(他のすべてのモデル バージョン)。デフォルト値: 4。 - ADD_WATERMARK: ブール値。省略可。生成された画像に透かしを有効にするかどうか。フィールドが 
trueに設定されているときに生成された画像には、透かし入り画像の検証に使用できるデジタル SynthID が含まれています。このフィールドを省略すると、デフォルト値のtrueが使用されます。この機能を無効にするには、値をfalseに設定する必要があります。seedフィールドを使用して確定的な出力を取得できるのは、このフィールドがfalseに設定されている場合のみです。 - ASPECT_RATIO: 文字列。省略可。アスペクト比を制御する生成モード パラメータ。サポートされている比の値と用途:
1:1(デフォルト、スクエア)3:4(広告、ソーシャル メディア)4:3(テレビ、写真)16:9(横向き)9:16(縦向き)
 - ENABLE_PROMPT_REWRITING: ブール値。省略可。LLM ベースのプロンプト書き換え機能を使用して、元のプロンプトの意図をより反映した高品質の画像を生成するためのパラメータ。この機能を無効にすると、画像の品質やプロンプトへの準拠に影響する可能性があります。デフォルト値: 
true。 - 
  INCLUDE_RAI_REASON: ブール値。省略可。入力または出力がブロックされているレスポンスで、責任ある AI のフィルタが適用された理由コードを有効にするかどうか。デフォルト値: 
true。 - INCLUDE_SAFETY_ATTRIBUTES: ブール値。省略可。フィルタリングされていない入力と出力のレスポンスで、安全性属性のリストに対して丸められた責任ある AI スコアを有効にするかどうかを指定します。安全性属性のカテゴリ: 
"Death, Harm & Tragedy"、"Firearms & Weapons"、"Hate"、"Health"、"Illicit Drugs"、"Politics"、"Porn"、"Religion & Belief"、"Toxic"、"Violence"、"Vulgarity"、"War & Conflict"。デフォルト値:false。 - MIME_TYPE: 文字列。省略可。画像のコンテンツの MIME タイプ。使用可能な値:
image/jpegimage/gifimage/pngimage/webpimage/bmpimage/tiffimage/vnd.microsoft.icon
 - COMPRESSION_QUALITY: 整数。省略可。JPEG 出力ファイルにのみ適用されます。JPEG ファイル形式で生成された画像に対してモデルが保持する詳細レベル。値: 
0~100。値が大きいほど圧縮率が高くなります。デフォルト:75。 - PERSON_SETTING: 文字列。省略可。モデルで許可される人物や顔の生成の種類を制御する安全性設定。使用可能な値:
allow_adult(デフォルト): 有名人の生成を除き、成人のみの生成を許可します。どの設定でも、有名人の生成は許可されません。dont_allow: 生成された画像に人物や顔が含まれないようにします。
 - SAFETY_SETTING: 文字列。省略可。生成される画像の安全フィルタのしきい値を制御する設定。使用可能な値:
block_low_and_above: 最も高い安全性のしきい値。これにより、フィルタされる生成画像が最も多くなります。以前の値:block_most。block_medium_and_above(デフォルト): 有害となる可能性のあるコンテンツと安全なコンテンツのフィルタをバランスよく行う中程度の安全性のしきい値です。以前の値:block_some。block_only_high: 安全フィルタによってブロックされるリクエストの数を減らす安全性のしきい値。この設定により、Imagen によって生成される不適切なコンテンツが増加する可能性があります。以前の値:block_few。
 - SEED_NUMBER: 整数。省略可。出力画像を確定するために指定する非負整数。同じシード番号を指定すると、常に同じ出力画像が得られます。使用しているモデルが電子透かしをサポートしている場合、このフィールドを使用するには 
"addWatermark": falseを設定する必要があります。指定できる整数値:1~2147483647。 - OUTPUT_STORAGE_URI: 文字列。省略可。出力画像を保存する Cloud Storage バケット。指定しない場合、Base64 エンコードされた画像バイトがレスポンスで返されます。値のサンプル: 
gs://image-bucket/output/。 
その他のオプション パラメータ
ユースケースに応じて、次のオプションの変数を使用します。"parameters": {} オブジェクトに次のパラメータの一部またはすべてを追加します。このリストは一般的なオプション パラメータを示しており、網羅的なものではありません。オプション パラメータの詳細については、Imagen API リファレンス: 画像を生成するをご覧ください。
"parameters": {
  "sampleCount": IMAGE_COUNT,
  "addWatermark": ADD_WATERMARK,
  "aspectRatio": "ASPECT_RATIO",
  "enhancePrompt": ENABLE_PROMPT_REWRITING,
  "includeRaiReason": INCLUDE_RAI_REASON,
  "includeSafetyAttributes": INCLUDE_SAFETY_ATTRIBUTES,
  "outputOptions": {
    "mimeType": "MIME_TYPE",
    "compressionQuality": COMPRESSION_QUALITY
  },
  "personGeneration": "PERSON_SETTING",
  "safetySetting": "SAFETY_SETTING",
  "seed": SEED_NUMBER,
  "storageUri": "OUTPUT_STORAGE_URI"
}
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict
リクエストの本文(JSON):
{
  "instances": [
    {
      "prompt": "TEXT_PROMPT"
    }
  ],
  "parameters": {
    "sampleCount": IMAGE_COUNT
  }
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
      リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict"
PowerShell
      リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_VERSION:predict" | Select-Object -Expand Content
"sampleCount":
  2 を含むリクエストに対するものです。レスポンスは、生成された画像のバイトを base64 でエンコードした 2 つの予測オブジェクトを返します。{ "predictions": [ { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" }, { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" } ] }
プロンプトの機能強化をサポートするモデルを使用する場合、レスポンスには、生成に使用された強化されたプロンプトを含む追加の prompt フィールドが含まれます。
{
  "predictions": [
    {
      "mimeType": "MIME_TYPE",
      "prompt": "ENHANCED_PROMPT_1",
      "bytesBase64Encoded": "BASE64_IMG_BYTES_1"
    },
    {
      "mimeType": "MIME_TYPE",
      "prompt": "ENHANCED_PROMPT_2",
      "bytesBase64Encoded": "BASE64_IMG_BYTES_2"
    }
  ]
}