真实计费(默认 1K):使用 gemini-3-pro-image 生成图片
curl --request POST \
--url https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。"
}
]
}
]
}
'import requests
url = "https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent"
payload = { "contents": [
{
"role": "user",
"parts": [{ "text": "白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。" }]
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({contents: [{role: 'user', parts: [{text: '白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。'}]}]})
};
fetch('https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA"
}
}
]
},
"finishReason": "STOP",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 37,
"candidatesTokenCount": 1846,
"totalTokenCount": 1883,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 37
}
],
"candidatesTokensDetails": [
{
"modality": "IMAGE",
"tokenCount": 1680
}
]
},
"modelVersion": "gemini-3-pro-image",
"responseId": "response_example"
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "Insufficient balance for this request",
"type": "new_api_error",
"param": "",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "Request body exceeds the current limit",
"type": "new_api_error",
"param": "",
"code": "read_request_body_failed"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}Gemini 3 Pro Image
Gemini 3 Pro Image 调用示例
复制 Gemini 3 Pro Image API 的 4K、异步、产品图编辑和大响应示例;真实计费的在线测试默认使用 1K。
POST
/
v1beta
/
models
/
gemini-3-pro-image:generateContent
真实计费(默认 1K):使用 gemini-3-pro-image 生成图片
curl --request POST \
--url https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。"
}
]
}
]
}
'import requests
url = "https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent"
payload = { "contents": [
{
"role": "user",
"parts": [{ "text": "白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。" }]
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({contents: [{role: 'user', parts: [{text: '白色哑光背景上的单根黄色陶瓷香蕉,柔和影棚光线,不要文字。'}]}]})
};
fetch('https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA"
}
}
]
},
"finishReason": "STOP",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 37,
"candidatesTokenCount": 1846,
"totalTokenCount": 1883,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 37
}
],
"candidatesTokensDetails": [
{
"modality": "IMAGE",
"tokenCount": 1680
}
]
},
"modelVersion": "gemini-3-pro-image",
"responseId": "response_example"
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "Insufficient balance for this request",
"type": "new_api_error",
"param": "",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "Request body exceeds the current limit",
"type": "new_api_error",
"param": "",
"code": "read_request_body_failed"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}{
"error": {
"message": "<string>",
"type": "invalid_request_error",
"param": "<string>",
"code": "insufficient_user_quota"
}
}用 Python 生成 4K 图片
import base64
from pathlib import Path
import requests
url = "https://api.yingtu.ai/v1beta/models/gemini-3-pro-image:generateContent"
headers = {"Authorization": "Bearer YOUR_YINGTU_API_KEY"}
body = {
"contents": [{
"role": "user",
"parts": [{"text": "高端腕表广告图,金属反射准确,留出品牌文案区域"}],
}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {"aspectRatio": "1:1", "imageSize": "4K"},
},
}
response = requests.post(url, headers=headers, json=body, timeout=300)
response.raise_for_status()
payload = response.json()
for candidate in payload.get("candidates", []):
for part in candidate.get("content", {}).get("parts", []):
image = part.get("inlineData")
if image:
suffix = ".jpg" if image["mimeType"] == "image/jpeg" else ".png"
Path(f"pro-output{suffix}").write_bytes(
base64.b64decode(image["data"], validate=True)
)
break
mimeType 为准:
{
"candidates": [{
"content": {"role": "model", "parts": [{
"inlineData": {"mimeType": "image/jpeg", "data": "BASE64_IMAGE_DATA"}
}]},
"finishReason": "STOP"
}],
"usageMetadata": {
"promptTokenCount": 35,
"candidatesTokenCount": 2086,
"thoughtsTokenCount": 120,
"totalTokenCount": 2241
},
"modelVersion": "gemini-3-pro-image",
"responseId": "response_example"
}
提交异步任务
当客户端或代理无法保持长连接时,提交统一图片任务:curl 'https://api.yingtu.ai/v1/images/tasks' \
-H 'Authorization: Bearer YOUR_YINGTU_API_KEY' \
-H 'Idempotency-Key: jewelry-cover-001' \
-H 'Content-Type: application/json' \
-d '{
"model": "gemini-3-pro-image",
"action": "generate",
"prompt": "珠宝产品目录封面",
"size": "2K",
"aspect_ratio": "4:5",
"n": 1
}'
task_id,查询 /v1/tasks/{task_id}。completed 时遍历 result.candidates[].content.parts[] 查找 inlineData;failed 或 expired 时停止轮询并记录结构化错误。
编辑产品图
{
"contents": [{
"role": "user",
"parts": [
{"text": "保留腕表与表带,把背景换成深灰石材"},
{"inlineData": {"mimeType": "image/jpeg", "data": "BASE64_SOURCE_IMAGE"}}
]
}],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {"aspectRatio": "1:1", "imageSize": "2K"}
}
}
responseId、modelVersion、任务状态和自有文件地址。
在线测试
本页表单固定调用gemini-3-pro-image:generateContent。建议保留预填的 1K 请求完成首次验证,确认确有高分辨率需求后再改为 4K。
Pro 请求会真实计费。Mintlify 会在生成的 cURL 中显示已输入的 Key,请勿分享带凭证的截图。
授权
YingTu API Key。
请求体
application/json
最后修改于 2026年9月3日