mirror of
https://github.com/denizsafak/abogen.git
synced 2026-09-20 11:40:57 +02:00
Fix spaCy unknown language error: map Kokoro single-letter codes to Language enum in get_spacy_model
This commit is contained in:
@@ -21,6 +21,19 @@ SPACY_MODELS = {
|
||||
Language.HI: "xx_sent_ud_sm",
|
||||
}
|
||||
|
||||
# Kokoro single-letter codes -> Language enum (inverse of pipeline_factory._KOKORO_LANG_MAP)
|
||||
_KOKORO_TO_LANGUAGE = {
|
||||
"a": Language.EN_US,
|
||||
"b": Language.EN_GB,
|
||||
"e": Language.ES,
|
||||
"f": Language.FR,
|
||||
"h": Language.HI,
|
||||
"i": Language.IT,
|
||||
"j": Language.JA,
|
||||
"p": Language.PT_BR,
|
||||
"z": Language.ZH,
|
||||
}
|
||||
|
||||
|
||||
def _load_spacy():
|
||||
"""Lazy load spaCy module."""
|
||||
@@ -61,6 +74,9 @@ def get_spacy_model(lang_code, log_callback=None):
|
||||
|
||||
# Normalize to Language enum
|
||||
if not isinstance(lang_code, Language):
|
||||
if isinstance(lang_code, str) and lang_code in _KOKORO_TO_LANGUAGE:
|
||||
lang_code = _KOKORO_TO_LANGUAGE[lang_code]
|
||||
else:
|
||||
try:
|
||||
lang_code = Language.from_str(lang_code)
|
||||
except ValueError:
|
||||
|
||||
Reference in New Issue
Block a user