用途:将文本提示词转为一张或多张本地图片,或对已有图片进行编辑、改风格与变换,依托 Google 官方 google-genai SDK 与 Gemini 图像模型。
依赖与安装:需要安装 google-genai 和 Pillow,命令为 pip install -U google-genai pillow。建议使用捆绑脚本而非临时片段,以统一 API 密钥加载、编辑输入与输出处理。
主要能力:
- 文本生成图像;
- 通过 --input-image 传入一张或多张图片做图生图编辑;
- 通过 --state-file 保存完整聊天历史到 JSON,跨多次调用延续多轮编辑,--reset-state 可重置;
- 生成后可用 Pillow 做 --crop(左,上,右,下)和 --resize(宽x高)后处理,--format 强制 PNG、JPEG 或 WEBP;
- --dry-run 仅打印解析后的请求负载,不调用 API;
- --model 可覆盖模型 ID,默认 gemini-3.1-flash-image-preview。
用法:脚本为 scripts/generate_image.py。示例:python nano-banana-2-imagegen/scripts/generate_image.py "提示词" --output /tmp/out.png;编辑示例加 --input-image /tmp/in.jpg。可用 --prompt-file 从文件读取提示词,用 --api-key 或 --api-key-file 提供密钥。
密钥解析顺序:--api-key、GEMINI_API_KEY、GOOGLE_API_KEY、--api-key-file、GEMINI_API_KEY_FILE、GOOGLE_API_KEY_FILE;密钥文件支持纯文本或 .env 风格(GEMINI_API_KEY=... / GOOGLE_API_KEY=...)。
适用场景:产品图、图标、海报、模型图或主视觉的生成与迭代编辑,以及需要跨调用保持同一编辑上下文的精修。
限制:必须使用捆绑脚本与官方 SDK,不应直接使用 REST;生成结果多张时脚本自动追加 -2、-3 等后缀;仅当脚本实际保存了图片文件才可称生成成功;提示词需明确主体、构图、光照、风格与文字渲染要求。参考资料见 references/gemini-image-generation.md 与 references/prompting-guide.md。