用途:把 NeMo 训练配置从 streaming/replay 式 Lhotse 加载迁移到 indexed 访问加 torchdata.StatefulDataLoader 的 checkpoint/restore。迁移较脆弱,因为 YAML 标志、启动器种子策略、索引路径、存储后端与恢复拓扑相互影响。
主要能力:解析训练 YAML、blend YAML 与启动器脚本;运行 lint 检查(选项参考、冲突矩阵、失败模式、AIStore 与非 AIStore 场景);按 fatal/error/warning/note 分级给出发现;在安全时自动打补丁并保留注释;生成 migration-report.md、pre-flight-checklist.md、build-indexes-cmd.sh 及补丁后的 YAML。
关键概念:索引源需要 .idx 边车文件;分片极多时可用数据集级 .idxpack 合并为内存映射目录,每个独立配置的外层 input_cfg 一个 pack,不要做全局 pack。use_stateful_dataloader: true 允许 Lightning 保存迭代器状态,但要求种子、worker 数与分布式拓扑在各 chunk 间稳定。训练配置须 force_map_dataset: false;训练迭代图中的每个源都须可索引且可分区。远程音频在 AIStore/S3 上通常需 USE_AIS_GET_BATCH=true。
使用方式:提供训练 YAML(必需),可选启动器脚本、数据 blend YAML 与运行时上下文。输出落在 migrate-resumable/<config-stem>/。建索引命令示例:python <NeMo>/scripts/dataloading/build_indexes.py --indexes-root <shared-index-mirror> --workers <N> <blend>.yaml;需要 pack 时用 convert_indexes_to_idxpack.py 并显式声明 index_pack 与 index_pack_root。
限制:优先静态分析,不启动训练、不建索引、不预取数据、不改外部运行时状态,除非用户明确要求。证据缺失时应说明,不把项目特定运行历史当作通用指导。具体收费、平台与效果资料暂未提供。