curl --request POST \
--url 'https://api.yuannengai.com/v1beta/models/gemini-3-pro-image-preview:generateContent' \
--header 'Content-Type: application/json' \
--header 'x-goog-api-key: <YOUR_API_KEY>' \
--data '{
"contents": [
{
"parts": [
{
"text": "生成一张月光下的竹林小径图片"
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE", "TEXT"]
}
}'
{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "iVBORw0KGgoAAAANSUhEUgAA..."
}
},
{
"text": "这是一张月光下竹林小径的图片,展现了静谧的夜晚氛围。"
}
],
"role": "model"
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 10,
"candidatesTokenCount": 50,
"totalTokenCount": 60
}
}
使用 Gemini-3-Pro-Image-preview(Nano banana2)模型生成高质量图像
curl --request POST \
--url 'https://api.yuannengai.com/v1beta/models/gemini-3-pro-image-preview:generateContent' \
--header 'Content-Type: application/json' \
--header 'x-goog-api-key: <YOUR_API_KEY>' \
--data '{
"contents": [
{
"parts": [
{
"text": "生成一张月光下的竹林小径图片"
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE", "TEXT"]
}
}'
{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "iVBORw0KGgoAAAANSUhEUgAA..."
}
},
{
"text": "这是一张月光下竹林小径的图片,展现了静谧的夜晚氛围。"
}
],
"role": "model"
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 10,
"candidatesTokenCount": 50,
"totalTokenCount": 60
}
}
curl --request POST \
--url 'https://api.yuannengai.com/v1beta/models/gemini-3-pro-image-preview:generateContent' \
--header 'Content-Type: application/json' \
--header 'x-goog-api-key: <YOUR_API_KEY>' \
--data '{
"contents": [
{
"parts": [
{
"text": "生成一张月光下的竹林小径图片"
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE", "TEXT"]
}
}'
{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "iVBORw0KGgoAAAANSUhEUgAA..."
}
},
{
"text": "这是一张月光下竹林小径的图片,展现了静谧的夜晚氛围。"
}
],
"role": "model"
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 10,
"candidatesTokenCount": 50,
"totalTokenCount": 60
}
}
x-goog-api-key 请求头传递 API Key获取 API Key:访问 API Key 管理页面 获取您的 API Key使用时在请求头中添加:x-goog-api-key: YOUR_API_KEY
import requests
import base64
def generate_image(prompt, api_key):
url = "https://api.yuannengai.com/v1beta/models/gemini-3-pro-image-preview:generateContent"
payload = {
"contents": [
{
"parts": [{"text": prompt}]
}
],
"generationConfig": {
"responseModalities": ["IMAGE", "TEXT"]
}
}
headers = {
"Content-Type": "application/json",
"x-goog-api-key": api_key
}
response = requests.post(url, json=payload, headers=headers)
result = response.json()
# 提取图像数据
for part in result["candidates"][0]["content"]["parts"]:
if "inlineData" in part:
return part["inlineData"]["data"]
return None
# 使用示例
image_base64 = generate_image("一只可爱的猫咪在阳光下睡觉", "your-api-key")
if image_base64:
# 保存图像
with open("cat.png", "wb") as f:
f.write(base64.b64decode(image_base64))
print("图像已生成并保存")
import requests
import base64
def edit_image(image_path, edit_prompt, api_key):
# 读取原图像
with open(image_path, "rb") as f:
image_data = base64.b64encode(f.read()).decode()
url = "https://api.yuannengai.com/v1beta/models/gemini-3-pro-image-preview:generateContent"
payload = {
"contents": [
{
"parts": [
{
"inlineData": {
"mimeType": "image/jpeg",
"data": image_data
}
},
{
"text": edit_prompt
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE", "TEXT"]
}
}
headers = {
"Content-Type": "application/json",
"x-goog-api-key": api_key
}
response = requests.post(url, json=payload, headers=headers)
return response.json()
# 使用示例
result = edit_image("input.jpg", "将这张图片转换为油画风格", "your-api-key")
responseModalities 必须包含 "IMAGE" 才能生成图像 - 生成的图像默认为 PNG
格式 - 单次请求可能返回多个部分(图像 + 文本描述)