From 53f6563e3e2a2b36373eda391c87db50d4d330e2 Mon Sep 17 00:00:00 2001 From: Josh Ziegler Date: Thu, 26 May 2022 16:20:09 -0400 Subject: [PATCH] avoid mutable default in aligner --- tortoise/utils/wav2vec_alignment.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tortoise/utils/wav2vec_alignment.py b/tortoise/utils/wav2vec_alignment.py index bfcb7e1..f78c806 100644 --- a/tortoise/utils/wav2vec_alignment.py +++ b/tortoise/utils/wav2vec_alignment.py @@ -7,13 +7,15 @@ from transformers import Wav2Vec2ForCTC, Wav2Vec2FeatureExtractor, Wav2Vec2CTCTo from tortoise.utils.audio import load_audio -def max_alignment(s1, s2, skip_character='~', record={}): +def max_alignment(s1, s2, skip_character='~', record=None): """ A clever function that aligns s1 to s2 as best it can. Wherever a character from s1 is not found in s2, a '~' is used to replace that character. Finally got to use my DP skills! """ + if record is None: + record = {} assert skip_character not in s1, f"Found the skip character {skip_character} in the provided string, {s1}" if len(s1) == 0: return '' @@ -145,4 +147,3 @@ class Wav2VecAlignment: start, stop = nri output_audio.append(audio[:, alignments[start]:alignments[stop]]) return torch.cat(output_audio, dim=-1) -