import os from dotenv import load_dotenv load_dotenv() class Settings: GROQ_API_KEY = os.getenv("GROQ_API_KEY") # Multilingual Model Settings VIETNAMESE_EMBEDDING_MODEL = 'keepitreal/vietnamese-sbert' VIETNAMESE_LLM_MODEL = "llama-3.1-8b-instant" MULTILINGUAL_EMBEDDING_MODEL = 'sentence-transformers/all-MiniLM-L6-v2' MULTILINGUAL_LLM_MODEL = "llama-3.1-8b-instant" # Fallback models FALLBACK_MULTILINGUAL_EMBEDDING_MODEL = 'sentence-transformers/all-MiniLM-L6-v2' # Default models DEFAULT_EMBEDDING_MODEL = 'sentence-transformers/all-MiniLM-L6-v2' DEFAULT_LLM_MODEL = "llama-3.1-8b-instant" OCR_MODEL = "kha-white/manga-ocr-base" EASYOCR_LANGUAGES = ['vi', 'en'] # Whisper Settings WHISPER_MODEL = "whisper-large-v3" # TTS Settings MAX_CHUNK_LENGTH = 200 SUPPORTED_LANGUAGES = { 'vi': 'vi', 'en': 'en', 'fr': 'fr', 'es': 'es', 'de': 'de', 'ja': 'ja', 'ko': 'ko', 'zh': 'zh' } # RAG Settings EMBEDDING_DIMENSION = 768 TOP_K_RESULTS = 5 # Audio Processing Settings SAMPLE_RATE = 16000 AUDIO_CHUNK_SIZE = 1024 AUDIO_SILENCE_THRESHOLD = 0.0005 MIN_AUDIO_DURATION = 0.8 MAX_AUDIO_DURATION = 15.0 # VAD Settings VAD_MODEL = "snakers4/silero-vad" VAD_THRESHOLD = 0.3 VAD_MIN_SPEECH_DURATION = 1.0 VAD_MIN_SILENCE_DURATION = 2.0 VAD_SPEECH_PAD_DURATION = 0.5 VAD_PRE_SPEECH_BUFFER = 0.3 # VOSK Settings VOSK_MODEL_PATH = "models/vosk-model-small-vn-0.4" VOSK_SAMPLE_RATE = 16000 VOSK_SILENCE_TIMEOUT = 2.0 # Tắt Whisper nếu dùng VOSK USE_VOSK_ASR = True settings = Settings()