文生图:根据文本描述生成图片
curl --request POST \
--url https://api.apiyi.com/v1beta/models/gemini-3.1-flash-lite-image:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contents": [
{
"parts": [
{
"text": "一只可爱的柴犬坐在樱花树下,水彩画风格,高清细节"
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "1K"
}
}
}
'{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "<string>"
}
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 10,
"candidatesTokenCount": 258
}
}Nano Banana Lite 生图
文生图 API 参考
Nano Banana 2 Lite 文生图 API 参考与在线调试 — 输入文本描述生成图片
POST
/
v1beta
/
models
/
gemini-3.1-flash-lite-image:generateContent
文生图:根据文本描述生成图片
curl --request POST \
--url https://api.apiyi.com/v1beta/models/gemini-3.1-flash-lite-image:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contents": [
{
"parts": [
{
"text": "一只可爱的柴犬坐在樱花树下,水彩画风格,高清细节"
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "1K"
}
}
}
'{
"candidates": [
{
"content": {
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "<string>"
}
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 10,
"candidatesTokenCount": 258
}
}右侧的交互式 Playground 支持下拉选择参数(宽高比、响应类型等)。请在 Authorization 中填入你的 API Key(格式:
Bearer sk-xxx),即可一键发送请求测试。场景说明:本页用于「文本生成图片」。只需输入提示词即可,无需上传任何图片。如需根据现有图片做编辑,请使用 图片编辑接口。
🖥️ 浏览器 Playground 限制(重要)本接口的响应里包含 base64 编码的图片(
inlineData.data,数 MB 量级)。受浏览器渲染限制,右侧 Playground 在收到响应后可能弹出 请求时发生错误: unable to complete request ——实际请求已经成功,只是浏览器无法把这么长的 base64 显示出来。推荐做法(小白零踩坑):- 直接复制下方”代码示例”中的 Python / Node.js / cURL 到本地运行,代码会自动
base64.b64decode并把图片保存为本地文件。 - Nano Banana 2 Lite 专注 1K 画布,响应体量适中,但仍建议本地运行以稳妥保存图片。
代码示例
Python
import requests
import base64
API_KEY = "sk-your-api-key"
PROMPT = "一只可爱的柴犬坐在樱花树下,水彩画风格,高清细节"
response = requests.post(
"https://api.apiyi.com/v1beta/models/gemini-3.1-flash-lite-image:generateContent",
headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
json={
"contents": [{"parts": [{"text": PROMPT}]}],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {"aspectRatio": "16:9", "imageSize": "1K"}
}
},
timeout=300
).json()
img_data = response["candidates"][0]["content"]["parts"][0]["inlineData"]["data"]
with open("output.png", 'wb') as f:
f.write(base64.b64decode(img_data))
print("图片已保存至 output.png")
cURL
curl -X POST "https://api.apiyi.com/v1beta/models/gemini-3.1-flash-lite-image:generateContent" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"contents": [{"parts": [{"text": "未来主义的城市夜景,霓虹灯,赛博朋克风格"}]}],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {"aspectRatio": "16:9", "imageSize": "1K"}
}
}'
Node.js
import fs from "fs";
const API_KEY = "sk-your-api-key";
const response = await fetch(
"https://api.apiyi.com/v1beta/models/gemini-3.1-flash-lite-image:generateContent",
{
method: "POST",
headers: {
"Authorization": `Bearer ${API_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
contents: [{ parts: [{ text: "未来主义的城市夜景,霓虹灯,赛博朋克风格" }] }],
generationConfig: {
responseModalities: ["IMAGE"],
imageConfig: { aspectRatio: "16:9", imageSize: "1K" }
}
})
}
);
const data = await response.json();
const imgBase64 = data.candidates[0].content.parts[0].inlineData.data;
fs.writeFileSync("output.png", Buffer.from(imgBase64, "base64"));
OpenAI 兼容模式
from openai import OpenAI
client = OpenAI(api_key="sk-your-api-key", base_url="https://api.apiyi.com/v1")
response = client.chat.completions.create(
model="gemini-3.1-flash-lite-image",
stream=False,
messages=[{"role": "user", "content": "一幅秋天的山水画,远处有红叶和飞鸟"}]
)
print(response.choices[0].message.content)
参数说明速查
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
contents[].parts[].text | string | 是 | 文本提示词 |
generationConfig.responseModalities | array | 是 | ["IMAGE"] 或 ["TEXT","IMAGE"] |
generationConfig.imageConfig.aspectRatio | string | 否 | 14 种宽高比,默认 1:1 |
generationConfig.imageConfig.imageSize | string | 否 | 仅支持 1K(Lite 专注 1K 画布) |
详细的参数文档、可选值和默认值请查看右侧 Playground 中的字段说明,所有 enum 类型字段(如
aspectRatio)都支持下拉选择,无需手动输入。从 Nano Banana 2 迁移:只需把模型名从
gemini-3.1-flash-image 改为 gemini-3.1-flash-lite-image,其它参数保持不变。注意 Lite 仅支持 1K 分辨率,如传入 2K/4K 请改回 1K。此页面对您有帮助吗?
⌘I