business-manifest-and-type-role-spec.md
3.44 KB
Business Manifest and Type-Role Spec / 业务 Manifest 与 Type-Role 规范
更新:2026-06-02
关联文档:业务素材类型与 Bucket 指南 · 训练数据与 pgvector 指南
一页结论
现在仓库里已经有两份可以直接复用的业务接入模板:
- ../acr-engine/configs/manifests/business_asset_manifest_template.json
- ../acr-engine/configs/manifests/business_type_role_mapping.json
它们解决两个问题:
- 业务库表里的字段,最少要映射成什么 manifest 字段。
- 你们的
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. 导出原则
- reference 与 query 即使同曲,也不要混成同一条资产记录。
- 如果无法确认是否同曲同版本,默认
excluded。 type=18 demo不要自动并入 train,先人工审。- 短视频片段优先导出为
query,不要直接当 reference。
5. 模板与脚本
- Manifest 模板:
- Type-role 模板:
- 打印脚本:
示例命令:
cd /workspace/acr-engine
/usr/local/miniconda3/bin/python scripts/print_business_type_mapping.py
6. 下个 session 直接动作
- 按这份规范把库表字段映射到 manifest 行。
- 用
business_type_role_mapping.json给每条资产打默认role/bucket。 - 先导出
reference与query清单,再进入训练与 bucket benchmark。