使用 Google 的 Nano Banana Pro API(Gemini 3 Pro Image)生成新图像或编辑现有图像。
使用绝对路径运行脚本(请勿先 cd 到技能目录):
生成新图像:
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py --prompt "你的图像描述" --filename "输出名称.png" [--resolution 1K|2K|4K] [--api-key KEY]
编辑现有图像:
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py --prompt "编辑指令" --filename "输出名称.png" --input-image "路径/到/输入.png" [--resolution 1K|2K|4K] [--api-key KEY]
重要提示:始终从用户的当前工作目录运行,以便图像保存在用户正在工作的位置,而不是技能目录中。
目标:在不浪费时间为 4K 图像调整之前,快速迭代直到提示词正确。
- 草稿(1K):快速反馈循环
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py --prompt " <草稿提示词> " --filename "yyyy-mm-dd-hh-mm-ss-draft.png" --resolution 1K 草稿提示词>
- 迭代:以小的差异调整提示词;每次运行都使用新的文件名
- 如果编辑:保持相同的
--input-image每次迭代都进行,直到你满意为止。
- 如果编辑:保持相同的
- 最终(4K):仅当提示词锁定后
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py --prompt "" --filename "yyyy-mm-dd-hh-mm-ss-final.png" --resolution 4K
Gemini 3 Pro 图像 API 支持三种分辨率(必须使用大写 K):
- 1K(默认)- 约 1024 像素分辨率
- 2K- 约 2048 像素分辨率
- 4K- 约 4096 像素分辨率
将用户请求映射到 API 参数:
- 未提及分辨率 →
1K - "低分辨率"、"1080"、"1080p"、"1K" →
1K - "2K"、"2048"、"正常"、"中等分辨率" →
2K - "高分辨率"、"高清"、"高画质"、"4K"、"超高清" →
4K
脚本按以下顺序检查API密钥:
--api-key参数(如果用户在聊天中提供了密钥则使用)GEMINI_API_KEY环境变量
如果两者都不可用,脚本将退出并显示错误信息。
- 预检:
command -v uv(必须存在)test -n "$GEMINI_API_KEY"(或传递--api-key参数)- 如果正在编辑:
test -f "path/to/input.png"
- 常见故障:
错误:未提供API密钥。→ 设置GEMINI_API_KEY环境变量或传递--api-key参数加载输入图像时出错:→ 路径错误 / 文件不可读;请确认--input-image- 指向一个真实的图像文件
文件名生成使用以下模式生成文件名:
yyyy-mm-dd-hh-mm-ss-名称.png {时间戳}-{描述性名称}.png
- 时间戳:当前日期/时间,格式为
yyyy-mm-dd-hh-mm-ss(24小时制) - 名称:描述性小写文本,使用连字符连接
- 描述部分应简洁(通常为1-5个词)
- 使用用户提示或对话中的上下文
- 如果不明确,使用随机标识符(例如,
x9k2,a7b3)
示例:
- 提示“一个宁静的日式花园” →
2025-11-23-14-23-05-japanese-garden.png - 提示“山间日落” →
2025-11-23-15-30-12-sunset-mountains.png - 提示“创建一张机器人图片” →
2025-11-23-16-45-33-robot.png - 上下文不明确 →
2025-11-23-17-12-48-x9k2.png
当用户想要修改现有图片时:
- 检查他们是否提供了图片路径或引用了当前目录中的图片
- 使用
--input-image参数并指定图片路径 - 提示应包含编辑说明(例如,“让天空更富戏剧性”、“移除人物”、“改为卡通风格”)
- 常见编辑任务:添加/移除元素、改变风格、调整颜色、模糊背景等
对于生成任务:将用户的图片描述原样传递给--prompt参数。仅在明显不足时进行改写。
用于编辑:在--prompt中传递编辑指令(例如:"在天空中添加一道彩虹","使其看起来像一幅水彩画")在这两种情况下都要保留用户的创作意图。
提示词模板(高成功率)
生成模板:
- “创建一张图像,内容为:
- <主题> 。风格: <风格> 。构图: <相机 镜头=""> 。光照: <光照> 。背景: <背景> 。调色板: <调色板> 。避免: <列表> 。”编辑模板(保留其他所有内容): 列表> 调色板> 背景> 光照> 相机> 风格> 主题>
- “仅更改:
- <单一更改> 。保持完全相同:主题、构图/裁剪、姿势、光照、调色板、背景、文字和整体风格。不要添加新对象。如果存在文字,请保持其不变。”输出 单一更改>
- 脚本输出生成图像的完整路径
- 不要读回图像
- ——只需告知用户保存路径示例
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py –prompt “A serene Japanese garden with cherry blossoms” –filename “2025-11-23-14-23-05-japanese-garden.png” –resolution 4K
编辑现有图像:
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py –prompt “make the sky more dramatic with storm clouds” –filename “2025-11-23-14-25-30-dramatic-sky.png” –input-image “original-photo.jpg” –resolution 2K
uv run ~/.codex/skills/nano-banana-pro/scripts/generate_image.py –prompt “make the sky more dramatic with storm clouds” –filename “2025-11-23-14-25-30-dramatic-sky.png” –input-image “original-photo.jpg” –resolution 2K
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/274259.html