mcpField
N
nanobanana

nanobanana

github.com/danishi创意与媒体043 次安装5 周前更新
代码仓库

关于 nanobanana

nanobanana 是一项使用 Google Gemini 生成和编辑图像的 Python 技能。它会根据提示词复杂度选择模型,并支持参考图、批量变体、画面比例、分辨率及 Google Search grounding。

主要功能

  1. 01文生图与图像编辑
  2. 02自动选择模型
  3. 03最多使用 14 张参考图
  4. 04批量生成图像变体
  5. 05画面比例与分辨率选项
  6. 06Google Search grounding

适用场景

  1. 01按文字指令编辑照片
  2. 02批量生成多个 Logo 或图标变体
  3. 03按指定比例和分辨率生成图像
  4. 04结合真实世界搜索生成图像

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/danishi/claude-code-config --skill nanobanana

安装后在 Claude Code 中输入/nanobanana确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.claude-plugin/
plugin.json
references/
prompts.md
scripts/
batch_generate.py
generate.py

详细介绍

Nano Banana - AI 图像生成技能

使用 scripts/ 中的 Python 脚本,通过 Google Gemini 生成和编辑图像。 系统会根据提示词的复杂程度自动选择模型:

模型ID使用场景
Nano Banana Progemini-3-pro-image-preview复杂或高质量的请求
Nano Banana 2gemini-3.1-flash-image-preview简单、轻量的请求

满足以下任一条件时,会自动选择 Nano Banana Pro:

  • 指定了 --pro 标志
  • 提示词包含质量关键词(例如 高品質、高精細、プロ、professional、photorealistic)
  • 提示词长度达到 100 个字符或以上
  • 输入图像达到 2 张或以上
  • 请求 4K 分辨率
  • 启用了 Google Search grounding

先决条件

1. 安装依赖项
pip install google-genai Pillow
2. 配置 API 凭据(任选其一)
选项 A:Gemini Developer API(推荐个人使用)

设置 GEMINI_API_KEY 环境变量。 在 https://aistudio.google.com/apikey 获取密钥

export GEMINI_API_KEY="your-api-key"
选项 B:Vertex AI API(适用于 Google Cloud 用户)

设置 GOOGLE_CLOUD_PROJECT,并可选择设置 GOOGLE_CLOUD_LOCATION。 需要启用 Vertex AI API 的 GCP 项目,并配置 Application Default Credentials(gcloud auth application-default login)。

export GOOGLE_CLOUD_PROJECT="your-project-id"
export GOOGLE_CLOUD_LOCATION="us-central1"   # optional, defaults to us-central1

**优先级:**如果同时设置了 GOOGLE_CLOUD_PROJECT 和 GEMINI_API_KEY, 则使用 Vertex AI。

3. 可选环境变量
变量默认值描述
NANOBANANA_MODEL(自动)强制使用指定模型(覆盖自动选择)
IMAGE_OUTPUT_DIR./nanobanana-images默认输出目录
NANOBANANA_NO_SSL_VERIFY(未设置)设置为 1 / true / yes 以禁用 SSL 证书验证

脚本

scripts/generate.py - 生成 / 编辑单张图像
文本生成图像
python scripts/generate.py "a cute robot mascot, pixel art style" -o robot.png
图像编辑(使用参考图像)
python scripts/generate.py "make the sky purple and add stars" -i photo.jpg -o edited.png
多张参考图像(最多 14 张)
python scripts/generate.py "group photo of these people at a party" \
  -i person1.png -i person2.png -i person3.png -o group.png
指定纵横比和分辨率
python scripts/generate.py "cinematic landscape, dramatic lighting" \
  --ratio 21:9 --size 4K -o landscape.png
使用 Google Search grounding(确保符合现实情况)
python scripts/generate.py "photo of the Eiffel Tower at sunset" \
  --search -o eiffel.png
禁用 SSL 验证(适用于企业代理或自签名证书)
python scripts/generate.py "abstract art" --no-ssl-verify -o art.png
JSON 输出(供程序使用)
python scripts/generate.py "abstract art" --json -o art.png
完整选项
usage: generate.py [-h] [-o OUTPUT] [-i INPUTS] [-r RATIO] [-s SIZE]
                   [--search] [-v] [--json] [--no-ssl-verify] prompt

Arguments:
  prompt              Text prompt for image generation

Options:
  -o, --output PATH   Output file path (auto-generated if omitted)
  -i, --input PATH    Input image for editing (repeatable, up to 14)
  -r, --ratio RATIO   Aspect ratio: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
  -s, --size SIZE     Resolution: 1K, 2K, 4K
  --search            Enable Google Search grounding
  --pro               Force Nano Banana Pro model
  -v, --verbose       Show detailed output
  --json              Output result as JSON
  --no-ssl-verify     Disable SSL certificate verification

scripts/batch_generate.py - 批量生成图像

根据单条提示词生成多个图像变体。

基本批量生成
python scripts/batch_generate.py "pixel art logo" -n 20 -d ./logos -p logo
高分辨率批量生成并指定纵横比
python scripts/batch_generate.py "product photo, white background" \
  -n 10 --ratio 1:1 --size 4K -d ./products
并行执行(速度更快)
python scripts/batch_generate.py "icon set" -n 20 --parallel 5 -d ./icons
完整选项
usage: batch_generate.py [-h] [-n COUNT] [-d DIR] [-p PREFIX] [-r RATIO]
                         [-s SIZE] [--search] [--delay DELAY]
                         [--parallel N] [-q] [--json] [--no-ssl-verify] prompt

Arguments:
  prompt              Text prompt for image generation

Options:
  -n, --count N       Number of images (default: 10)
  -d, --dir DIR       Output directory (default: ./nanobanana-images)
  -p, --prefix STR    Filename prefix (default: image)
  -r, --ratio RATIO   Aspect ratio
  -s, --size SIZE     Resolution: 1K, 2K, 4K
  --search            Enable Google Search grounding
  --delay SECS        Delay between sequential requests (default: 3)
  --parallel N        Concurrent requests (default: 1, max recommended: 5)
  -q, --quiet         Suppress progress output
  --json              Output results as JSON
  --no-ssl-verify     Disable SSL certificate verification

纵横比指南

比例常见用途
1:1图标、头像、社交媒体帖子
4:3演示文稿、传统照片
3:2标准横向照片
2:3纵向照片
16:9横幅、YouTube 缩略图、宽屏内容
9:16手机壁纸、Instagram 快拍
21:9电影级超宽画面
4:5Instagram 纵向帖子
5:4合影
3:4书籍封面、纵向艺术作品

分辨率指南

尺寸描述
1K标准分辨率
2K高分辨率
4K超高分辨率(最适合印刷和大型显示屏)

提示词技巧

好的提示词包括:

  1. 主体 - 要生成的内容(“一个机器人”、“山峦上的日落”)
  2. 风格 - 艺术风格(“像素艺术”、“水彩画”、“照片写实风格”)
  3. 细节 - 具体特征(“暖色调光线”、“极简主义”、“鲜艳的色彩”)

有效提示词示例:

  • "大理石背景上的无线耳机专业产品照片,柔和的影棚灯光,85mm 镜头"
  • "像素艺术机器人吉祥物,8 位风格,蓝色和橙色,透明背景"
  • "极简主义标志,几何山峰造型,蓝色渐变,扁平设计,边缘简洁"

参见 references/prompts.md,了解包含分类模板的完整提示词参考。


错误处理

错误解决方案
google-genai package not installed运行 pip install google-genai Pillow
No API credentials found设置 GEMINI_API_KEY 或 GOOGLE_CLOUD_PROJECT
Content blocked by safety filters重新措辞提示词,避免包含受限内容
API rate limit reached等待后重试;批量操作时使用 --delay
Image file not found确认 -i 输入路径正确
SSL: CERTIFICATE_VERIFY_FAILED使用 --no-ssl-verify 或设置 NANOBANANA_NO_SSL_VERIFY=1

评论

支持 Markdown