Managed Inference and Agent API の /v1/images/generations
この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。
最終更新日 2024年12月18日(水)
Table of Contents
Heroku Managed Inference and Agent アドオンは現在パイロット段階です。パイロットの一環として提供される製品は本番環境での使用を目的としたものではなく、ベータサービスとみなされています。また、https://www.salesforce.com/company/legal/agreements.jsp のベータサービス条件が適用されます。
/v1/images/generations
エンドポイントは、説明的なテキストプロンプトに基づいて画像を生成します。アスペクト比や画像フォーマットを制御し、再現性を高めるためにシードを指定することもできます。オプションのパラメータを使用すると、特定の要素を除外するためのネガティブプロンプトを提供するなどして、出力をさらに改善することができます。
リクエストボディパラメータ
パラメータを使用して、生成する画像のサイズや形式などの詳細を制御します。
必須パラメータ
フィールド | 型 | 説明 | 例 |
---|---|---|---|
model | 文字列 | 使用する画像生成モデルの ID | “stable-image-ultra” |
prompt | 文字列 | 生成する画像を説明するテキストプロンプト (最大長 10,000 文字) | “山々の向こうに沈む美しい夕日。” |
オプションパラメータ
フィールド | 型 | 説明 | デフォルト | 例 |
---|---|---|---|---|
aspect_ratio | 列挙<文字列> | 生成される画像のアスペクト比を制御します。 次のいずれか: 16:9 、1:1 、21:9 、2:3 、3:2 、4:5 、5:4 、9:16 、9:21 |
“1:1” | “16:9” |
negative_prompt | 文字列 | 画像で避けるべきキーワードやフレーズ (たとえば、"crowded" は混雑したシーンを防ぐのに役立ちます)。最大長: 10,000文字 |
“混雑した” | |
output_format | 列挙<文字列> | 出力画像のフォーマットを指定します (jpeg または png )。 |
“png” | “jpeg” |
size | 列挙<文字列> | 出力画像のサイズ (ピクセル単位) を指定します。 次のいずれか: 1344x768 、1024x1024 、1536x640 、832x1216 、1216x832 、896x1088 、1088x896 、768x1344 、640x1536 |
“1024x1024” | “640x1536” |
seed | 数値 | 画像を生成するためのベースとして使用される開始値 (すべてのパラメータが同じままであれば、同じシードで生成された画像は同一になる一方、異なるシードで生成された画像は似ているものの同一にはなりません)。 範囲: 0 (ランダム) ~ 4294967295 |
0 | 123 |
リクエストヘッダー
次の例では、モデルリソースに "DIFFUSION"
のエイリアスがあると仮定します (これは、--as DIFFUSION
フラグを使用してモデルリソースを作成したことを意味します)。
ヘッダー | 型 | 説明 |
---|---|---|
Authorization |
文字列 | AI アドオンの ‘DIFFUSION’ の値 (API ベアラートークン) |
すべての推論の curl リクエストには、指定されたモデルの Heroku 推論キーを含む Authorization
ヘッダーを含める必要があります。
たとえば、すべての /v1/images/generations
curl リクエストはこちらのパターンに従います。
# Use this command to set your Heroku environment variables as local variables.
eval $(heroku config -a $APP_NAME --shell | grep '^DIFFUSION_' | sed 's/^/export /' | tee >(cat >&2))
# Sample curl request for image generation:
curl $DIFFUSION_URL/v1/images/generations \
-H "Authorization: Bearer $DIFFUSION_KEY" \
-d @- <<EOF | jq -r '.data[0].b64_json' | base64 --decode > "x.png"
{
"model": "$DIFFUSION_MODEL_ID",
"prompt": "A surreal landscape with glowing mushrooms under a night sky."
}
EOF
open x.png