nano-banana-pro-openrouter

Polar Sponsor
爱发电 赞助
.NET 9.0

使用 Nano Banana Pro(Gemini 3 Pro Image)通过 OpenRouter 生成/编辑图像,适用于图像创建、修改及编辑请求,支持文本生成图像和图像生成图像。

Nano Banana Pro 图像生成和编辑

功能概述

Nano Banana Pro 图像生成和编辑是一项面向实际任务的技能,主要用于使用 OpenRouter 编辑新图像或编辑已有图像( 型号: google/ gemini-3- pro- image- preview ).;使用绝对路径运行脚本 : 1.;

核心要点

  • Generate n。
  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。

使用与执行

从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

Nano Banana Pro 图像生成与编辑

使用 OpenRouter(模型:google/gemini-3-pro-image-preview)生成新图像或编辑现有图像。

使用方法

使用绝对路径运行脚本:

生成新图像:

uv run /path/to/this/skill/scripts/generate_image.py --prompt "你的图像描述" --filename "output-name.png" [--resolution 1K|2K|4K] [--api-key KEY]

编辑现有图像:

uv run /path/to/this/skill/scripts/generate_image.py --prompt "编辑指令" --filename "output-name.png" --input-image "path/to/input.png" [--resolution 1K|2K|4K] [--api-key KEY]

自定义输出目录:

uv run /path/to/this/skill/scripts/generate_image.py --prompt "你的图像描述" --filename "output-name.png" --output-dir "/custom/path"

输出位置:

  • 默认路径:图像保存至 ./output_images/(相对于本 skill 的根目录)
  • 自定义路径:使用 --output-dir 指定其他目录
  • 若输出目录不存在,脚本将自动创建

默认工作流(草稿 → 迭代 → 定稿)

目标:在提示词尚未确定前,避免直接消耗时间生成 4K 图像,实现快速迭代。

  • 草稿(1K):快速反馈循环
    • uv run /path/to/this/skill/scripts/generate_image.py --prompt "<草稿提示词>" --filename "yyyy-mm-dd-hh-mm-ss-draft.png" --resolution 1K
  • 迭代:小幅调整提示词;每次运行均使用新文件名
    • 若为图像编辑:每次迭代均保持相同的 --input-image,直至结果满意为止。
  • 定稿(4K):仅当提示词已最终确认时执行
    • uv run /path/to/this/skill/scripts/generate_image.py --prompt "<最终提示词>" --filename "yyyy-mm-dd-hh-mm-ss-final.png" --resolution 4K

分辨率选项

OpenRouter API 支持三种分辨率(K 必须为大写):

  • 1K(默认)— 约 1024 像素分辨率
  • 2K — 约 2048 像素分辨率
  • 4K — 约 4096 像素分辨率

将用户请求映射为 API 参数:

  • 未提及分辨率 → 1K
  • "低分辨率"、"1080"、"1080p"、"1K" → 1K
  • "2K"、"2048"、"普通"、"中等分辨率" → 2K
  • "高分辨率"、"high-res"、"hi-res"、"4K"、"ultra" → 4K

API 密钥

脚本按以下顺序查找 API 密钥:

  1. --api-key 参数(适用于用户在对话中直接提供密钥的场景)
  2. OPENROUTER_KEY 环境变量

若两者均不可用,脚本将退出并报错。

预检 + 常见失败(快速修复)

  • 预检步骤:

    • command -v uv(必须存在)
    • test -n "$OPENROUTER_KEY"(或传入 --api-key)
    • 若为图像编辑:test -f "path/to/input.png"
  • 常见失败情况:

    • Error: No API key provided. → 设置 OPENROUTER_KEY 或传入 --api-key
    • Error loading input image: → 路径错误或文件不可读;请确认 --input-image 指向一个真实存在的图像文件
    • “quota/permission/403” 类型的 API 错误 → 密钥错误、无访问权限或配额超限;可尝试更换密钥或账户

文件名生成规则

文件名格式为:yyyy-mm-dd-hh-mm-ss-name.png

格式说明: {时间戳}-{描述性名称}.png

  • 时间戳:当前日期与时间,格式为 yyyy-mm-dd-hh-mm-ss(24 小时制)
  • 描述性名称:小写字母、单词间以短横线连接
  • 描述性部分应简洁(通常为 1–5 个单词)
  • 名称应结合用户提示词或上下文生成
  • 若上下文不明确,可使用随机标识符(例如 x9k2、a7b3)

示例:

  • 提示词 “A serene Japanese garden” → 2025-11-23-14-23-05-japanese-garden.png
  • 提示词 “sunset over mountains” → 2025-11-23-15-30-12-sunset-mountains.png
  • 提示词 “create an image of a robot” → 2025-11-23-16-45-33-robot.png
  • 上下文不明确 → 2025-11-23-17-12-48-x9k2.png

图像编辑

当用户希望修改已有图像时:

  1. 检查用户是否提供了图像路径,或是否引用了当前目录下的图像
  2. 通过 --input-image 参数传入图像路径
  3. 提示词中需包含明确的编辑指令(例如:“让天空更具戏剧感”、“移除人物”、“改为卡通风格”)
  4. 常见编辑任务包括:添加/移除元素、更改风格、调整色彩、模糊背景等

提示词处理原则

图像生成场景: 直接将用户的图像描述作为 --prompt 参数值传递;仅当原始描述明显不足时才进行必要润色。

图像编辑场景: 在 --prompt 中传入编辑指令(例如:“在天空中添加一道彩虹”、“使其呈现水彩画风格”)

两种情况下均须忠实保留用户的创作意图。

提示词模板(高成功率)

当用户表述模糊,或编辑操作要求精确时,建议使用以下模板:

  • 图像生成模板:

    • “Create an image of: . Style: