File size: 2,103 Bytes
226ff5d
 
 
 
 
 
 
 
 
 
 
38a5904
226ff5d
e75bac4
 
38a5904
986403e
38a5904
986403e
38a5904
986403e
e0ee8f7
 
 
 
 
 
 
e75bac4
 
38a5904
 
 
 
 
 
226ff5d
 
 
e75bac4
c2e783d
986403e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from dotenv import load_dotenv
import os

load_dotenv()

DEEPGRAM_API_KEY: str = os.environ["DEEPGRAM_API_KEY"]
CARTESIA_API_KEY: str = os.environ["CARTESIA_API_KEY"]
CARTESIA_VOICE_ID: str = os.environ["CARTESIA_VOICE_ID"]

SAMPLE_RATE: int = int(os.getenv("SAMPLE_RATE", "16000"))
WAKE_WORDS: list[str] = [w.strip().lower() for w in os.getenv("WAKE_WORD", "Hai EMA").split(",") if w.strip()]
WAKE_WORD_ENABLED: bool = os.getenv("WAKE_WORD_ENABLED", "false").lower() in ("1", "true", "yes")
CARTESIA_MODEL: str = os.getenv("CARTESIA_MODEL", "sonic-3")

GOOGLE_API_KEY: str = os.getenv("GOOGLE_API_KEY", "")
GOOGLE_PROJECT_NAME: str = os.getenv("GOOGLE_PROJECT_NAME", "")
GOOGLE_PROJECT_ID: str = os.getenv("GOOGLE_PROJECT_ID", "")
GOOGLE_PROJECT_NUMBER: str = os.getenv("GOOGLE_PROJECT_NUMBER", "")
GOOGLE_CLOUD_LOCATION: str = os.getenv("GOOGLE_CLOUD_LOCATION", "us-central1")

GEMINI_TTS_MODEL: str = os.getenv("GEMINI_TTS_MODEL", "gemini-2.5-flash-tts")
GEMINI_TTS_MODELS: list[str] = [
    m.strip() for m in os.getenv(
        "GEMINI_TTS_MODELS",
        "gemini-2.5-flash-tts",
        # "gemini-2.5-flash-tts,gemini-3.1-flash-tts-preview,gemini-2.5-pro-tts",
    ).split(",") if m.strip()
]
GEMINI_TTS_VOICE: str = os.getenv("GEMINI_TTS_VOICE", "Autonoe")
GEMINI_TTS_LANGUAGE: str = os.getenv("GEMINI_TTS_LANGUAGE", "id-ID")

GEMINI_STT_MODEL: str = os.getenv("GEMINI_STT_MODEL", "gemini-2.0-flash")
GEMINI_LIVE_MODEL: str = os.getenv("GEMINI_LIVE_MODEL", "gemini-live-2.5-flash-preview")
GEMINI_STT_LANGUAGE: str = os.getenv("GEMINI_STT_LANGUAGE", "id-ID")
STT_PROVIDER: str = os.getenv("STT_PROVIDER", "deepgram")
TTS_PROVIDER: str = os.getenv("TTS_PROVIDER", "cartesia")
DEEPGRAM_LANGUAGE: str = os.getenv("DEEPGRAM_LANGUAGE", "id")
DEEPGRAM_ENDPOINTING_MS: int = int(os.getenv("DEEPGRAM_ENDPOINTING_MS", "300"))
DEEPGRAM_UTTERANCE_END_MS: int = int(os.getenv("DEEPGRAM_UTTERANCE_END_MS", "2000"))

CHIRP3_REGION: str = os.getenv("CHIRP3_REGION", "us-central1")  # chirp_2 valid regions: us-central1, europe-west4, asia-southeast1
CHIRP3_LANGUAGE: str = os.getenv("CHIRP3_LANGUAGE", "id-ID")