voicebot / config /settings.py
datbkpro's picture
Update config/settings.py
3aba5ae verified
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()