transcribe() on English-only model won't complain when language="en" is not given

This commit is contained in:
Jong Wook Kim 2022-10-09 02:40:12 -07:00
parent 82725cea9c
commit d18e9ea5dd

View File

@ -84,6 +84,9 @@ def transcribe(
mel = log_mel_spectrogram(audio)
if decode_options.get("language", None) is None:
if not model.is_multilingual:
decode_options["language"] = "en"
else:
if verbose:
print("Detecting language using up to the first 30 seconds. Use `--language` to specify the language")
segment = pad_or_trim(mel, N_FRAMES).to(model.device).to(dtype)
@ -282,6 +285,7 @@ def cli():
os.makedirs(output_dir, exist_ok=True)
if model_name.endswith(".en") and args["language"] not in {"en", "English"}:
if args["language"] is not None:
warnings.warn(f"{model_name} is an English-only model but receipted '{args['language']}'; using English instead.")
args["language"] = "en"