Install
openclaw skills install deepsop-genvis-aiAI 图片与视频异步生成技能,调用 AI Artist API 根据文本提示词生成图片或视频,自动轮询直到任务完成。 ⚠️ 使用前必须设置环境变量 AI_ARTIST_TOKEN 为你自己的 API Key! 需要 API Key 授权:已有账号请前往 https://ai.deepsop.com/login?source=2 登录获取;没有账号请前往 https://ai.deepsop.com/register?source=2 注册后获取。 支持图片模型:**3.1Nano2-Evo(默认)**、S5.0L、N2、W2.7、W2.7Pro、Nano2-Beta-Evo、**Image2(GPTimage-2)**。 支持视频模型:**V3.1FB(默认)**、S1.5Pro、V3.1PB、V3.1Fast、W2.6t / W2.6i / W2.6r、klingV3Omni、W2.7t / W2.7i / W2.7r、**S2.0 / S2.0Fast**(Seedance2.0 系列,支持多音频参考与联网搜索)、**HappyHorse**(高效短视频,支持文生/首帧/参考图/视频编辑模式)。 查看当前服务端激活的模型请运行:`python3 scripts/generate_image.py --list-models`。 触发场景: - 用户要求生成图片,如"生成一匹狼"、"画一只猫"、"风景画"、"帮我画"等。 - 用户要求生成视频,如"生成视频"、"文生视频"、"图生视频"、"生成一段...的视频"等。 - 用户指定模型:N2、S5.0L、W2.7、W2.7Pro、3.1Nano2-Evo、Nano2-Beta-Evo、Image2、GPTimage-2、gpt-image-2、S1.5Pro、V3.1FB、V3.1PB、V3.1Fast、W2.6t、W2.6i、W2.6r、klingV3Omni、W2.7t、W2.7i、W2.7r、S2.0、S2.0Fast、Seedance2.0、HappyHorse。 - 用户上传参考图/参考视频时,自动先调用文件上传 API 转换为可访问 URL。
openclaw skills install deepsop-genvis-ai异步生成 AI 图片与视频的技能。
本技能需要 API Key 授权才能调用 AI Artist API:
登录后在复制您的 API Key(sk- 开头)。
在使用前,你必须先设置自己的 API Key:
# Linux/macOS/Git Bash (Windows)
export AI_ARTIST_TOKEN="sk-your_api_key_here"
# Windows PowerShell
$env:AI_ARTIST_TOKEN="sk-your_api_key_here"
或在项目根目录放一个 .env 文件(需 pip install python-dotenv,脚本会自动加载):
AI_ARTIST_TOKEN=sk-your_api_key_here
FEISHU_WEBHOOK_URL= # 可选,用于结果通知
验证配置是否正确:
python3 scripts/test_config.py
详细配置说明请查看下方"环境配置"章节。
python3 scripts/generate_image.py "提示词"
调用前必须做的事:当用户的请求涉及参数复杂的模型,或关键信息缺失时,先向用户提问确认意图,再执行生成,避免浪费配额生成不符合预期的作品。
所有视频模型通用:
klingV3Omni(最复杂):5 种生成类型 + 多镜头模式,务必确认:
std 标准 / pro 专家级?keep_original_sound yes/no)W2.6r / W2.7r(参考视频模式):
W2.7i(图生视频,支持续写):
first_clip_url)W2.6t / W2.7t(文生视频):
shot_type="multi"(智能分镜)prompt_extend=True,默认 false)?V3.1Fast(V3.1 系列的复杂款):
enhance_prompt)?personGeneration=allow_adult/dont_allow)?resize_mode=pad/crop)?V3.1FB / V3.1PB:时长固定 8 秒,不必问;但要确认比例 / 分辨率。
S1.5Pro(影视级):
图片复杂款 W2.7 / W2.7Pro / N2 / 3.1Nano2-Evo:
Image2(GPTimage-2,OpenAI gpt-image-2 接入):
low(最快)/ medium(平衡,默认)/ high(质量)——用 --ratiocination--nauto(智能比例),可改为 1:1 / 3:4 / 4:3 / 16:9 / 9:16 等(禁用 1:4 / 4:1 / 1:8 / 8:1)webSearch、不接受 imageSearch;仅 3.1Nano2-Evo 支持 imageSearchklingV3Omni 做参考图生视频,比例 16:9、时长 10s、生成声音。你有几张想作为参考的图片吗?要不要保留原音?"3.1Nano2-Evo 图片模型。当用户提供本地文件作为参考图或参考视频时,需要先调用文件上传 API 转换为可访问的 URL:
curl --location --request POST 'https://ai.deepsop.com/prod-api/system/fileUpload/upload' \
--header 'x-api-key: sk-your_api_key_here' \
--form 'file=@"C:\\Users\\admin\\Downloads\\image.png"'
返回结果:
{
"msg": "操作成功",
"fileName": "image.png",
"code": 200,
"url": "https://kocgo-ai-sales-test.oss-cn-hangzhou.aliyuncs.com/material/100/xxx.png"
}
获取到 url 后,可作为 firstImageUrl、lastImageUrl 或其他图片参数传入生成接口。
生成图片后,直接在回复中使用 Markdown 语法:

平台支持情况:
使用 --download 参数下载图片,然后通过 message 工具发送:
python3 scripts/generate_image.py "风景画" --download
然后在代码中读取图片并发送:
from scripts.generate_image import generate_image
import base64
result = generate_image(prompt="风景画", download=True)
if result and result["status"] == "SUCCESS":
# 方式 A: 使用 data URI
image_uri = result["data_uri"] # data:image/png;base64,...
# 方式 B: 读取本地文件
with open(result["local_path"], "rb") as f:
image_data = f.read()
base64_data = base64.b64encode(image_data).decode()
| 参数 | 默认值 | 说明 |
|---|---|---|
prompt | 必填 | 生成提示词(图片或视频描述) |
--model | 自动推断 | 生成模型。支持双入口:友好别名(如 HappyHorse)或 methodType 字符串(如 19)。未指定时根据 prompt 关键词自动推断:包含 视频/动画/短片/动起来/镜头/clip/motion/video 等 → V3.1FB;其余 → 3.1Nano2-Evo。图片:3.1Nano2-Evo、S5.0L、N2、W2.7、W2.7Pro、Nano2-Beta-Evo、Image2;视频:V3.1FB、S1.5Pro、V3.1PB、V3.1Fast、W2.6t/i/r、klingV3Omni、W2.7t/i/r、S2.0、S2.0Fast、HappyHorse |
--list-models | - | 列出当前服务端激活的模型(hiddenState=0)后退出,不需 prompt |
--dry-run | - | 仅构建并打印最终 payload,不提交任务(调试用) |
--json-output | - | 以单行 JSON 向 stdout 输出最终结果 {status,url,message,local_path?},便于 openclaw 等编排器解析 |
--interval | 5 | 轮询间隔(秒) |
--max-wait | 图片 600 / 视频 1200 | 任务轮询最长等待秒数 |
URL,失败时留空--json-output:始终输出一行 JSON,形如 {"status":"SUCCESS","url":"https://...","message":"..."}--markdown-output:成功时输出 [auto]、[upload]、预估费用、任务 ID、轮询状态变化、⚠️ 警告、错误说明)0 = 成功,1 = 失败/超时脚本会始终轮询到终态(SUCCESS / FAILED / TIMEOUT)才退出,无需调用方自己再查询结果。
| 参数 | 默认值 | 说明 |
|---|---|---|
--quality | 2K | 图片质量 (2K/4K) |
--size | 模型默认值 | 图片尺寸。S5.0L / W2.7 / W2.7Pro: 2048x2048,N2 / 3.1Nano2-Evo / Nano2-Beta-Evo: 1:1 |
--download | - | 下载图片到本地 |
--output-dir | workspace/images | 图片保存目录 |
--markdown-output | - | 以 Markdown 格式输出图片链接 |
--reference-image | - | 参考图本地路径,自动上传后作为 image-to-image 参考 |
--reference-image-url | - | 已上传的参考图 URL(跳过上传流程) |
--web-search / --no-web-search | - | 启用/关闭联网搜索(仅 S5.0L、3.1Nano2-Evo) |
--image-search / --no-image-search | - | 启用/关闭图像搜索(仅 3.1Nano2-Evo) |
--ratiocination | medium | 渲染质量预设(仅 Image2):low / medium / high |
--n | 1 | 生成数量(图片 Image2 1–10;视频 V3.1Fast 1–4) |
| 参数 | 默认值 | 说明 |
|---|---|---|
--ratio | 16:9 | 画面比例,如 16:9、9:16、1:1 |
--resolution | 720p | 视频分辨率,如 720p、1080p |
--duration | 10 | 视频时长(秒) |
--first-image-url | - | 首帧参考图 URL |
--last-image-url | - | 尾帧参考图 URL |
--first-image | - | 首帧参考图本地路径,自动上传后转换为 URL |
--last-image | - | 尾帧参考图本地路径,自动上传后转换为 URL |
--generate-audio | - | 开启音频生成(按模型能力生效) |
--no-audio | - | 关闭音频生成(按模型能力生效) |
脚本以 服务端 consumeSource/list 接口 为模型存在性 / hiddenState / 命名的唯一真相源,本地仅维护与前端一致的硬编码约束(比例 / 分辨率 / 时长 / 生成类型 / 字段可见性等),无法从接口推导。
consumeSource/list,若该模型 hiddenState=1 或不存在则直接拒绝--list-models:从接口拉取激活模型并附带「漂移检测」(drift),若服务端激活了脚本未注册的模型 / 本地模型已下线,会以 [drift] ... 形式打印到 stderr--model HappyHorse 与 --model 19 等价,前者是友好别名,后者是 sourceValue/methodType;脚本通过 _resolve_model_key 自动归一化| 模型 | sourceName | methodType | 默认尺寸 | 特点 |
|---|---|---|---|---|
S5.0L | DeepSop·S5.0L | 4 | 2048x2048 | 默认模型,质量 2K/3K,支持联网,像素尺寸 WxH |
N2 | DeepSop·Nano1 Pro | 2 | 1:1 | 多模态输入,精细参数调节,卓越文字渲染与角色一致性(比例格式;服务端已重命名为 Nano1 Pro) |
W2.7 | DeepSop.W2.7 | 6 | 2048*2048 | 文生图/图生图多模态输入,质量 1K/2K,size 用 * 分隔 |
W2.7Pro | DeepSop.W2.7Pro | 7 | 2048*2048 | 精准控图与风格迁移,质量 1K/2K,size 用 * 分隔 |
3.1Nano2-Evo | DeepSop·Nano2 | 8 | 1:1 | N2 Evo 版(服务端称 Nano2),支持 imageSearch 与 webSearch |
Nano2-Beta-Evo | DeepSop·Nano2 Beta-Evo | 9 | 1:1 | N2 Beta Evo 版,多模态输入、文字渲染与角色一致性 |
Image2 | DeepSop·Image2 | 10 | auto | GPTimage-2 接入;支持 ratiocination(low/medium/high)、n(1–10);提示词 16000 字;参考图 ≤50MB×16 张;禁用 1:4/4:1/1:8/8:1 |
| 模型 | sourceName | methodType | 默认比例 | 默认分辨率 | 默认时长 | 特点 |
|---|---|---|---|---|---|---|
S1.5Pro | DeepSop·S1.5Pro | 2 | 16:9 | 720p | 10s | 影视级连贯叙事,音画同步与精准口型对齐 |
V3.1FB | DeepSop·V3.1FB | 3 | 16:9 | 1080p | 8s | 快速生成,时长固定 8 秒 |
V3.1PB | DeepSop·V3.1PB | 4 | adaptive | 720p | 8s | V3.1Pro 多图参考,时长固定 8 秒 |
V3.1Fast | DeepSop·V3.1Fast | 5 | 16:9 | 720p | 8s | 快速生成,音画同步,时长 4s/8s |
W2.6t | DeepSop·W2.6t | 7 | 16:9 | 720p | 10s | 文生视频,3-15s,size 用 * 像素,15s 1080P |
W2.6i | DeepSop·W2.6i | 8 | 16:9 | 720p | 10s | 图生视频,3-15s,size 用 ratio,无尾帧支持 |
W2.6r | DeepSop·W2.6r | 9 | 16:9 | 720p | 10s | 参考视频,3-10s,size 用 * 像素 |
klingV3Omni | DeepSop.klingV3Omni | 10 | 16:9 | 720p | 10s | 多模态融合,3-15s,按张计费,支持分镜 |
W2.7i | DeepSop·W2.7i | 14 | 16:9 | 720p | 10s | 图生视频,首尾帧平滑过渡,动作延展与视频续写 |
W2.7t | DeepSop.W2.7t | 15 | 16:9 | 720p | 10s | 文生视频,智能多镜头剪辑,自动配音,2K 高清 |
W2.7r | DeepSop.W2.7r | 16 | 16:9 | 720p | 10s | 参考视频生成,保留角色音色,多模态融合编辑 |
S2.0 | DeepSop·S2.0 | 17 | 16:9 | 720p | 10s | Seedance2.0,4-15s,支持多音频参考(audioUrlList)+ 联网搜索(webSearch),分辨率 480p/720p/1080p |
S2.0Fast | DeepSop·S2.0Fast | 18 | 16:9 | 720p | 10s | Seedance2.0 Fast 快速版,4-15s,多音频参考 + 联网搜索,最高 720p |
HappyHorse | DeepSop.HappyHorse | 19 | 16:9 | 720p | 10s | 高效短视频,3-15s,支持 TEXT/FIRST&LAST/REFERENCE/EDIT,独有 audioSetting(auto/origin),EDIT 模式需 firstClipUrl |
V3.1 系列时长(来自前端 matchVideoDurationInfo):
V3.1FB / V3.1PB:时长固定为 8 秒V3.1Fast:4 秒 或 8 秒WAN2.6 / WAN2.7 / klingV3Omni 系列:
*t:纯文生视频 · *i:首帧图生视频 · *r:参考图/视频生成W2.6r 为 3-10s;其余(包含 klingV3Omni)为 3-15ssize 序列化规则:仅 W2.6t / W2.6r 使用 宽*高 像素格式;W2.6i / W2.7t/i/r / klingV3Omni 的 size 为比例字符串(如 16:9)klingV3Omni 无分辨率选项)W2.6t / W2.6r / W2.7t / W2.7r 支持 1:1 / 3:4 / 4:3 / 16:9 / 9:16;W2.6i / W2.7i 不可选比例(由首帧决定);klingV3Omni 仅 1:1 / 16:9 / 9:16W2.6i / Sora2 系列不支持尾帧图片(仅 W2.7i 支持)W2.6t / W2.6i / W2.7* 支持传入自定义音频(audioUrl)Seedance2.0 系列(S2.0 / S2.0Fast):
TEXT / FIRST&LAST / REFERENCEdurationSwitch=2)adaptive / 1:1 / 3:4 / 4:3 / 16:9 / 9:16 / 21:9,size 直接提交比例字符串S2.0 支持 480p / 720p / 1080p;S2.0Fast 仅 480p / 720paudioUrlList:多音频参考(至多 3 个,时长 2-15s,总时长 ≤ 15s)videoUrlList:参考视频(至多 3 个,时长 2-15s,总时长 ≤ 15s)webSearch:是否启用联网搜索generateAudio:是否生成音频(默认开启)audioUrlList 时,必须至少提供一张参考图或一个参考视频HappyHorse(HappyHorse,methodType=19):
TEXT / FIRST&LAST / REFERENCE / EDIT1:1 / 3:4 / 4:3 / 5:4 / 4:5 / 16:9 / 9:16 / 21:9 / 9:21(EDIT 模式无 ratio)720p / 1080plastImageUrl)、negativePrompt、generateAudio、enhancePrompt、promptExtend、shotType、webSearchfirstClipUrl:编辑视频 URL(EDIT 模式必填)audioSetting:声音控制,auto(由模型控制,默认)/ origin(保留视频原声),仅 EDIT 模式可见imageUrlList 至多 5 张参考图firstClipUrl# 查看当前服务端激活的模型
python3 scripts/generate_image.py --list-models
# 基础用法 - 默认图片模型 3.1Nano2-Evo
python3 scripts/generate_image.py "一匹狼"
# 使用 N2 模型(比例尺寸)
python3 scripts/generate_image.py "生成一只狗" --model N2 --size "16:9"
# W2.7 图片模型
python3 scripts/generate_image.py "复古海报" --model W2.7 --quality "4K"
# W2.7Pro 精准控图
python3 scripts/generate_image.py "角色三视图" --model W2.7Pro
# 3.1Nano2-Evo / Nano2-Beta-Evo(N2 进化版)
python3 scripts/generate_image.py "赛博朋克街景" --model 3.1Nano2-Evo --size "16:9"
python3 scripts/generate_image.py "少女肖像" --model Nano2-Beta-Evo --size "3:4"
# Image2(GPTimage-2)—— 默认 auto 比例,medium 渲染质量
python3 scripts/generate_image.py "一只可爱的柯基犬坐在草地上" --model Image2
# Image2 出 4 张高质量图片
python3 scripts/generate_image.py "产品宣传图 4 种风格" --model Image2 --n 4 --ratiocination high --size "1:1"
# 3.1Nano2-Evo 启用图像搜索 + 联网搜索
python3 scripts/generate_image.py "帮我画一种雨季仅出现三天的菌菇" --model 3.1Nano2-Evo --image-search --web-search
# 下载图片
python3 scripts/generate_image.py "风景画" --download
# 高质量生成(S5.0L)
python3 scripts/generate_image.py "风景画" --quality "4K" --size "4096x4096"
# 直接输出 Markdown 图片链接
python3 scripts/generate_image.py "一只可爱的猫" --markdown-output
# 使用参考图生成(自动上传本地图片并转换为 URL)
python3 scripts/generate_image.py "基于这张图生成变体" --reference-image "./reference.png"
# 生成视频 - 默认 V3.1FB(快速、固定 8 秒)
python3 scripts/generate_image.py "现代轻奢吊灯" --model V3.1FB
# 生成视频 - S1.5Pro(默认 16:9 / 720p / 10s)
python3 scripts/generate_image.py "小骏马祝福大家新年快乐" --model S1.5Pro
# 生成视频 - 指定比例和分辨率
python3 scripts/generate_image.py "海边日落风景" --model S1.5Pro --ratio "9:16" --resolution "1080p"
# V3.1FB - 快速基础(8 秒)
python3 scripts/generate_image.py "现代轻奢吊灯" --model V3.1FB --ratio "16:9" --resolution "1080p" --duration 8
# V3.1PB - 自适应比例(8 秒)
python3 scripts/generate_image.py "水晶灯特写" --model V3.1PB --ratio "adaptive" --resolution "720p" --duration 8
# V3.1Fast - 首帧图生视频(4 秒)
python3 scripts/generate_image.py "灯具展示" --model V3.1Fast --first-image "./lamp.jpg" --duration 4
# klingV3Omni - 多模态融合(按张计费)
python3 scripts/generate_image.py "多模态融合镜头" --model klingV3Omni --ratio "16:9" --duration 8
# W2.6t / W2.7t - 文生视频(10 秒)
python3 scripts/generate_image.py "现代轻奢吊灯宣传" --model W2.6t --ratio "16:9" --resolution "1080p" --duration 10
python3 scripts/generate_image.py "品牌短片自动配音 2K" --model W2.7t --ratio "16:9" --resolution "1080p" --duration 10
# W2.6i / W2.7i - 首帧图生视频(8 秒)
python3 scripts/generate_image.py "水晶灯展示" --model W2.6i --first-image "./lamp.jpg" --ratio "9:16" --resolution "720p" --duration 8
python3 scripts/generate_image.py "角色动作延展" --model W2.7i --first-image "./char.jpg" --last-image "./char_end.jpg" --duration 8
# S2.0 / S2.0Fast - Seedance2.0 文生视频
python3 scripts/generate_image.py "海浪拍打礁石" --model S2.0 --ratio "16:9" --resolution "1080p" --duration 10
python3 scripts/generate_image.py "城市夜景延时" --model S2.0Fast --ratio "9:16" --resolution "720p" --duration 6 --web-search
# S2.0 多音频参考(自动上传本地音频)
python3 scripts/generate_image.py "猫咪互动" --model S2.0 --first-image "./cat.jpg" --audio-path-list "./bg.mp3,./voice.wav"
# HappyHorse - 文生短视频(社交/广告场景)
python3 scripts/generate_image.py "咖啡店开业宣传短片" --model HappyHorse --ratio "9:16" --resolution "1080p" --duration 8
# HappyHorse - 首帧图生视频
python3 scripts/generate_image.py "产品旋转展示" --model HappyHorse --first-image "./product.jpg" --generation-type "FIRST&LAST"
# HappyHorse - 视频编辑模式(保留原声)
python3 scripts/generate_image.py "把背景换成海边" --model HappyHorse --generation-type EDIT --first-clip-url "https://.../source.mp4" --audio-setting origin
# W2.6r / W2.7r - 参考视频生成(CLI 需传已上传 URL,或使用程序化调用)
python3 scripts/generate_image.py "参考素材风格生成" --model W2.6r --ratio "16:9" --resolution "720p" --duration 10
python3 scripts/generate_image.py "保留角色音色迁移场景" --model W2.7r --ratio "16:9" --resolution "720p" --duration 10
from scripts.generate_image import generate_image, generate_video
# 图片 - 默认 3.1Nano2-Evo
result = generate_image(prompt="一只可爱的猫咪")
# 查询当前激活模型(预览用)
from scripts.generate_image import list_active_models
print(list_active_models())
# 图片 - N2(比例尺寸)
result = generate_image(prompt="生成一只狗", model="N2", size="16:9")
# 图片 - W2.7Pro 精准控图
result = generate_image(prompt="角色三视图", model="W2.7Pro", quality="4K")
# 图片 - 下载到本地
result = generate_image(prompt="风景画", model="S5.0L", download=True, output_dir="./images")
# V3.1FB - 文生视频
result = generate_video(
prompt="现代轻奢吊灯",
model="V3.1FB",
ratio="16:9",
resolution="1080p",
duration=8
)
# V3.1Fast - 首帧图生视频
result = generate_video(
prompt="灯具展示",
model="V3.1Fast",
first_image_url="https://example.com/lamp.jpg",
ratio="9:16",
resolution="1080p",
duration=8
)
# V3.1PB - 首尾帧控制
result = generate_video(
prompt="灯具变形动画",
model="V3.1PB",
first_image_url="https://example.com/start.jpg",
last_image_url="https://example.com/end.jpg",
ratio="16:9",
resolution="1080p",
duration=8
)
# W2.7r - 参考视频生成(多模态融合)
result = generate_video(
prompt="保留角色音色迁移到新场景",
model="W2.7r",
image_url_list=["https://example.com/ref1.jpg", "https://example.com/ref2.jpg"],
video_url_list=["https://example.com/ref.mp4"],
ratio="16:9",
resolution="720p",
duration=10
)
# S2.0 - Seedance2.0 多模态融合(图像 + 多音频参考 + 联网搜索)
result = generate_video(
prompt="海浪拍打礁石,海鸥飞过",
model="S2.0",
first_image_url="https://example.com/sea.jpg",
audio_url_list=[
"https://example.com/wave.mp3",
"https://example.com/seagull.mp3",
],
web_search=True,
ratio="16:9",
resolution="1080p",
duration=10,
)
# klingV3Omni - 多模态融合(按张计费)
result = generate_video(
prompt="镜头一致性多图融合",
model="klingV3Omni",
image_url_list=["https://example.com/scene1.jpg", "https://example.com/scene2.jpg"],
ratio="16:9",
duration=8
)
if result and result["status"] == "SUCCESS":
print(f"链接: {result['url']}")
# 视频 - 默认 V3.1FB
result = generate_video(prompt="小骏马祝福大家新年快乐")
# 视频 - 指定比例、分辨率、时长
result = generate_video(
prompt="海边日落风景",
model="S1.5Pro",
ratio="9:16",
resolution="1080p",
duration=5
)
if result and result["status"] == "SUCCESS":
print(f"视频链接: {result['url']}")
| 字段 | 说明 |
|---|---|
status | SUCCESS / FAILED / TIMEOUT |
url | 图片URL |
message | 状态描述 |
local_path | 本地保存路径(需 --download) |
data_uri | Base64 Data URI(需 --download) |
image_data | 原始图片字节(需 --download) |
重要:使用前必须设置你自己的 API Key!
本技能需要 API Key 授权:
sk-xxxxxx...)复制 .env.example 为 .env:
cp .env.example .env
编辑 .env 文件,填入你的 API Key:
AI_ARTIST_TOKEN=sk-your_api_key_here
在运行脚本前加载环境变量:
# Linux/macOS/Git Bash
source .env
# 或使用 export
export $(cat .env | xargs)
export AI_ARTIST_TOKEN="sk-your_api_key_here"
为了永久生效,将上述命令添加到 ~/.bashrc 或 ~/.zshrc 文件中。
$env:AI_ARTIST_TOKEN="sk-your_api_key_here"
永久设置(系统级):
[System.Environment]::SetEnvironmentVariable('AI_ARTIST_TOKEN', 'sk-your_api_key_here', 'User')
set AI_ARTIST_TOKEN=sk-your_api_key_here
运行以下命令验证 API Key 是否设置成功:
# Linux/macOS/Git Bash
echo $AI_ARTIST_TOKEN
# Windows PowerShell
echo $env:AI_ARTIST_TOKEN
# Windows CMD
echo %AI_ARTIST_TOKEN%
如果输出为空或显示默认值,说明环境变量未正确设置。
运行配置测试脚本,验证 API Key 是否正确设置:
python3 scripts/test_config.py
该脚本会检查:
export FEISHU_WEBHOOK_URL="https://open.feishu.cn/open-apis/bot/v2/hook/xxx"
scripts/generate_image.py - 主脚本references/api.md - API 详细文档