maomomo-article-writer/references/image-generation.md

108 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 图片生成脚本与后端选择
需要实际生成配图文件、使用 API/CLI fallback、批量生成 assets或排查图片接口配置时先读本文件。
## 后端选择
优先顺序:
1. Codex / 当前 agent 的内置图片生成工具。适合大多数配图任务。
2. `scripts/maomomo_image_gen.py` API/CLI fallback。适合用户明确要求 API/CLI、内置工具不可用、需要批量 manifest、或希望把生成过程记录到文件时。
不要因为脚本存在就强制使用脚本。若内置图片工具可用,仍优先使用内置工具生成独立 PNG再保存到 `assets/`
## 配置来源
脚本按以下顺序读取配置:
- `MAOMOMO_IMAGE_API_KEY` / `OPENAI_API_KEY`
- `MAOMOMO_IMAGE_BASE_URL` / `OPENAI_BASE_URL`
- `MAOMOMO_IMAGE_MODEL` / `CODEX_PPT_IMAGE_MODEL`
- `~/.codex/config.toml` 中的 `base_url`
- `~/.codex/auth.json` 中可识别的 API key
不要在日志、回答、Markdown 或 manifest 中写入完整 API key。
## 单张生成
```bash
python3 scripts/maomomo_image_gen.py generate \
--out article/assets/hsbc-mastercard-alipay-campaign-01-cover.png \
--style warm-fintech-guide \
--title "汇丰 Mastercard 支付宝活动" \
--image-type "封面图" \
--core-text "先看报名、门槛和封顶,避免白刷"
```
先只看 prompt
```bash
python3 scripts/maomomo_image_gen.py generate \
--out article/assets/hsbc-mastercard-alipay-campaign-01-cover.png \
--style data-card-dashboard \
--title "返现计算图" \
--image-type "计算图" \
--core-text "HK$190 ÷ 9% ≈ HK$2112,超过部分没有额外收益" \
--dry-run
```
## 批量 manifest
manifest 示例:
```json
{
"images": [
{
"file_name": "assets/hsbc-mastercard-alipay-campaign-01-cover.png",
"type": "封面图",
"title": "汇丰 Mastercard 支付宝活动",
"core_text": "先报名,再看门槛和封顶",
"alt_text": "MAOMOMO 汇丰 Mastercard 支付宝返现活动封面图",
"style": "warm-fintech-guide",
"aspect_ratio": "16:9"
},
{
"file_name": "assets/hsbc-mastercard-alipay-campaign-02-calculation.png",
"type": "计算图",
"title": "怎么刷到刚刚好",
"core_text": "HK$190 ÷ 9% ≈ HK$2112超过部分没有额外收益",
"style": "data-card-dashboard"
}
]
}
```
运行:
```bash
python3 scripts/maomomo_image_gen.py batch \
--manifest article/image_manifest.json \
--base-dir article
```
`file_name` 必须与 Markdown 中的相对路径一致,且最终文件必须真实存在。
## 内置风格名
可用:
- `warm-fintech-guide`
- `clean-editorial`
- `data-card-dashboard`
- `handdrawn-note`
- `xiaohongshu-vertical`
查看完整描述:
```bash
python3 scripts/maomomo_image_gen.py styles
```
## 失败处理
- API key 缺失:提示用户配置环境变量或检查 Codex 配置,不要编造图片文件。
- 接口失败:保留已生成图片,说明失败项,必要时用 `--dry-run` 交付 prompt 清单作为临时排查材料。
- 图片文字乱码或金额错误:重新生成该单张图片;不要手工覆盖文字伪装成模型输出。
- 图片不符合风格:先更新 manifest 的 `style` / `core_text` / `extra`,再重跑对应项。