speechbrain.inference.ST 模块

指定语音翻译 (ST) 模块的推理接口。

作者
  • Aku Rouhe 2021

  • Peter Plantinga 2021

  • Loren Lugosch 2020

  • Mirco Ravanelli 2020

  • Titouan Parcollet 2021

  • Abdel Heba 2021

  • Andreas Nautsch 2022, 2023

  • Pooneh Mousavi 2023

  • Sylvain de Langen 2023

  • Adel Moumen 2023

  • Pradnya Kandarkar 2023

摘要

EncoderDecoderS2UT

一个即用型用于语音到单元翻译模型的编码器-解码器

参考

class speechbrain.inference.ST.EncoderDecoderS2UT(*args, **kwargs)[source]

基类: Pretrained

一个即用型用于语音到单元翻译模型的编码器-解码器

该类可用于运行整个编码器-解码器 S2UT 模型(translate_file())以翻译语音。给定的 YAML 文件必须包含 *_NEEDED[] 列表中指定的字段。*

参数:
  • *args (元组)

  • **kwargs (字典) – 参数转发给 Pretrained 父类。

示例

>>> from speechbrain.inference.ST import EncoderDecoderS2UT
>>> tmpdir = getfixture("tmpdir")
>>> s2ut_model = EncoderDecoderS2UT.from_hparams(source="speechbrain/s2st-transformer-fr-en-hubert-l6-k100-cvss", savedir=tmpdir)
>>> s2ut_model.translate_file("speechbrain/s2st-transformer-fr-en-hubert-l6-k100-cvss/example-fr.wav")
HPARAMS_NEEDED = ['sample_rate']
MODULES_NEEDED = ['encoder', 'decoder']
translate_file(path)[source]

将给定的音频文件翻译成语音单元序列。

参数:

path (字符串) – 要翻译的音频文件路径。

返回值:

此语音到单元翻译模型产生的音频文件翻译。

返回类型:

int[]

encode_batch(wavs, wav_lens)[source]

将输入音频编码为隐藏状态序列

波形应该已经采用模型期望的格式。在大多数情况下,你可以调用:normalized = EncoderDecoderS2UT.normalizer(signal, sample_rate) 来获得正确转换的信号。

参数:
  • wavs (torch.tensor) – 波形批次 [批次大小, 时间, 通道]。

  • wav_lens (torch.tensor) – 波形相对于批次中最长波形的长度,形状为 [批次大小] 的 tensor。最长的波形相对长度应为 1.0,其他为 len(waveform) / max_length。用于忽略填充。

返回值:

编码后的批次

返回类型:

torch.tensor

translate_batch(wavs, wav_lens)[source]

将输入音频翻译成词语序列

波形应该已经采用模型期望的格式。在大多数情况下,你可以调用:normalized = EncoderDecoderS2UT.normalizer(signal, sample_rate) 来获得正确转换的信号。

参数:
  • wavs (torch.tensor) – 波形批次 [批次大小, 时间, 通道]。

  • wav_lens (torch.tensor) – 波形相对于批次中最长波形的长度,形状为 [批次大小] 的 tensor。最长的波形相对长度应为 1.0,其他为 len(waveform) / max_length。用于忽略填充。

返回值:

  • 列表 – 批次中每个波形的翻译。

  • tensor – 每个预测的 token ID。

forward(wavs, wav_lens)[source]

运行完整的翻译