WaveSpeedAI Nano Banana 2 Image Generation/Editing — WaveSpeedAI Nano Banana 2 图像生成/编辑
v1.0.0通过WaveSpeed AI使用Google的Nano Banana 2模型生成和编辑图像。支持使用自然语言提示进行文本到图像生成和图像编辑。具有原生4K分辨率、灵活的宽高比(包括超窄的1:8、8:1)、多语言文本渲染和相机风格的控制。适用于用户想要从文本创建图像或编辑现有图像的场景。
运行时依赖
安装命令
点击复制技能文档
WaveSpeedAI Nano Banana 2 图像生成/编辑 使用 Google 的 Nano Banana 2 模型通过 WaveSpeed AI 平台生成和编辑图像。支持文本到图像生成和自然语言图像编辑,最高可输入 14 张图像。 身份验证 导出 WAVESPEED_API_KEY="你的 API 密钥" 在 wavespeed.ai/accesskey 获取你的 API 密钥。
快速开始 文本到图像 导入 wavespeed 从 'wavespeed'; const output_url = (await wavespeed.run( "google/nano-banana-2/text-to-image", { prompt: "一个宁静的日本花园,樱花,水彩风格" } ))["outputs"][0];
图像编辑 images 参数接受图像 URL 数组。如果你有本地文件,先使用 wavespeed.upload() 上传获取 URL。 导入 wavespeed 从 'wavespeed'; // 上传本地图像获取 URL const imageUrl = await wavespeed.upload("/path/to/photo.png"); const output_url = (await wavespeed.run( "google/nano-banana-2/edit", { images: [imageUrl], prompt: "用戏剧性的日落替换天空" } ))["outputs"][0];
你也可以直接传递现有的图像 URL: const output_url = (await wavespeed.run( "google/nano-banana-2/edit", { images: ["https://example.com/photo.jpg"], prompt: "用戏剧性的日落替换天空" } ))["outputs"][0];
API 端点 文本到图像 模型 ID:google/nano-banana-2/text-to-image 从文本提示生成图像。 参数 参数 类型 必需 默认 值 描述 prompt string 是 -- 图像生成的文本描述 aspect_ratio string 否 -- 输出宽高比。可选值:1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9, 1:4, 4:1, 1:8, 8:1 resolution string 否 1k 图像分辨率。可选值:1k, 2k, 4k output_format string 否 png 输出格式。可选值:png, jpeg
示例 导入 wavespeed 从 'wavespeed'; const output_url = (await wavespeed.run( "google/nano-banana-2/text-to-image", { prompt: "一辆红色的复古保时捷 911 在蜿蜒的山路上,金色时刻,写实风格", aspect_ratio: "16:9", resolution: "2k", output_format: "png" } ))["outputs"][0];
图像编辑 模型 ID:google/nano-banana-2/edit 使用自然语言提示编辑现有图像。支持最高 14 张输入图像。 参数 参数 类型 必需 默认 值 描述 images string[] 是 [] 输入图像的 URL(1-14 张图像) prompt string 是 -- 编辑的文本描述 aspect_ratio string 否 -- 输出宽高比。可选值:1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9, 1:4, 4:1, 1:8, 8:1 resolution string 否 1k 图像分辨率。可选值:1k, 2k, 4k output_format string 否 png 输出格式。可选值:png, jpeg
示例 导入 wavespeed 从 'wavespeed'; // 上传本地图像,或者使用现有的 URL const imageUrl = await wavespeed.upload("/path/to/living-room.png"); const output_url = (await wavespeed.run( "google/nano-banana-2/edit", { images: [imageUrl], prompt: "将墙壁颜色改为温暖的土色,并添加室内植物", aspect_ratio: "16:9", resolution: "4k", output_format: "png" } ))["outputs"][0];
多图像编辑 // 上传多个本地图像 const faceUrl = await wavespeed.upload("/path/to/face.png"); const hairstyleUrl = await wavespeed.upload("/path/to/hairstyle.png"); const output_url = (await wavespeed.run( "google/nano-banana-2/edit", { images: [faceUrl, hairstyleUrl], prompt: "将第二张图像的发型应用于第一张图像的人" } ))["outputs"][0];
高级用法 同步模式 使用同步模式进行单个请求,等待结果而不轮询: const output_url = (await wavespeed.run( "google/nano-banana-2/text-to-image", { prompt: "一家咖啡店的极简主义标志" }, { enableSyncMode: true } ))["outputs"][0];
自定义客户端和重试配置 导入 { Client } 从 'wavespeed'; const client = new Client("你的 API 密钥", { maxRetries: 2, maxConnectionRetries: 5, retryInterval: 1.0, }); const output_url = (await client.run( "google/nano-banana-2/text-to-image", { prompt: "未来城市景观,黄昏" } ))["outputs"][0];
错误处理 导入 { Client, WavespeedTimeoutException, WavespeedPredictionException } 从 'wavespeed'; const client = new Client(); const result = await client.runNoThrow( "google/nano-banana-2/text-to-image", { prompt: "一只猫戴着高帽" } ); if (result.outputs) { console.log("图像 URL:", result.outputs[0]); console.log("任务 ID:", result.detail.taskId); } else { console.log("失败:", result.detail.error.message); if (result.detail.error instanceof WavespeedTimeoutException) { console.log("请求超时 - 尝试增加超时时间"); } else if (result.detail.error instanceof WavespeedPredictionException) { console.log("模型预测失败"); } }
宽高比选项 宽高比 用例 1:1 正方形 — 社交媒体帖子,个人资料图片 3:2 风景 — 标准摄影 2:3 肖像 —