---
name: dlazy-course-avatar
version: 1.0.0
description: Knowledge-course / online-teaching avatar lecturer — 16 landscape base-portrait recipes plus the slide-first pipeline that keeps a 20-minute lesson under 3000 credits. Use when the user wants a digital human to teach a paid course, a training module or a knowledge-sharing video on platforms like Xiaoetong, Tencent Classroom, Bilibili, YouTube or an internal LMS.
metadata: {"clawdbot":{"emoji":"🎓","requires":{"bins":["npm","npx"],"env.optional":["DLAZY_API_KEY"]},"install":"npm install -g @dlazy/cli@1.2.3","installAlternative":"npx @dlazy/cli@1.2.3","homepage":"https://dlazy.com","configLocation":"~/.dlazy/config.json","apiEndpoints":["api.dlazy.com","files.dlazy.com"]},"openclaw":{"systemPrompt":"When invoking this skill, read the 露脸预算 section of SKILL.md before quoting any cost, and read recipes.md before writing any base-portrait prompt. Run `dlazy <model> -h` to confirm current flags before building a command."}}
---

# 知识付费讲师数字人

课程视频跟带货视频最大的不同：**观众来看的不是你的脸，是你屏幕上的东西。**

这句话不是审美判断，是成本判断。`jimeng-omnihuman-1.5` 按音频秒数计费，1080p 是 **23 积分/秒**。一节 20 分钟的课全程用数字人驱动：

```
1200 秒 × 23 = 27600 积分（驱动）
```

而同样一节课，讲师只在开场、章节转场、结尾露脸（约 110 秒），其余画面是课件 + 配音：

```
110 秒 × 23 = 2530 积分（驱动）  ——  省掉 90.8%
```

算上配音，两条路线的**全成本**是 2640 对 27840，详见下面的"露脸预算"。

**省下的 25000 积分不是靠妥协换来的，成片反而更像一门正经的课。** 全程一张脸对着你讲 20 分钟，是知识付费里完播率最差的形态之一。

所以这个技能的核心不是"怎么把数字人做得更真"，而是**怎么把数字人用在该用的 110 秒上**，剩下的交给课件。底图配方解决前者，露脸预算解决后者。

## 何时使用

- 做小鹅通 / 腾讯课堂 / 知识星球 / B 站 / YouTube 的付费课或公开课
- 企业内训、SOP 培训、新员工入职课程
- 一门课几十节，需要**同一个讲师形象跨集稳定复用**
- 已有 PPT / 讲义 / 文档，想变成有讲师出镜的课程视频
- 真人讲师没时间录制，或需要多语言版本

不适用于：单条知识口播短视频（用 `dlazy-short-video`，竖屏逻辑不同）、纯课件无讲师的文档转视频（直接 `dlazy chat --skill file-to-video`）、数学公式推导动画（那是 `math-explainer-video` 模板的活）。

## 与带货版的根本差异

如果你用过 `dlazy-ecommerce-avatar`，这五处是**不能照搬**的：

| | 带货 | 课程 |
|---|---|---|
| 画幅 | 竖屏 9:16 | **横屏 16:9** |
| 构图 | 人物居中 | **人物偏侧，留出内容区** |
| 露脸 | 全程 | **只在开场/转场/结尾** |
| 单集时长 | 30~60 秒 | **8~40 分钟**（要切几十段） |
| 合规红线 | 广告法第九条（绝对化、疗效） | **广告法第二十四条**（升学承诺、通过率、资质） |

尺寸参数尤其容易串。带货是 `--size 2160x3840`，课程是 `--size 3840x2160`——写反了不报错，出一张竖图，然后你会在装配那一步才发现。

## 五条硬约束

**1. 横屏直接上 4K，不额外花钱。**

`gpt-image-2` 的计费**只看 `--quality` 和有没有参考图，完全不看 `--size`**（源码核对：`config/models/gpt-image-2.ts` 的 `costs`）。所以：

```
--size 2048x1152 --quality high   →  37 积分
--size 3840x2160 --quality high   →  37 积分   ← 同价，直接用这个
```

横屏的 16:9 有两档（`2048x1152` / `3840x2160`），**竖屏只有 4K 一档**（`2160x3840`）。既然同价，中等档只在你需要小文件时才有意义。

注意 `1536x1024` 是 **3:2 不是 16:9**，拿去做课程封面会被平台裁掉两边。

**2. 底图要给内容留位置。**

课程画面的左侧（或右侧）三分之二要放 PPT、板书、代码、图表。讲师站在剩下的三分之一里。

这意味着底图**不能居中构图**——居中的人像叠上课件，要么挡内容，要么只能缩成一个小圆窗浪费掉整张 4K。配方 11 是为此专门写的，课程主力就用它。

反过来，开场白和结尾这两段没有课件，用配方 12 的全画幅中近景，视觉上形成"打招呼 → 讲内容 → 总结"的节奏。

**3. 一门课的底图必须一次定死。**

带货可以每条视频换个人设，课程不行。第 3 节的讲师换了件衣服，观众立刻出戏。

**开课前把底图存成文件，之后几十节全部引用同一个文件。** 不要指望同一段 prompt 能复现同一张脸——两次采样出的不是一个人。详见"保持同一张脸"。

**4. 时长是硬上限，一节课要切几十段。**

`jimeng-omnihuman-1.5` 的音频上限：**1080p ≤ 30 秒，720p ≤ 60 秒**。

按每秒 4.5 字算（实测 `qwen-tts` 为 4.54~4.71 字/秒），30 秒 ≈ 130 字。而 `qwen-tts` 自己的 prompt 上限是 **512 字符**——中文一个字算一个字符，加标点后 130 字很安全。

写讲稿时就**按 110~130 字一段切好**，别写完 20 分钟才回头切，语气会断。

**5. 中文 prompt 走 `--input` JSON 文件。**

用 shell 变量拼中文，在 Windows 上会静默变乱码——命令照样返回 `ok: true`，但出图跟 prompt 毫无关系。批量生产一律：

```bash
dlazy gpt-image-2 --input @payload.json --save ./lecturer/base.png
```

详见 `troubleshooting.md` 的"编码陷阱"。不确定参数时先 `--dry-run`，打印载荷和积分预估，不出图不扣分。

## 露脸预算

这是本技能最该记住的一张表。以一节 **20 分钟**的课为例：

| 段落 | 时长 | 画面 | 驱动 | TTS | 小计 |
|---|---|---|---|---|---|
| 开场白 | 30 秒 | 讲师全画幅 | 690 | 6 | 696 |
| 章节转场 × 6 | 各 10 秒 | 讲师偏侧 + 章节标题 | 1380 | 36 | 1416 |
| 正文讲解 | 18 分钟 | **课件 + 配音，无讲师** | 0 | 60 | 60 |
| 结尾总结 | 20 秒 | 讲师全画幅 | 460 | 6 | 466 |
| 合计 | 20 分钟 | | 2530 | 108 | **约 2640** |

对照全程驱动的 27840 积分（27600 驱动 + 240 TTS）。**同一节课，差 10 倍以上。**

正文那 18 分钟只要 60 积分，是因为 **`qwen-tts` 固定 6 积分一次，与字数无关**（源码核对：`costs` 直接 `return 6`）。由此得到一条不显然的优化：

> **正文段不做驱动，不受 30 秒时长限制，所以每次调用应该把 512 字符写满。**

写满是 10 次调用 60 积分；如果沿用露脸段那种 130 字一段的切法，同样的内容要 38 次调用 228 积分。**白花 168 积分买了同一段音频。** 露脸段受驱动的 30 秒上限约束只能切短，正文段没有这个约束——两者的切法必须分开。

想再省，两个杠杆：

- **降到 720p**：15 积分/秒，再省 35%。讲师小窗在 720p 下完全够用——它在成片里只占画面的六分之一，观众看不出差别。全画幅的开场结尾建议留在 1080p。
- **章节转场用静态卡**：把 6 次转场里的一半换成纯课件动画，只保留关键章节露脸，再省 700 左右。

**不要省的地方是底图那 37 积分。** 一张底图要服务几十节课，摊下来趋近于零；底图不合格导致驱动失败，一次就是几百上千积分。

## 流水线

```
① 底图     gpt-image-2 (2000字) / seedream-5.0 (500字)   ← 提示词杠杆全在这
② 讲稿     claude-sonnet-5 / qwen3.8-max                  ← 按 110~130 字/段切好
③ 配音     qwen-tts (512字符上限) / doubao-tts            ← 全课必须同一音色
④ 驱动     jimeng-omnihuman-1.5 (300字, ≤30秒@1080p)      ← 只做露脸段；单点依赖
⑤ 课件     Remotion 模板 / gpt-image-2 出静态板           ← 正文主体在这
⑥ 装配     dlazy chat --skill file-to-video               ← CLI 本身不做合成
```

**CLI 没有视频合成能力。** `dlazy` 是模型调用器，没有 merge / concat 命令。要交付 mp4，最后一步必须走沙箱模板或你自己的 ffmpeg。

**④ 是单点依赖。** 5 个数字人模型里只有 `jimeng-omnihuman-1.5` 吃「静态图 + 音频」，其余四个都要「现成的说话视频 + 音频」才能换口型。它一挂整条链路就断，降级成本翻倍。

**⑤ 是课程版真正的主战场。** 带货版这一层只是插几个产品空镜，课程版这一层是全片 90% 的画面。`file-to-video` 模板能把 PPT / Word / PDF 直接解析成带旁白和字幕的课件视频，讲师片段作为素材叠进去。完整命令见 `pipeline.md`。

## 配方索引

`recipes.md` 里有 16 条配方，参数全部经源码核对，可直接粘贴执行。

| 组 | 配方 | 适用 |
|---|---|---|
| A 讲台场景 | 01 纯色抠像位 / 02 书房 / 03 教室白板 / 04 演播室 / 05 咖啡厅 / 06 工位实操 | 按课程调性选一条 |
| B 学科人设 | 07 学术专家 / 08 职场导师 / 09 语言教师 / 10 技术讲师 | 按学科选，注意 07 的资质合规 |
| C 景别机位 | 11 **右三分之一构图** / 12 全画幅中近景 / 13 小窗特写 | 11 是正文主力，12 开场结尾，13 画中画 |
| D 课件视觉 | 14 章节封面板 / 15 概念示意图 / 16 课程封面 | 第 ⑤ 层的静态素材 |

选不动就用 **配方 11 + 配方 12 这一对**：11 出正文用的偏侧构图，12 出开场结尾用的全画幅，同一人设两个机位，一门课就够了。

## 保持同一张脸

一门课几十节，人设一致性是刚需。三种做法，从稳到弱：

1. **存图复用**（唯一推荐）——第一次满意后把底图存成文件，全课引用同一个文件，脸 100% 一致
2. **参考图重绘**——`gpt-image-2 --images base.png --prompt "同一人物，换成..."`，能换背景保住脸，但**积分从 37 涨到 60**（有参考图时 high 档计费不同），且跨集微妙差异会累积
3. **纯文字复现**——不要用。同样的 prompt 两次出的脸不是一个人

配方 11 / 12 / 13 是同一人设的三个机位，**必须用做法 2 从同一张底图派生**，不要各自独立生成——否则三个机位是三个人。

## 认证

```bash
dlazy login          # 设备码流程，自动保存 key
dlazy auth set KEY   # 已有 key 时直接写入
```

Key 从 https://dlazy.com/dashboard/organization/api-key 获取，保存在 `~/.dlazy/config.json`。也可用 `DLAZY_API_KEY` 环境变量按次传入。

积分不足返回 `insufficient_balance`，充值入口：https://dlazy.com/dashboard/organization/settings?tab=credits

## Reference Map

| 文件 | 内容 |
|---|---|
| `recipes.md` | 16 条底图与课件配方，完整可执行命令 + 每条的驱动注意事项 |
| `pipeline.md` | ①~⑥ 逐步命令，含分段批处理、画中画合成、成本估算 |
| `troubleshooting.md` | 驱动失败对照表、长课程批处理陷阱、教培合规红线 |
