|

用 OpenClaw 接入 Nano Banana Pro 图片 API 的 5 步完整教程

让 OpenClaw AI Agent 自动生成图片是很多开发者想实现的功能。本文将介绍 如何通过 5 个步骤为 OpenClaw 创建自定义 Skill,接入 Nano Banana Pro 图片生成 API,实现从聊天指令到自动出图的完整工作流。

核心价值: 读完本文,你将掌握 OpenClaw 自定义 Skill 的创建方法,学会通过 API易 平台接入 Nano Banana Pro 实现文生图、图片编辑和批量处理,让你的 AI Agent 具备专业级图片生成能力。

openclaw-nano-banana-pro-image-api-tutorial 图示


Nano Banana Pro 图片 API 核心能力概览

在开始接入之前,先了解 Nano Banana Pro 能为你的 OpenClaw Agent 带来什么能力。

Nano Banana Pro(官方名称 Gemini 3 Pro Image Preview)是 Google DeepMind 推出的专业级 AI 图像生成模型,基于 Gemini 3 Pro 构建,被业界评为「生成包含正确渲染和清晰可读文本的图像的最佳模型」。

Nano Banana Pro 核心技术参数

能力 参数 说明
文本渲染 错误率 < 10% 单行文本准确率业界领先
输出分辨率 1K / 2K / 4K 原生高分辨率,无需后处理
参考图像 最多 14 张 支持多图合成和角色一致性
角色一致性 最多 5 个角色 跨场景角色面部一致
思考模式 Thinking Process 复杂构图推理可视化
搜索接地 Google Search 基于实时数据生成可视化

🎯 接入建议: Nano Banana Pro 官方需要绑定 Google Cloud 海外信用卡,门槛较高。我们推荐通过 API易 apiyi.com 平台接入,统一定价 $0.05/张(官方 4K 价格的 2 折),支持支付宝/微信支付,无需海外卡。


OpenClaw Skill 接入 Nano Banana Pro 的完整架构

理解整体架构有助于你更好地完成后续配置。

openclaw-nano-banana-pro-image-api-tutorial 图示

为什么选择通过 API易 接入

对比项 Google 官方直连 通过 API易 apiyi.com
4K 单价 $0.24/张 $0.05/张(2 折)
支付方式 海外信用卡 支付宝/微信支付/USDT
API 格式 Google 原生 SDK Gemini 原生格式兼容
网络要求 需科学上网 国内直连
并发限制 受 Quota 限制 不限并发,RPM 2000+
大客户优惠 充值加赠最高 20%

第一步:创建 OpenClaw Skill 目录结构

# 创建 Skill 目录结构
mkdir -p ~/.openclaw/skills/nano-banana-pro/scripts
cd ~/.openclaw/skills/nano-banana-pro
touch SKILL.md scripts/generate.py scripts/edit.py

第二步:编写 SKILL.md 定义文件

SKILL.md 是 OpenClaw 识别和调用你的 Skill 的核心文件,由 YAML 前置元数据和 Markdown 指令组成。

---
name: nano-banana-pro
description: Generate and edit images using Nano Banana Pro (Gemini 3 Pro Image) via API易 platform. Supports text-to-image, image editing, multi-image composition, and batch processing.
version: 1.0.0
metadata:
  openclaw:
    requires:
      env:
        - APIYI_API_KEY
      bins:
        - python3
    primaryEnv: APIYI_API_KEY
emoji: "🎨"
---

# Nano Banana Pro 图片生成技能

## 功能
- **文生图**: 根据文本描述生成高质量图片(1K/2K/4K)
- **图片编辑**: 对已有图片进行修改、合成、风格转换
- **批量处理**: 支持批量生成和批量编辑

## 使用方式

### 生成图片
```bash
exec python3 scripts/generate.py --prompt "描述" --aspect-ratio "16:9" --resolution "2K"

编辑图片

exec python3 scripts/edit.py --instruction "编辑指令" --image-url "图片URL"

注意事项

  • 使用 Gemini 原生 API 格式: /v1beta/models/{model}:generateContent
  • 4K 图片约需 60 秒,建议 exec timeout=120
  • 建议使用英文提示词获得最佳效果

> 💡 **开发提示**: `primaryEnv: APIYI_API_KEY` 声明后,OpenClaw 会自动将 API Key 注入到 Skill 运行环境中,你的脚本可以直接通过环境变量读取,无需硬编码密钥。

---

## 第三步:编写文生图脚本 generate.py

这是核心脚本,负责接收 OpenClaw 传入的参数,调用 Nano Banana Pro API 生成图片。

### curl 快速测试(Gemini 原生格式)

先用一条 curl 命令验证 API 是否通畅,这是最快的测试方式:

```bash
curl -s -X POST \
  "https://api.apiyi.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
  -H "Authorization: Bearer sk-你的API易密钥" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [
        {"text": "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme"}
      ]
    }],
    "generationConfig": {
      "responseModalities": ["IMAGE"],
      "imageConfig": {
        "aspectRatio": "16:9",
        "imageSize": "2K"
      }
    }
  }' | python3 -c "
import sys, json, base64
data = json.load(sys.stdin)
img_data = data['candidates'][0]['content']['parts'][0]['inlineData']['data']
sys.stdout.buffer.write(base64.b64decode(img_data))
" > gemini-native-image.png

执行成功后,当前目录会生成 gemini-native-image.png 文件。

Python 脚本(Gemini 原生格式)

#!/usr/bin/env python3
"""Nano Banana Pro 文生图脚本 - OpenClaw Skill(Gemini 原生格式)"""
import os, json, base64, argparse, requests
from datetime import datetime

API_KEY = os.environ.get("APIYI_API_KEY", "")
API_BASE = "https://api.apiyi.com/v1beta/models"  # API易 Gemini 原生接口

def generate_image(prompt, aspect_ratio="16:9", resolution="2K"):
    url = f"{API_BASE}/gemini-3-pro-image-preview:generateContent"
    headers = {
        "Authorization": f"Bearer {API_KEY}",
        "Content-Type": "application/json"
    }
    data = {
        "contents": [{"parts": [{"text": prompt}]}],
        "generationConfig": {
            "responseModalities": ["IMAGE"],
            "imageConfig": {
                "aspectRatio": aspect_ratio,
                "imageSize": resolution
            }
        }
    }
    response = requests.post(url, headers=headers, json=data, timeout=120)
    response.raise_for_status()
    result = response.json()

    # Gemini 原生格式:从 candidates 提取 inlineData
    parts = result["candidates"][0]["content"]["parts"]
    for part in parts:
        if "inlineData" in part:
            img_bytes = base64.b64decode(part["inlineData"]["data"])
            filename = f"nano_banana_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
            with open(filename, "wb") as f:
                f.write(img_bytes)
            print(f"图片已生成: {filename} ({len(img_bytes)/1024:.1f} KB)")
            return filename
    print("未能提取图片数据")
    return None

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--prompt", required=True)
    parser.add_argument("--aspect-ratio", default="16:9")
    parser.add_argument("--resolution", default="2K", help="分辨率: 1K/2K/4K")
    args = parser.parse_args()
    generate_image(args.prompt, args.aspect_ratio, args.resolution)

🚀 快速开始: 上面的代码使用 API易 apiyi.com 的 Gemini 原生格式接口,端点为 /v1beta/models/{model}:generateContent,响应结构与 Google 官方完全一致。在 API易 控制台: api.apiyi.com 创建 Key 即可开始使用。


第四步:编写图片编辑脚本 edit.py

Nano Banana Pro 不仅能生成图片,还支持对已有图片进行编辑。

#!/usr/bin/env python3
"""Nano Banana Pro 图片编辑脚本 - OpenClaw Skill(Gemini 原生格式)"""
import os, json, base64, argparse, requests
from datetime import datetime

API_KEY = os.environ.get("APIYI_API_KEY", "")
API_BASE = "https://api.apiyi.com/v1beta/models"

def edit_image(instruction, image_url, extra_images=None):
    url = f"{API_BASE}/gemini-3-pro-image-preview:generateContent"
    headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}

    # 构建 Gemini 原生格式的多模态 parts
    parts = [{"text": instruction}]
    # 将图片 URL 转为 base64 内联数据
    img_resp = requests.get(image_url, timeout=30)
    parts.append({"inlineData": {"mimeType": "image/png",
                                  "data": base64.b64encode(img_resp.content).decode()}})
    if extra_images:  # 支持多图合成(最多 14 张参考图)
        for img_url in extra_images[:13]:
            r = requests.get(img_url, timeout=30)
            parts.append({"inlineData": {"mimeType": "image/png",
                                          "data": base64.b64encode(r.content).decode()}})

    data = {
        "contents": [{"parts": parts}],
        "generationConfig": {"responseModalities": ["IMAGE"]}
    }
    response = requests.post(url, headers=headers, json=data, timeout=120)
    response.raise_for_status()
    result_parts = response.json()["candidates"][0]["content"]["parts"]
    for part in result_parts:
        if "inlineData" in part:
            filename = f"edited_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
            with open(filename, "wb") as f:
                f.write(base64.b64decode(part["inlineData"]["data"]))
            print(f"编辑完成: {filename}")
            return filename
    return None

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--instruction", required=True)
    parser.add_argument("--image-url", required=True)
    parser.add_argument("--extra-images", nargs="*")
    args = parser.parse_args()
    edit_image(args.instruction, args.image_url, args.extra_images)

图片编辑能力总结

编辑类型 指令示例 处理时间
背景替换 "Remove background and add sunset" ~10 秒
风格转换 "Convert to anime style" ~15 秒
元素添加 "Add sunglasses to the person" ~10 秒
多图合成 "Combine these logos and add…" ~20 秒
文字添加 "Add title text: Hello World" ~10 秒
色彩调整 "Make the image warmer, increase contrast" ~8 秒

第五步:配置 OpenClaw 并测试

配置 API Key

在 OpenClaw 配置文件 ~/.openclaw/openclaw.json 中添加 Skill 配置:

{
  "skills": {
    "entries": {
      "nano-banana-pro": {
        "enabled": true,
        "apiKey": "sk-你的API易密钥"
      }
    }
  }
}

openclaw-nano-banana-pro-image-api-tutorial 图示

测试 Skill

在消息平台中发送测试指令验证功能:

生成一张现代简约风格的电商产品展示图,白色背景,产品居中

验证 Skill 是否正确加载:

openclaw skills list | grep nano-banana
openclaw skills test nano-banana-pro

💰 成本优化: Nano Banana Pro 通过 API易 apiyi.com 的统一定价为 $0.05/张,不分分辨率。如果你的项目日均消耗超过 5000 张,可以享受充值加赠最高 20% 的优惠,单张成本低至 $0.04。


Nano Banana Pro API 成本与性能对比

选择合适的接入方式对长期使用非常重要。

openclaw-nano-banana-pro-image-api-tutorial 图示

上方 SVG 图表展示了详细的定价对比和性能参数。关键数据:通过 API易 接入 Nano Banana Pro,单张 4K 图片成本仅 $0.05(官方 $0.24 的 2 折),大客户充值加赠后低至 $0.04/张,平台日均处理 10 万+ 张图片,不限并发。


常见问题

Q1: OpenClaw 接入 Nano Banana Pro 需要安装哪些依赖?

只需要 Python 3 和 requests 库。我们通过 API易 apiyi.com 的 Gemini 原生格式接口(/v1beta/models/{model}:generateContent)调用,不需要安装 Google 的 google-generativeai SDK。运行 pip install requests 即可。你也可以直接用 curl 命令测试,无需任何依赖。

Q2: 生成 4K 图片时 OpenClaw 报超时怎么办?

Nano Banana Pro 生成 4K 图片约需 60 秒。在 SKILL.md 的使用说明中,建议 OpenClaw 使用 exec timeout=120exec timeout=180 来调用脚本,避免默认超时导致任务中断。

Q3: 可以用其他图片生成模型替代 Nano Banana Pro 吗?

可以。API易 apiyi.com 平台同时支持多种图片生成模型。你只需修改 generate.py 中的 model 参数即可切换,API 格式完全一致,无需修改其他代码。

Q4: 如何确保 OpenClaw Skill 的安全性?

三个关键措施:第一,API Key 通过环境变量注入,不要硬编码到脚本中;第二,只使用你自己创建的 Skill,避免从 ClawHub 安装来源不明的图片生成技能(已有 820+ 恶意技能被发现);第三,定期检查 OpenClaw 日志确认没有异常调用。

Q5: 图片编辑支持哪些操作?效果如何?

Nano Banana Pro 支持背景替换、风格转换、元素添加/删除、多图合成(最多 14 张参考图)、文字渲染等。文字渲染是其最大优势,单行文本错误率低于 10%,远超 DALL-E 3 和 Midjourney。通过 API易 平台调用编辑功能,单次仅需 $0.05,平均 10 秒完成。


总结

通过本教程的 5 个步骤,你已经掌握了为 OpenClaw 创建自定义 Skill 接入 Nano Banana Pro 图片 API 的完整流程:

  1. 创建 Skill 目录 — 标准的 SKILL.md + scripts/ 结构
  2. 编写 SKILL.md — 声明依赖、环境变量和使用指令
  3. 编写文生图脚本 — 通过 API易 Gemini 原生格式接口调用 Nano Banana Pro
  4. 编写编辑脚本 — 支持多图合成、背景替换、风格转换
  5. 配置和测试 — 在 openclaw.json 中设置 Key,验证功能

推荐通过 API易 apiyi.com 接入 Nano Banana Pro,享受统一 $0.05/张的定价(官方 4K 的 2 折),支持 Claude、GPT-4o、DeepSeek 等多模型统一接口,还可以在 imagen.apiyi.com 免费体验出图效果。


本文由 APIYI 技术团队撰写,关注 AI 大模型 API 接入实践和 Agent 开发教程。更多技术指南请访问 API易帮助中心: help.apiyi.com

类似文章