Files
auracast-translator/multilang_translator/translator_config.py
pstruebi 7fa677d865 refractoring/config (#2)
- Implement streaming lc3 without the usage of files
- use pydantic for config management

Reviewed-on: https://gitea.pstruebi.xyz/auracaster/multilang-translator-local/pulls/2
2025-03-05 17:58:49 +01:00

38 lines
1.5 KiB
Python

import os
from pydantic import BaseModel
from auracast import auracast_config
ANNOUNCEMENT_DIR = os.path.join(os.path.dirname(__file__), 'announcements')
VENV_DIR = os.path.join(os.path.dirname(__file__), '../venv')
PIPER_EXE_PATH = f'{VENV_DIR}/bin/piper'
class TranslatorBaseconfig(BaseModel):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigDe()
translator_llm: str = 'llama3.2:3b-instruct-q4_0'
llm_client: str = 'ollama'
llm_host_url: str | None = 'http://localhost:11434'
llm_host_token: str | None = None
tts_system: str = 'piper'
tts_model: str ='de_DE-kerstin-low'
class TranslatorConfigDe(TranslatorBaseconfig):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigDe()
tts_model: str ='de_DE-thorsten-high'
class TranslatorConfigEn(TranslatorBaseconfig):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigEn()
tts_model: str = 'en_GB-alba-medium'
class TranslatorConfigFr(TranslatorBaseconfig):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigFr()
tts_model: str = 'fr_FR-siwis-medium'
class TranslatorConfigEs(TranslatorBaseconfig):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigEs()
tts_model: str = 'es_ES-sharvard-medium'
class TranslatorConfigIt(TranslatorBaseconfig):
big: auracast_config.AuracastBigConfig = auracast_config.AuracastBigConfigIt()
tts_model: str = 'it_IT-paola-medium'