共绩科技
共绩科技

预制服务

用 Agent Skills 跑 MiniMax H3:一句话生成视频,跑完自动关机

适用镜像:h3vsr-merge:0.1.4-5090(预制镜像:MiniMax H3 生成 8188 + RTX VSR 超分 8001)
适用人群:想在共绩算力上批量生成视频的开发者、内容创作者、工作室
预期效果:一句自然语言 → Agent 自动租卡、生成、超分、下载、关机。768p / 5 秒成片约 ¥0.08,2K 约 ¥0.09


MiniMax H3 是当前开源生态里少有的「音画一体」视频模型:写画面、写镜头、写台词、写 BGM,一条提示词直接生成带完整音轨的视频。配合共绩的 h3vsr-merge 预制镜像,单张 5090 就能跑通「768p 生成 → 2K 超分」全链路。

但跑过的人都知道,从「模型能跑」到「稳定量产」之间还隔着不少活:租卡、轮询、下载、重试、防缓存、显存调度、用完关机……每一步都要人盯着。

suanli-h3-video 这个开源 Agent Skill 把这些全部封装掉了。它遵循 共绩 Agent Skills 规范,装进 Cursor、Claude Code 等任意支持 Skills 约定的 AI 助手后,你对它说一句话,剩下的全自动。

这篇文章分两部分:第一部分给人看——它能做什么、效果如何、怎么开始;第二部分给 Agent 看——装好之后 AI 是按什么流程干活的(也可以当作你自己写集成代码的参考)。


第一部分:给人看

它能做什么

模式你给什么产出实测耗时
文生视频 T2V一句话描述画面 + 声音带音频成片~85s / 条(768p/5s 热态)
图生视频 I2V一张首帧图以图为起点驱动运镜与动态~112s / 条
参考生视频 R2V最多 9 张角色/产品图锁定形象生成新场景~122s / 条
2K 超分已生成的 768p 视频2688×1536,音轨原样保留~10s / 条

批量是内建能力:多提示词清单、同提示词多 seed 挑优、断点续跑、失败自动分类——这些在第二部分展开。

成本账

产物耗时成本
768p / 5s~85s 热态~¥0.08
768p / 10s~243s~¥0.22
768p / 5s + 2K 超分+10s~¥0.09
冷启动(每次开实例)1~3 分钟~¥0.10

实例按秒计费,Skill 在全部任务完成后会自动暂停实例停止扣费——这是它和「手动跑」最大的区别:你不需要记得关机,也不为闲置付费。

典型场景与开场白

场景示例:直接对 Agent 说
灵感速验「生成一条 5 秒视频:日出时热气球升起的卡帕多奇亚。Audio: 晨风与鸟鸣」
素材批量「这个提示词出 6 条,768p,我挑一条发抖音」
多平台矩阵「按这 10 条文案各出一条竖屏视频,全部超分 2K」
角色 / IP 内容「用这张角色设定图生成雨中撑伞漫步的竖屏视频」
动态封面「让这张海报动起来:镜头缓慢推近,粒子飘散」
电商展示「用产品白底图生成 360° 旋转展示视频,超分 2K」
工作室量产「按清单跑 50 条,中断了记得续跑,跑完给我 manifest」

三步开始

① 安装 Skill

npx skills add shaozheng0503/suanli-h3-video --skill suanli-h3-video

② 配置密钥

cp suanli-h3-video/skill/.env.example suanli-h3-video/skill/.env
# 填入 SUANLI_TOKEN:console.suanli.cn → 右上角头像 → API 密钥(推荐简易模式)

③ 对 Agent 说一句话

用 suanli-h3-video 生成一条 768p 5 秒视频:雨夜霓虹街头,一只机械狗叼着
玫瑰花穿过斑马线,缓慢跟拍,赛博朋克。Audio: 雨声与低沉合成器

约 90 秒(含冷启动)后,带音轨的成片落在本地的 jobs 目录里。

写提示词的关键:H3 是音画一体模型,画面和声音一起写——镜头怎么动、场景是什么、Audio: 后面接环境音和对白。只写画面不写声音,生成的视频可能静音。

常见问题

Q:必须先手动开好一台实例吗?
A:不用。Agent 会先查库存、自动创建部署任务、等 ComfyUI 就绪后才开始生成。你也可以用自己在跑的实例——把 8188 端口域名告诉它即可。

Q:批量跑一半中断了?
A:重新执行同样的命令即可,已完成的任务自动跳过(断点续跑)。

Q:1080p 可以吗?
A:32G 的 5090 跑 1080p 长片会显存溢出。推荐 768p 生成 + VSR 超分到 2K,效果更好且更稳。

Q:和官方按条计费的 API 比呢?
A:官方 2K 约 ¥0.13/秒;本方案 5 秒 2K 约 ¥0.09,约为官方的 1/7——代价是出片要等约 95 秒。


第二部分:给 Agent 看(与集成参考)

以下内容 Skill 安装后会被 Agent 自动读取(SKILL.md 与 api/ 目录)。如果你不用 Skills 规范、想直接写代码集成,这部分就是完整的接口参考。

镜像与服务端口

项值
镜像harbor.suanleme.cn/public-hub/h3vsr-merge:0.1.4-5090
8188ComfyUI(H3 生成,工作流级 API)
8001RTX VSR 超分(FastAPI,简单 REST)
推荐机型5090,宿主内存 ≥128GB(58GB 廉价档跑批量会 OOMKilled)

生成链路(8188)

POST /prompt        提交工作流 JSON → {"prompt_id", "node_errors"}
GET  /history/{id}  轮询 → status_str: success | error
GET  /view?filename=...  下载 mp4
POST /upload/image  上传首帧/参考图(multipart,超时 ≥600s)

工作流要点(turbo 4 步链,RandomNoise → BasicGuider → KSamplerSelect → BasicScheduler → SamplerCustomAdvanced):

模式unetLoRA核心节点
T2V / I2Vminimax_h3_fl2va_pruned_int8_convrotminimax_h3_fl2v_turbo_4step_v1.0_768pMiniMaxH3ImageToVideo
R2Vminimax_h3_ref2va_pruned_int8_convrotminimax_h3_ref2v_turbo_4step_v0.1_768pMiniMaxH3ReferenceToVideo(必填 audio_vae、ref_images 列表、ref_image_size)

硬约束(违反不报错但结果异常):

  • width/height 必须是 32 的倍数:768p = 1344×768(推荐)、1080p 长片会 OOM
  • length 必须满足 (length-5) % 17 == 0 且 124 ≤ length ≤ 362:5s=124 / 10s=243 / 15s=362;非法值静默取整
  • BasicScheduler 必须带 denoise: 1.0(缺了报 400)
  • 批量每条必须随机 seed——相同参数会命中 ComfyUI 执行缓存,2~3 秒返回旧结果
  • MiniMaxH3SigmaShift(12.0, 3.0) 与 CFG=1.0 勿动(turbo LoRA 按 4 步训练,加步数不提升画质)

超分链路(8001)

GET  /healthz                          探活
POST /api/v1/upscale/file              multipart:file + scale + quality + vcodec + bitrate
GET  /api/v1/tasks/{id}                轮询 → queued/running/done/error
GET  /api/v1/tasks/{id}/result         下载 mp4 二进制流
  • quality 推荐 HIGH(AI 生成源);vcodec 在共绩平台必须 libx264(节点 NVENC 不可用)
  • quality 非法值异步暴露:提交返回 200,轮询时才见 error
  • 生成与超分严禁同卡并行(27.8G + 10.5G > 32G)——先生成完一批,再统一超分

实例生命周期(Open API)

GET  https://openapi.suanli.cn/api/deployment/resource/search   查库存(核 memory ≥128GB)
POST /api/deployment/task/create     创建(镜像 + 8188/8001 端口 + 资源 mark)
GET  /system_stats(8188)           探活(ComfyUI 无 /health;冷启动 1~3 分钟需重试)
POST /api/deployment/task/pause      暂停(停止计费)
POST /api/deployment/task/recover    恢复

Header:token + timestamp(毫秒)+ version: 1.0.0。计费:1 元 = 1,000,000 点。

批量执行器(开箱即用)

scripts/h3_batch.py 纯标准库实现,封装了上述全部链路:

# 单条 / 批量(随机 seed 防缓存)
python3 scripts/h3_batch.py submit --comfy $COMFY --prompt "..." --resolution 768p --duration 5
python3 scripts/h3_batch.py submit --comfy $COMFY --prompt-file tasks.txt --count 8

# 断点续跑(done 任务自动跳过)
python3 scripts/h3_batch.py submit --comfy $COMFY --job jobs/<ts>/ ...

# 失败重试(timeout/网络错误可重试;参数错误属 fatal)
python3 scripts/h3_batch.py retry --comfy $COMFY --job jobs/<ts>/ --only task003

# 批量 2K 超分(先生成完一批再执行)
python3 scripts/h3_batch.py upscale --vsr $VSR --job jobs/<ts>/ --scale 2.0 --quality HIGH

# 收尾:manifest + 自动暂停实例
python3 scripts/h3_batch.py done --job jobs/<ts>/ --task-id 3571477

状态账本在 jobs/<ts>/job.json(含每条的 prompt/seed/mode/resolution/duration/产物路径),中断续跑与事后审计都靠它。

稳定性设计(实测教训沉淀)

  1. 任务间隔 8s:单卡长队列会累积宿主内存导致 OOMKilled(Exit 137),实测换来的节奏
  2. 滑动窗口:批量内部同时在途 2 条,126GB 实例实测安全,比纯串行快 6%
  3. 原子下载:.part 临时文件 + 原子改名,半截文件不会混入交付
  4. 错误分类:retryable(超时/网络)与 fatal(参数错误)分开,retry 只重试前者
  5. i2v/r2v 限制:实例重启会清空已上传图片,这类失败任务需带图重新 submit --job

完整测试与基准数据见 GitHub 仓库(28 项回归测试 + 真机性能表)。


相关链接:GitHub 仓库 · Agent Skills 规范 · h3vsr-merge 镜像文档 · MiniMax H3