# 电商带货脚本 · 核心方法论 > 每次生成都读。本文件是脚本的"骨架 + 红线",钩子句式见 `hook-library.md`。 --- ## 一、黄金结构:钩子 → 痛点 → 卖点 → CTA 带货短视频的灵魂是**前 3 秒留人 + 结尾促转化**。四个功能镜各司其职: | role | 功能 | 它要做的事 | 旁白要点 | | ---- | ---- | ---- | ---- | | **钩子** | 3 秒留人 | 第一句话/第一帧就让人停下不划走 | 用 `hook-library.md` 的公式,制造痛点共鸣或反差冲击 | | **痛点** | 共鸣 | 把用户"对,我就这样"的处境讲出来 | 具体场景化,不抽象,让人对号入座 | | **卖点** | 商品解决 | 商品如何**恰好**解决上面的痛点 | 卖点落到痛点上,给"凭什么信"的理由(成分/效果/对比/口碑) | | **CTA** | 转化行动 | 临门一脚,告诉用户现在做什么 | 明确动作 + 紧迫感(点下方小黄车 / 主页领券 / 限时) | **铁原则:** - **首镜永远是钩子**——3 秒内必须抛出钩子,否则用户划走。 - **末镜永远收 CTA**——可以是独立 CTA 镜,也可以是末镜旁白末尾收一句行动指令。 - **卖点必须挂在痛点上**——不是罗列参数,是"这个痛点 → 商品这样解决"。 --- ## 二、时长 → 镜数 → 黄金结构映射(关键) ### 2.1 时长规则(不再是固定四档,也不再每镜等长) - **总时长**由输入给定:**5–60 秒之间、5 秒一档**(5/10/15/…/60)。未指定时默认 30。 - **单镜时长 4–15 秒**,这是下游出片模型的硬上限,**任何一镜都不许超过 15 秒、不许低于 4 秒**。 - **每镜时长可以不一样。** 该长的镜(讲卖点、举证)就给足,该短的镜(空镜、转场、一句钩子)就压短。 别再机械均分。 - 所有 `segments[].duration` 相加**必须精确等于** `total_duration`。 ### 2.2 镜数怎么定 镜数不是算出来的,是**按表现形式的节奏定**的。先取该形式的推荐单镜时长,再用总时长去除: | 表现形式 | 推荐单镜时长 | 理由 | | ---- | ---- | ---- | | **口播** | 10–15 秒 | 说完一个完整意思需要时间,切太碎话会断 | | **短剧** | 6–10 秒 | 靠切换制造节奏,镜头长了拖沓 | | **Vlog** | 5–8 秒 | 碎片拼贴感,镜头短、数量多 | `segment_count ≈ total_duration / 推荐单镜时长`,向最接近的整数取整, 然后**必须**落在 `ceil(total_duration/15)` 到 `floor(total_duration/4)` 这个区间内。 例:口播 30 秒 → 30/12 ≈ 2.5 → 3 镜(如 12+10+8)。   短剧 45 秒 → 45/8 ≈ 5.6 → 6 镜(如 8+7+9+7+8+6)。   Vlog 30 秒 → 30/6.5 ≈ 4.6 → 5 镜(如 6+6+7+6+5)。 ### 2.3 role 按镜数分配 | 镜数 | role 序列(index 0→N) | 说明 | | ---- | ---- | ---- | | **1** | `[钩子]` | 一镜到底:钩子 → 一句卖点 → 一句 CTA,全压进这一镜的旁白 | | **2** | `[钩子, 卖点]` | 镜0 钩子里带出痛点;镜1 讲卖点并在末尾收 CTA | | **3** | `[钩子, 卖点, CTA]` | 痛点并进钩子镜 | | **4** | `[钩子, 痛点, 卖点, CTA]` | 标准黄金结构,一镜一功能 | | **5** | `[钩子, 痛点, 卖点, 卖点, CTA]` | 两个卖点镜要各有侧重 | | **N ≥ 4** | `[钩子, 痛点, 卖点 × (N-3), CTA]` | 通用规则:首钩子、次痛点、末 CTA,中间全是卖点 | 说明: - `role` 只能取 `钩子|痛点|卖点|CTA` 四个枚举值。"信任背书""场景演示""前后对比"等都归入 `卖点`。 - **镜少也不许丢 CTA** —— 镜数 ≤2 时把 CTA 压进末镜旁白的最后一句。 - 多个卖点镜要**各有侧重、不重复**(核心功效 / 真实使用场景 / 别人为什么买 / 举证读数)。 - 视频结构会覆盖这里的默认分配 —— 以 `playbooks/structure-*.md` 里的骨架为准, 本表只是没有指定结构时的兜底。 --- ## 三、entity 一致性原则 `entities` 是全脚本共享的角色 / 场景 / 商品池,保证**多镜同一角色是同一张脸、同一商品是同一个包装**。 - **一个角色/场景/商品 = 一个 entity = 一份 `visual_prompt`**。多镜复用同一 id,**绝不为同一对象写两份 visual_prompt**(会导致下游生图人脸/包装漂移)。 - `visual_prompt` 由你**自动生成**(小白不打字):写清外观特征(角色:性别/年龄段/发型/穿着/气质;场景:地点/光线/风格;商品:品类/包装/颜色/摆放),用于直接喂图模型。 - `type` 三选一:`character`(人) / `scene`(环境) / `product`(商品)。一份脚本通常至少 1 个 `product`、**至少 1 个 `scene`**。 - **场景与镜头一一对应(可复用)**:**每个 segment 的 `entity_refs` 必须恰好引用一个 `scene`**——它就是这一镜画面所处的环境。多镜同环境就复用同一个 scene id(如全程宿舍 → 只一个「宿舍书桌」scene,4 镜都引用它);真正换了地点才新建另一个 scene。纯产品特写镜也要绑它所处环境的 scene(无明确环境则复用主场景)。这样下游「场景」基础资产能成图、且同环境背景一致。 - `ref_index` 是该 entity 在图集里的参考序号(从 1 递增,供下游三视图/参考图对齐)。 - `voice_ref`(二期,可选):角色音色参考,用于锁音色;无则 `null`。 - **每个声明的 entity 至少被一个 segment 的 `entity_refs` 引用**,不留孤儿。 - `segments[].speaker` 指向某 `character` 的 id 表示该镜由角色开口说;`null` = 画外旁白。 --- ## 四、商品露出规范(`product_exposure`) 每镜都要规划商品怎么自然出现,避免生硬插入。按 role 给推荐露出方式: | role | 推荐露出 | 说明 | | ---- | ---- | ---- | | 钩子 | 可弱露出或不露 | 钩子先抓人,商品可作悬念,第 1 镜末尾闪一下也行 | | 痛点 | 不露 / 反面对照 | 展示"没有它"的糟糕状态,商品先按住 | | 卖点 | **特写 / 使用中** | 商品成为主角:成分特写、质地特写、上脸/上手使用中 | | CTA | 手持 / 包装正面 | 手持商品对镜头,包装正面清晰,配合行动指令 | 露出方式词汇统一用:`手持` / `特写` / `使用中` / `包装正面` / `场景摆放` / `对比展示`(可组合,如"手持+特写")。 --- ## 五、旁白红线(硬规则,违反即不合格) - **口语化**:像真人对着镜头唠嗑,不准书面腔 / 不准 AI 腔("综上所述""不仅…而且""值得一提的是"全禁)。 - **`narration` 字数按这一镜的秒数算**:出片模型在镜内直接发声,可懂语速上限约 **3.5 字 / 秒**。 **每镜 `narration` ≤ `duration × 3.5` 字,且任何情况下不超过 55 字。** 对照表(写作目标再留 10% 缓冲,宁可短不要卡满): | 单镜时长 | 字数上限 | 写作目标 | | ---- | ---- | ---- | | 4 秒 | 14 字 | ≤ 12 字 | | 5 秒 | 17 字 | ≤ 15 字 | | 6 秒 | 21 字 | ≤ 19 字 | | 8 秒 | 28 字 | ≤ 25 字 | | 10 秒 | 35 字 | ≤ 31 字 | | 12 秒 | 42 字 | ≤ 38 字 | | 15 秒 | 52 字 | ≤ 47 字 | **短镜不要硬塞长句** —— 装不下就把这句拆到下一镜,或者干脆让这镜没有旁白(纯画面)。 总时长很短、一镜要装多功能时尤其要狠删,先保 CTA 不被砍。 - **不浮夸、不空喊**:卖点要给具体理由,不堆形容词。 - **违规词禁令**(电商广告法红线,一律不写): - **医疗功效类**:治疗 / 根治 / 疗效 / 抗癌 / 消炎 / 杀菌(无证) / 排毒 / 速效 / 抑制 ××病 … - **绝对化用语**:最 / 第一 / 顶级 / 唯一 / 100% / 国家级 / 世界级 / 永久 / 绝对 / 史上 … - **虚假承诺**:包治 / 三天见效 / 立刻变白 / 永不反弹 … - 替换策略:用"帮助""更""不少人反馈""上脸清爽"等柔性、主观化表达替代。 > 自检阶段必须逐镜扫一遍违规词,命中即改写。详见 `checklist.md`。