文生视频蒸馏

更新时间:
复制 MD 格式

文生视频蒸馏模板从文本描述出发,通过提示词增广、视频生成、抽帧打分等流水线步骤,批量构建高质量的「文本—视频」配对 SFT 数据集。

模板概述

文生视频蒸馏模板适用于需要批量构建高质量文生视频训练数据的场景。从少量种子提示词出发,先把种子提示词增广并过滤均衡成更多样的视频提示,再对齐到生成模型偏好的指令模板,由文生视频模型批量生成视频,最后按指令一致性、视觉质量与主体一致性等维度抽帧打分并按阈值过滤,产出可直接用于微调的文生视频 SFT 数据集。

重要

该模板仅支持一段式创建:蒸馏数据构建,不包含学生模型训练阶段。

文生视频蒸馏模板的流水线包含以下步骤:

步骤

名称

说明

1

数据增广

将少量种子提示词增广并过滤均衡成更多样的视频提示。

2

数据过滤

过滤均衡后的提示词,保留高质量样本。

3

指令优化与对齐

将提示词对齐到生成模型偏好的指令模板。

4

教师生成

由文生视频模型批量生成视频。

5

质量评分

按指令一致性、视觉质量与主体一致性等维度对生成的视频抽帧打分。

6

质量过滤

按阈值过滤低质量样本,产出可直接用于微调的文生视频 SFT 数据集。

操作步骤

  1. 登录PAI控制台,在左侧导航栏选择模型应用> 模型蒸馏(ModelDistill)。

  2. 单击新建任务,跳转到蒸馏模板页签,或者直接进入蒸馏模板页签。

  3. 选择文生视频蒸馏,单击使用模板,进入新建蒸馏任务页面。如下配置关键参数,其他保持默认。

  4. 进行基础配置:

    • 任务名称:系统已自动填充。

    • 输出路径:指定一个有权限访问的OSS路径,如oss://mybucket.oss-cn-hangzhou-internal.aliyuncs.com/t2v-distill/。

      说明

      请确保为每个蒸馏任务创建独立的输出目录,避免文件被覆盖。OSS Bucket需与PAI服务在同一地域。

  5. 单击下一步,进入蒸馏数据构建:

    • 教师模型:文生视频蒸馏需要配置三个教师模型(指令构造模型必填,文生视频模型和裁判模型可选)。详见本节下方的配置说明。

    • 数据集:选择一个有权限访问的OSS目录或文件。可直接下载示例使用。

    • 蒸馏配置:已提供了默认配置,需根据实际需要修改。

      • generation.resolution:视频分辨率,默认 720P,支持 480P、720P、1080P。分辨率越高,生成成本越高。

      • generation.duration:视频时长(秒),默认 5,取值范围 [3, 15]。

    • 计算资源:资源类型选择通用计算,资源来源选择公共资源,在任务资源中选择合适的资源规格,如ecs.c6.large。

  6. 单击创建,然后在弹出的计费提醒中单击确定,页面将自动跳转至任务详情的基础配置页面,可在此跟踪任务状态。

配置说明

以下说明文生视频蒸馏模板的关键配置参数。基础配置和资源配置与通用蒸馏一致,此处仅列出本模板特有的参数差异。

基础配置

基础配置包含任务名称和输出路径两项。输出路径为任务全部产物的输出根目录,蒸馏数据集也写在该目录下,无需再单独指定数据集输出路径。

蒸馏数据构建

教师模型

文生视频蒸馏模板需要配置多个教师模型,各模型在流水线中承担不同角色:

序号

模型角色

说明

1

指令构造模型(必填)

负责提示词增广与优化对齐的文本或视觉语言模型。建议选择指令遵循与描写能力强的模型。

2

文生视频模型(必填)

实际生成视频的教师模型。视频生成较慢,单条最长等待 30 分钟。

3

裁判模型(可选)

为生成的视频抽帧打分的视觉语言模型。留空则复用指令构造模型,但纯文本模型通常无法解析视频帧,建议单独指定。

数据集

选择输入目录或文件,数据格式要求如下:

  • 格式:JSONL,每行一个视频提示词种子。

  • 提示词字段必须叫 prompt。

  • 只支持纯文本提示词,不要带图片字段。

示例数据:

{"id": "t2v_001", "prompt": "A cat walks slowly across the lunar surface, kicking up fine dust, static camera"}
{"id": "t2v_002", "prompt": "Slow push-in on a rainy cyberpunk street at night, neon signs flickering in the reflections"}

蒸馏配置

蒸馏配置以 YAML 格式提供,预置了算法团队的推荐默认值,可按需调整。下表列出部分建议关注的参数及其说明。

配置段

说明

backend

指令构造模型的请求参数。

  • timeout(默认 1200.0):单次请求等待上限(秒)。需覆盖写满 max_tokens 的回答而非平均长度,若沿用默认的 120 秒,正常的长回答会被判为超时。

t2v_backend

文生视频模型的请求参数。

  • max_poll_wait(默认 1800.0):文生视频为异步任务,单条视频最长等待时间(秒)。视频生成比图片慢一个量级。

generation

  • resolution(默认 720P):视频分辨率,支持 480P、720P、1080P。分辨率与时长越高,单条视频的生成成本与耗时越高。

  • duration(默认 5):视频时长(整数秒),取值范围 [3, 15]。

  • max_workers(默认 1):视频生成并发数。视频生成成本高、耗时长,并发不宜过高。

eval

视频评分使用 VLM(视觉语言模型)抽帧打分。

  • 评分维度(metrics):prompt_consistency(提示词一致性)、visual_quality(视觉质量)、subject_consistency(主体一致性)。

  • frame_sample_count(默认 8):每条视频抽取几帧交给 VLM 评分。

  • frame_max_size(默认 768):帧图片最大边长(像素)。

pipeline

  • videos_dir(默认 work/t2v_videos):生成的视频统一下载到此目录,供评分与回溯使用。视频本身不进产物文件。

  • 提示词增广阶段(seed_anchored_expansion):rounds 默认 2(增广轮次),generations_per_round 默认 5(每轮每条种子生成几条新提示词)。最终产出约为「种子数 × rounds × generations_per_round」。passthrough_fields 可透传输入中的额外字段(如 first_frame_image)。

  • 提示词过滤阶段(prompt_filter):dedup 默认 true(去重),drop_off_domain 默认 false(是否丢弃域外提示词)。

  • 视频生成阶段(t2v_generate):resume 默认 true,中断后重跑只补缺不重复生成,避免重复消耗视频生成费用。

  • 质量过滤阶段(quality_filter):min_scores 设定各维度最低分(prompt_consistency 默认 3,visual_quality 默认 2),低于阈值的样本被丢弃。