重要提示
您正在查看 NeMo 2.0 文档。此版本对 API 和新库 NeMo Run 进行了重大更改。我们目前正在将 NeMo 1.0 的所有功能移植到 2.0。有关先前版本或 2.0 中尚不可用的功能的文档,请参阅 NeMo 24.07 文档。
NeMo 说话人日志 API#
模型类#
Mixins#
- class nemo.collections.asr.parts.mixins.DiarizationMixin#
基类:
VerificationMixin
- abstract diarize(
- paths2audio_files: List[str],
- batch_size: int = 1,
获取音频文件路径并返回说话人标签 :param paths2audio_files: 要转录的音频片段的路径
- 返回值:
说话人标签
- class nemo.collections.asr.parts.mixins.diarization.SpkDiarizationMixin#
基类:
ABC
可进行日志记录的模型的抽象类。
创建模板函数 diarize(),该函数提供了一个接口来执行音频张量或文件路径的转录。
以下抽象类必须由子类实现
- _setup_diarize_dataloader():
设置用于日志记录的数据加载器。接收来自 _diarize_input_manifest_processing() 的输出。
- _diarize_forward():
实现模型的自定义前向传递,以返回由 _diarize_output_processing() 处理的输出。
- _diarize_output_processing():
实现模型输出的后处理,以将结果返回给用户。结果可以是对象列表、对象列表的列表、对象元组、对象列表的元组或对象列表的字典。
- abstract _diarize_forward(batch: Any)#
执行模型的自定义前向传递以返回由 _diarize_output_processing() 处理的输出的内部函数。此函数由 diarize() 和 diarize_generator() 调用以执行模型的前向传递。
- 参数:
batch – 来自数据加载器的一批输入数据,用于执行模型的前向传递。
- 返回值:
由 _diarize_output_processing() 处理的模型输出。
- _diarize_input_manifest_processing(
- audio_files: List[str],
- temp_dir: str,
- diarcfg: DiarizeConfig,
处理输入音频文件路径并返回数据加载器的配置字典的内部函数。
- 参数:
audio_files – 音频文件的字符串文件路径列表。
temp_dir – 用于存储中间文件的临时目录。
diarcfg – 日志记录配置数据类。如果需要,子类可以将其更改为不同的数据类。
- 返回值:
用于设置日志记录的数据加载器的配置字典。
- _diarize_input_processing(
- audio,
- diarcfg: DiarizeConfig,
处理输入音频数据并返回 DataLoader 的内部函数。此函数由 diarize() 和 diarize_generator() 调用,以设置用于日志记录的输入数据。
- 参数:
audio – 类型为 GenericDiarizationType
diarcfg – 日志记录配置数据类。如果需要,子类可以将其更改为不同的数据类。
- 返回值:
用于迭代输入音频数据的 DataLoader 对象。
- _diarize_on_begin(
- audio: str | List[str],
- diarcfg: DiarizeConfig,
设置模型以进行日志记录的内部函数。在此处执行所有设置和预检查。
- 参数:
audio (Union[str, List[str]]) – 类型为 GenericDiarizationType
diarcfg (DiarizeConfig) – DiarizeConfig 的实例。
- _diarize_on_end(
- diarcfg: DiarizeConfig,
在转录后拆卸模型的内部函数。在此处执行所有拆卸和后检查。
- 参数:
diarcfg – 日志记录配置数据类。如果需要,子类可以将其更改为不同的数据类。
- abstract _diarize_output_processing(
- outputs,
- uniq_ids,
- diarcfg: DiarizeConfig,
处理模型输出以将结果返回给用户的内部函数。此函数由 diarize() 和 diarize_generator() 调用以处理模型输出。
- 参数:
outputs – 由 _diarize_forward() 处理的模型输出。
uniq_ids – 批处理中唯一记录标识符的列表
diarcfg – 日志记录配置数据类。如果需要,子类可以将其更改为不同的数据类。
- 返回值:
输出可以是对象列表、对象列表的列表、对象元组、对象列表的元组。其类型在 GenericDiarizationType 中定义。
- _input_audio_to_rttm_processing(
- audio_files: List[str],
如果 audio 是音频文件路径列表,则生成清单样式字典。
- 参数:
audio_files – 音频文件路径列表。
- 返回值:
audio_rttm_map_dict 清单样式字典的列表。
- abstract _setup_diarize_dataloader(
- config: Dict,
设置用于日志记录的数据加载器的内部函数。此函数由 diarize() 和 diarize_generator() 调用,以设置用于日志记录的输入数据。
- 参数:
config – 用于设置日志记录的数据加载器的配置字典。它可以由 _diarize_input_manifest_processing() 生成。
- 返回值:
用于迭代输入音频数据的 DataLoader 对象。
- diarize(
- audio: str | List[str] | numpy.ndarray | torch.utils.data.DataLoader,
- batch_size: int = 1,
- include_tensor_outputs: bool = False,
- postprocessing_yaml: str | None = None,
- num_workers: int = 1,
- verbose: bool = False,
- override_config: DiarizeConfig | None = None,
- **config_kwargs,
获取音频文件路径并返回说话人标签
- diarize_generator(
- audio,
- override_config: DiarizeConfig | None,
diarize 函数的生成器版本。