business-manifest-and-type-role-spec.md 3.65 KB

Business Manifest and Type-Role Spec / 业务 Manifest 与 Type-Role 规范

更新:2026-06-02
关联文档:业务素材类型与 Bucket 指南 · 训练数据与 pgvector 指南

一页结论

现在仓库里已经有两份可以直接复用的业务接入模板:

它们解决两个问题:

  1. 业务库表里的字段,最少要映射成什么 manifest 字段。
  2. 你们的 type 应该默认落到 reference / query / excluded 哪一类。

1. 映射图

flowchart LR
    A[业务库表记录] --> B[type-role mapping]
    B --> C[reference]
    B --> D[query]
    B --> E[excluded]
    C --> F[manifest rows]
    D --> F
    F --> G[train / build-index / evaluate]

2. 最小 manifest 字段

字段 必需 说明
song_id 歌曲主 ID
asset_id 具体素材 ID
type 你们现有的素材类型
role reference / query / excluded
split train / val / test / holdout
audio_path 可访问的音频路径
source_dataset 来源标识
bucket 分桶评测标签
offset_sec query 起点
duration_sec 片段长度

3. 默认 type-role 规则

type 默认 role 默认 bucket 说明
10 / 11 reference lossless_reference_core 无损主库
9 / 1 reference compressed_reference_realworld 压缩真实分布
8 / 7 / 16 query short_video_hook 短视频/副歌入口
18 excluded demo_variation_pool 先人工筛
2 / 12 excluded with_harmony_shift 先做专项桶
其余非音频 type excluded non_audio 不入模

4. 导出原则

  1. reference 与 query 即使同曲,也不要混成同一条资产记录。
  2. 如果无法确认是否同曲同版本,默认 excluded
  3. type=18 demo 不要自动并入 train,先人工审。
  4. 短视频片段优先导出为 query,不要直接当 reference。

5. 模板与脚本

示例命令:

cd /workspace/acr-engine
/usr/local/miniconda3/bin/python scripts/print_business_type_mapping.py

6. 下个 session 直接动作

  1. 按这份规范把库表字段映射到 manifest 行。
  2. business_type_role_mapping.json 给每条资产打默认 role / bucket
  3. 先导出 referencequery 清单,再进入训练与 bucket benchmark。

延伸阅读

Sources