画像生成
submit_image(設定済みプロバイダーのキーのみ)を使用してAI画像を生成します。ユーザーがバリエーションを明示的に要求しない限り、リクエストごとに1枚の明確な静止画を優先します。
モデル選択
| モデル | リファレンス | 強み | 最大参照数 |
|---|---|---|---|
fal + falModel | references/fal.md | 明示的なFalカタログ;ツールスキーマでモデルごとの制限を確認 | モデル依存 |
gpt-image-2 | references/gpt-image-2.md | 最高のテキストレンダリング、最も強力なプロンプト追従 | 16 |
nano-banana | references/nano-banana.md | 最も高い参照画像忠実度 | 14 |
image-01 | references/image-01.md | MiniMax静止画/ライブスタイル;R2経由で1つの被写体参照 | 1 |
grok-imagine | references/grok-imagine.md | xAI Grok Imagine;テキストto画像、最大4出力、1K/2K | 0 |
- Fal.aiが選択または要求された場合は、
model: "fal"と要求されたfalModelまたは capabilities から保存されているFalデフォルト値を使用。選択されていない場合はユーザーに確認。ネイティブプロバイダーのデフォルトと以下に示す制御はFalには適用されません。 - デフォルト:そのキーが有効な場合は
gpt-image-2。 - 参照画像が多い場合 →
nano-banana。 - ユーザーがMiniMaxを指定した、またはMiniMax画像キーのみが有効な場合 →
image-01。 - capabilitiesを尊重:設定されていないベンダーのモデルは呼び出さない。
重要: 生成前に、選択したモデルのリファレンスを読んでください。
ツールパラメータ
| パラメータ | 値 | デフォルト |
|---|---|---|
aspectRatio | 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 4:5, 5:4, 21:9 | 16:9 |
imageSize | 512px, 1K, 2K, 4K(モデル依存) | 1K |
width / height | GPT Image: 512–3840、/16単位;MiniMax: 512–2048、/8単位 | — |
quality | low, medium, high, auto(gpt-image-2のみ) | high |
referenceAssetIds | プロジェクトアセットIDの配列 — バックエンドがサーバーサイドでバイト列を解決 | — |
name | ライブラリに表示される短い説明的なアセット名 | — |
count | 生成する画像の枚数(1–10;image-01は最大9) | 1 |
promptOptimizer | MiniMax image-01 のみ — prompt_optimizer | false |
seed | MiniMax image-01 のみ | — |
maskAssetId, background, moderation, inputFidelity | GPT Image編集/出力制御 | — |
outputFormat, outputCompression | GPT Image PNG/JPEG/WebP制御 | PNG |
デフォルト
- アスペクト比:16:9。プロジェクトの構成が16:9でない場合は、生成前にユーザーに希望のアスペクト比を確認してください。
- サイズ:1K。
送信前に確認
- サイズを自動的にアップグレードしない。
- ユーザーが明示的に要求した場合のみ、
imageSize: "2K"または"4K"を渡す。2K/4Kは実験的であり、遅くなる可能性があることを警告する。
参照画像
ユーザーが編集、合成、または視覚的なガイドとして使用するソース素材を提供した場合に使用します(例:「背景を変更して」「これらをポスターに合成して」)。
referenceAssetIdsにプロジェクトアセットIDを渡す。バックエンドがサーバーサイドでそれらを取得しエンコードするため、アセットのバイト列を自分で取得しないでください。- ユーザーが画像アセットを@参照した場合、そのIDを
referenceAssetIdsに直接渡します。 - バックエンドが受け付けるフォーマット:png, jpeg, webp, svg(自動的にpngにラスタライズ), heic, heif。各ファイル50MB以下。
実行例
// 基本生成
submit_image({
model: "gpt-image-2",
prompt: "かわいいオレンジ色の猫",
name: "Cat",
});
// 画質指定(gpt-image-2のみ)
submit_image({
model: "gpt-image-2",
prompt: "大胆なタイトルのヒーローポスター",
quality: "high",
name: "Hero Poster",
});
// 参照画像 — プロジェクトアセットIDを渡す;バックエンドがバイト列を解決
submit_image({
model: "gpt-image-2",
prompt: "背景をビーチに変更",
referenceAssetIds: ["<assetId>"],
name: "Beach Edit",
});
// 参照画像が多い場合 nano-banana
submit_image({
model: "nano-banana",
prompt: "合成ポスター",
referenceAssetIds: ["<id1>", "<id2>"],
name: "Composite",
});
// 複数画像
submit_image({
model: "gpt-image-2",
prompt: "商品写真",
count: 3,
name: "Product",
});
// MiniMax(オプションで単一被写体参照;参照にはR2の設定が必要)
submit_image({
model: "image-01",
prompt: "大理石の上に置かれたマットな商品ボトル、柔らかなスタジオ照明",
name: "Bottle still",
promptOptimizer: false,
});
OpenChatCutの submit_image は、プロバイダーのパスによって完了したプールアセットを同期的に返す場合があります。jobId が返された場合は track_progress を使用し、それ以外の場合は結果のアセットIDを完了として扱います。
ルール
- 常に短い説明的なアセット名を
nameに指定する。 - 送信前に、生成しようとしている内容をユーザーに簡単に伝える。特に複数画像を生成する場合は重要。
- ベンダーキーが設定されているモデルのみを呼び出す(capabilitiesのプロンプトに従う)。