概要
画像から画像への変換または画像編集にgemini-3-pro-imageモデル(nanobana)を使用します。Vertex AI互換のgenerateContentインターフェースを介して、元の画像とテキストプロンプトに基づいて編集後の画像を生成します。
APIの詳細
制約
- 呼び出し元にはAPI Keyが必要です。詳細については、AI API Keyを管理するを参照してください。
リクエストパス
POST {BASE_URL}/api/v1/publishers/googleVertexAI/models/gemini-3-pro-image:generateContent
リクエストヘッダー
名前 |
必須 |
例 |
説明 |
|---|---|---|---|
| Authorization | はい | Bearer {token} | 認証情報 |
| Content-Type | はい | application/json | リクエストボディの形式 |
リクエストパラメータ
パスパラメータ
名前 |
型 |
必須 |
例 |
説明 |
|---|---|---|---|---|
| なし | このAPIにはパスパラメータはありません。 |
クエリパラメータ
名前 |
型 |
必須 |
例 |
説明 |
|---|---|---|---|---|
| なし | このAPIにはクエリパラメータはありません。 |
ボディ
名前 |
型 |
必須 |
例 |
説明 |
|---|---|---|---|---|
| contents | array[object] | はい | 対話内容 | |
| contents[].role | string | はい | user | ロール。user固定です。 |
| contents[].parts | array[object] | はい | テキストや画像を含むコンテンツセグメント | |
| contents[].parts[].text | string | はい | Edit this image: make the sky more blue | 画像編集用のプロンプト |
| contents[].parts[].inlineData | object | はい | 元画像データ | |
| contents[].parts[].inlineData.mimeType | string | はい | image/png | 画像のMIMEタイプ |
| contents[].parts[].inlineData.data | string | はい | <base64 image> | Base64エンコードされた画像データ |
| generationConfig | object | はい | 生成設定 | |
| generationConfig.maxOutputTokens | integer | はい | 8192 | 出力Tokenの最大数 |
| generationConfig.responseModalities | array[string] | はい | ["TEXT", "IMAGE"] | レスポンスモダリティ。TEXTとIMAGEの両方を含める必要があります。 |
レスポンスパラメータ
生成されたテキストと画像のコンテンツを含む、標準のVertex AI generateContentレスポンスを返します。
リクエスト例
curl -sS -X POST "${BASE_URL}/api/v1/publishers/googleVertexAI/models/gemini-3-pro-image:generateContent" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "Edit this image: make the sky more blue"
},
{
"inlineData": {
"mimeType": "image/png",
"data": "<base64 image>"
}
}
]
}
],
"generationConfig": {
"maxOutputTokens": 8192,
"responseModalities": ["TEXT", "IMAGE"]
}
}'
レスポンス例
エラーレスポンス
{
"error": {
"message": "error message",
"type": "error_type",
"code": "error_code"
}
}