艺度GPT-image2AI生图 · 艺度AI GPT Image 2 图片生成
概述
本技能通过艺度AI(https://yydd.lk888.ai)调用 GPT Image 2 模型生成图片。支持文生图(text2img)和图生图(img2img),异步创建任务后自动轮询直到拿到结果。
何时使用
- 用户要求生成图片("帮我画一只猫""生成一张海报""AI画图")
- 用户提到比例或尺寸("1024x1024""16:9 横版""auto""4K 出图")
- 用户要求基于参考图生成("按这张图做变体""图生图")
- 用户明确提到艺度AI平台
何时不要使用
- 视频生成、音频生成(本技能仅支持图片)
- 本地图片编辑(裁剪、压缩、加滤镜等)
- 使用其他平台的图片生成 API
认证与 Key 管理
API Key 是调用艺度AI聚合的必备凭据,获取地址:https://yydd.lk888.ai
Key 读取优先级(从高到低)
- 本次对话用户显式提供的 key
- 环境变量
LK888_API_KEY - 本地持久化文件
~/.config/lk888-image/.env(仅在用户允许时读取)
首次配置 Key
运行 scripts/set_key.py 持久化保存:
# 交互输入
python scripts/set_key.py
# 从命令行直接传入
python scripts/set_key.py --key YOUR_KEY
# 从标准输入
echo 'YOUR_KEY' | python scripts/set_key.py --stdin
安全规则:
- 不得在 Skill 文件中硬编码 API Key
- 日志与回显仅允许掩码展示 key(前4+后4位,中间用 **** 替代)
- 用户未提供 key 时,先引导获取再调用 API,不可跳过
工作流(必须按顺序执行)
Step 1: 收集与补齐输入
必填信息:
- prompt:图片描述(用户说的"画一只猫"等)
- size:图片尺寸,默认 auto
条件必填:
- images:图生图时需要提供参考图 URL(1~14 张)
可选:
- quality:图片质量,默认 auto
若用户未指定 size 和 quality,使用默认值 auto。
Step 2: 参数校验与归一化
model固定为gpt-image-2size必须在支持列表内(详见references/api_reference.md的枚举值章节)prompt必须非空- 图生图时:
images必须为 URL 数组,1~14 张 - 文生图时:
images为空或省略
Step 3: 组装请求并调用 API
使用 scripts/generate.py 创建任务并自动轮询:
# 文生图
python scripts/generate.py --prompt "一只戴眼镜的橙猫坐在窗边看书" --size auto --quality auto
# 图生图
python scripts/generate.py --prompt "将这只猫变成水彩画风格" --size auto --images "https://example.com/cat.png"
# 指定 API Key
python scripts/generate.py --prompt "..." --size auto --key YOUR_KEY
# 指定尺寸
python scripts/generate.py --prompt "..." --size 1024x1536 --quality high
关键提醒:
- 单轮对话只允许创建一次任务,绝不重复提交同参数任务
- 创建前输出请求摘要(prompt、size、quality、是否图生图),并等待用户确认
- 禁止自动循环重试;任何重试都必须先告知可能继续消耗积分并获得用户明确同意
Step 4: 任务创建后自动轮询
脚本 generate.py 会自动:
1. 创建任务并获取 task_id
2. 每 5 秒轮询一次任务状态
3. 判断 is_final === true 后输出结果
判定规则(AI 接入必看):
- 终态判定:用 is_final === true;未终态就继续轮询
- 成功/失败判定:用 state 字段,固定 4 档:pending / running / success / failed
- status / status_group 是中文展示字段(如"已完成""处理中"),仅给人看,不要用于代码判断
- state === 'success' → 从 result_url 下载图片
- state === 'failed' → 任务已自动退款,输出失败原因
Step 5: 输出最终结果
- 成功时:输出图片 URL(
result_url),并可下载保存到本地 - 失败时:输出失败原因和退款信息
- 超时时:告知任务可能仍在执行,给出 task_id 供手动继续查询
支持的 size 值
常用值速查(完整列表见 references/api_reference.md):
| 分类 | 尺寸 |
|---|---|
| 自动 | auto |
| 方形 | 1024x1024, 2048x2048, 2880x2880 |
| 竖版 | 1024x1536, 960x1280, 1088x1920 |
| 横版 | 1536x1024, 1280x960, 1920x1088 |
| 2K | 1920x2560, 2560x1920, 2560x1440, 1440x2560 |
| 4K | 2160x3840, 3840x2160, 2304x3456, 3456x2304, 2400x3200, 3200x2400 |
自定义尺寸规则:宽高均为16的倍数、宽高比 1:3~3:1、总像素 655360~8294400。
支持的 quality 值
auto(推荐)、high、medium、low
标准错误处理
| 场景 | 处理 |
|---|---|
| 缺少 API Key | 提示获取(yydd.lk888.ai),可运行 scripts/set_key.py 持久化 |
| prompt 为空 | 提示补充提示词后再创建 |
| size 不合法 | 返回支持列表并要求重选 |
| 图生图缺少 images | 提示至少提供 1 张参考图 URL |
| images 超过 14 张 | 提示精简到 14 张以内 |
| 401/403 | Key 无效、过期或权限不足,提示检查 |
| 429 | 限流,不自动重试,告知用户 |
| 5xx | 服务异常,建议确认后手动重试一次 |
| 查询超时 | 任务可能仍在执行,给出 task_id 供手动继续查询 |
防重复提交策略
- 每个用户请求最多 1 次创建调用
- 已成功返回 task_id 后,本轮对话禁止再次提交相同参数
- 允许第 2 次调用的条件:用户明确要求"重试"或"修改参数后重建"
已知特性提醒
- 选择 2K/4K 出图时,分辨率、比例偶尔无法精准命中,属该模型已知特性
- 如需稳定精准的高清出图,建议选择「GPT Image 2 官转」(价格更高,分辨率更有保障)
资源文件
| 文件 | 用途 |
|---|---|
scripts/generate.py |
创建任务 + 自动轮询直到完成的主脚本 |
scripts/set_key.py |
API Key 持久化配置工具 |
references/api_reference.md |
完整 API 参考文档(端点、参数、响应、错误码) |