华数图片生成(Wasu Image Gen)
通过华数代理的图片生成接口生成和编辑 AI 图片。凭证优先从本地缓存读取,仅在缓存缺失时通过 wasu-cli 获取。
凭证检查(每次会话首次使用时执行)
优先级:本地缓存 > wasu-cli。有缓存就直接用,不浪费 token 调 wasu-cli。
快速路径:检查本地缓存
python scripts/image_gen.py check-config
- 如果输出
[OK]— 凭证有效,直接跳到"图片生成工作流",不需要执行下面的 wasu-cli 步骤 - 如果输出
[MISSING]或[EXPIRED]— 继续下面的 wasu-cli 流程
wasu-cli 流程(仅在无有效缓存时执行)
1. 检查 wasu-cli 安装
wasu --update
如果未安装,引导用户执行:
npm install -g wasu-cli
2. 检查登录状态
wasu --user_config
- 有输出 → 跳到步骤 4
- 无输出或报错 → 引导登录
3. 引导登录
wasu --login
返回二维码 ID 和二维码。展示二维码后立即执行以下操作(无需等待用户回复):
预创建 keystore 文件(规避沙盒 O_CREAT 限制):
# Windows (PowerShell):
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.wasu" | Out-Null
New-Item -ItemType File -Force -Path "$env:USERPROFILE\.wasu\keystore.enc" | Out-Null
# macOS / Linux:
mkdir -p ~/.wasu && touch ~/.wasu/keystore.enc && chmod 600 ~/.wasu/keystore.enc
轮询扫码状态(最长等待 120 秒):
wasu --login-status <qrcodeId> --out 120
轮询直到已登录或超时。登录成功后告知用户:"登录成功!"
4. 获取凭证并缓存
python scripts/image_gen.py config
自动调用 wasu --llm-config 并缓存到 ~/wasu-image/wasu-image-gen-config.json。后续操作自动使用缓存。
可用模型
默认使用 qwen-image-2.0,无需主动询问用户选择模型。仅当用户主动询问可用模型、或对生成效果不满意想切换模型时,才展示以下选项:
| 模型 | 特点 | 适用场景 |
|---|---|---|
qwen-image-2.0(默认) |
均衡画质与速度,支持反向提示词和提示词扩展 | 日常生图、插画、设计素材 |
qwen-image-2.0-pro |
更高质量,细节更丰富 | 精细作品、商业素材 |
图片生成工作流
重要:严格按以下步骤执行,不要跳过任何步骤!
步骤 1:凭证校验(必须首先执行)
python scripts/image_gen.py check-config
- 如果输出
[OK]— 凭证有效,继续步骤 2 - 如果输出
[MISSING]— 运行python scripts/image_gen.py config获取凭证 - 如果提示"未购买套餐" — 告知用户先购买套餐,停止后续步骤
步骤 2:确认参数
从用户描述中提取参数,缺失的使用默认值:
| 参数 | 默认值 | 提取示例 |
|---|---|---|
| prompt | 必填 | "一只猫追蝴蝶" |
| model | qwen-image-2.0 | "用pro" → qwen-image-2.0-pro |
| n | 1 | "生成3张" → 3 |
| ratio | 1:1 | "横版" → 16:9, "竖屏" → 9:16 |
| negative_prompt | 无 | "不要模糊的" → "模糊、低画质" |
直接使用默认模型 qwen-image-2.0 开始生成,不要询问用户选择模型。 仅当用户主动要求切换模型或表示对当前效果不满意时,才提供其他模型选项。
步骤 3:执行生成
文生图(纯文本描述生成图片):
python scripts/image_gen.py generate --prompt "用户描述" --ratio "1:1" --model "qwen-image-2.0" --output output.png
图片编辑(基于参考图编辑):
python scripts/image_gen.py edit --image "图片路径或URL" --prompt "编辑指令" --ratio "1:1" --model "qwen-image-2.0" --output edited.png
多图编辑:
python scripts/image_gen.py edit --image "图1" --image "图2" --prompt "编辑指令" --output edited.png
命令必须前台阻塞运行,设置 timeout: 300000。
步骤 4:展示结果
生成完成后脚本会自动下载并打开图片。如果自动打开失败:
# Windows
start "" "图片路径.png"
# macOS
open "图片路径.png"
如果用户不满意:
- 重新生成:修改 prompt 或参数后重新执行 generate
- 图片编辑:使用 edit 命令对已生成的图片进行编辑修改
- 切换模型:如果用户表示效果不好,可建议尝试 qwen-image-2.0-pro(更高质量)
宽高比参考
比例与适用场景
| 比例 | 方向 | 适用场景 |
|---|---|---|
| 1:1 | 正方形 | 头像、社交媒体帖子 |
| 16:9 | 横版 | 桌面壁纸、演示文稿、YouTube |
| 9:16 | 竖版 | 手机壁纸、抖音/TikTok、Stories |
| 4:3 | 横版 | 经典照片、演示文稿 |
| 3:4 | 竖版 | 人像摄影、Pinterest |
| 3:2 | 横版 | 单反标准、印刷媒体 |
| 2:3 | 竖版 | 人像海报 |
| 21:9 | 超宽 | 电影感、横幅、全景 |
| 5:4 | 横版 | 大幅面打印 |
| 4:5 | 竖版 | Instagram 帖子 |
分辨率映射
qwen-image-2.0 / 2.0-pro(总像素 512×512 ~ 2048×2048):
| 比例 | 分辨率 |
|---|---|
| 1:1 | 2048×2048 |
| 16:9 | 2048×1152 |
| 9:16 | 1152×2048 |
| 4:3 | 1792×1344 |
| 3:4 | 1344×1792 |
| 3:2 | 1792×1195 |
| 2:3 | 1195×1792 |
| 21:9 | 2048×878 |
CLI 命令参考
# 凭证管理
python scripts/image_gen.py check-config
python scripts/image_gen.py config
# 文生图
python scripts/image_gen.py generate \
--prompt "描述" \
--model "qwen-image-2.0" \
--n 1 \
--ratio "1:1" \
--negative-prompt "低画质" \
--output output.png
# 图片编辑
python scripts/image_gen.py edit \
--image "图片路径或URL" \
--prompt "编辑指令" \
--model "qwen-image-2.0" \
--n 1 \
--ratio "1:1" \
--output edited.png
API 参考
图片生成
POST {base_url}/images/generations
Authorization: Bearer {api_key}
Content-Type: application/json
请求体:
{
"model": "qwen-image-2.0",
"input": {
"messages": [
{"role": "user", "content": [{"text": "描述文本"}]}
]
},
"parameters": {
"n": 1,
"negative_prompt": "低分辨率,低画质",
"prompt_extend": true,
"watermark": false,
"size": "2048*2048"
}
}
图片编辑
POST {base_url}/images/generations
Authorization: Bearer {api_key}
Content-Type: application/json
编辑操作与生成使用相同端点 /images/generations,请求体中包含图片内容。
请求体:
{
"model": "qwen-image-2.0-pro",
"input": {
"messages": [
{
"role": "user",
"content": [
{"image": "输入图片URL"},
{"text": "编辑指令"}
]
}
]
},
"parameters": {
"n": 1,
"prompt_extend": true,
"watermark": false,
"size": "2048*2048"
}
}
注意事项
- image_gen.py 仅依赖 Python 标准库 — 无需 pip install
- 凭证安全 — API Key 缓存在
~/wasu-image/wasu-image-gen-config.json,不要打印或上传 - 图片 URL 有效期有限 — 生成完成后立即下载
- 前台阻塞执行 — 使用
timeout: 300000运行,禁止后台模式 - 图片输入 — 支持本地文件路径(自动 base64 编码)和 URL
- qwen-image 数量限制 — 每次生成 1~6 张
- size 格式 — 使用
宽*高(如2048*2048),总像素需在 512×512 至 2048×2048 之间 - prompt_extend — 默认开启,会自动扩展短提示词以获得更好效果;如需精确控制可加
--no-prompt-extend
常见错误
| 错误 | 原因 | 解决 |
|---|---|---|
| 未购买套餐 | wasu --llm-config 返回为空 | 请先购买套餐 |
| 401 Unauthorized | API Key 无效或过期 | 重新运行 python scripts/image_gen.py config |
| InvalidParameter | 参数值不在范围内 | 检查 ratio/size/n 是否正确 |
| ContentModerationFailed | 内容审核未通过 | 修改提示词,避免敏感内容 |
| FileNotFoundError | 输入图片路径不存在 | 检查图片路径是否正确 |