VOICE_TO_VOICE_AI / app /core /config.py
USER
Initial clean voice agent - no venv or git history
2651a17
# app/core/config.py
import os
from dataclasses import dataclass
def get_env(key: str, default=None, required=False):
value = os.getenv(key, default)
if required and not value:
raise ValueError(f"Missing required env var: {key}")
return value
@dataclass
class Settings:
"""
Central configuration for Voice AI Platform
"""
# =========================
# OPENAI
# =========================
OPENAI_API_KEY: str = "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"
OPENAI_LLM_MODEL: str = get_env("OPENAI_LLM_MODEL", "gpt-4o-mini")
OPENAI_TTS_MODEL: str = get_env("OPENAI_TTS_MODEL", "tts-1")
OPENAI_TTS_VOICE: str = get_env("OPENAI_TTS_VOICE", "alloy")
OPENAI_STT_MODEL: str = get_env("OPENAI_STT_MODEL", "whisper-1")
# =========================
# QDRANT
# =========================
QDRANT_HOST: str = "https://5eb2018a-838c-4ea4-a23a-850d81545462.sa-east-1-0.aws.cloud.qdrant.io"
QDRANT_PORT: int = int(get_env("QDRANT_PORT", 6333))
QDRANT_API_KEY: str = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3MiOiJtIiwic3ViamVjdCI6ImFwaS1rZXk6ODVkN2ZjMjItMWZlMi00NjgwLWI4ZTktZmRiNjU4YjFlMTU5In0.L5SXur8IBi1XAX43Yna-y_yPpYO7TDsrb4RI08hWepY"
QDRANT_COLLECTION: str = get_env("QDRANT_COLLECTION", "voice_memory")
# =========================
# LIVEKIT (FIXED)
# =========================
LIVEKIT_URL: str = get_env(
"LIVEKIT_URL",
"wss://drrobot-vkm9d8zd.livekit.cloud"
)
LIVEKIT_API_KEY: str = get_env(
"LIVEKIT_API_KEY",
"APIueYBKwFKo7eh"
)
LIVEKIT_API_SECRET: str = get_env(
"LIVEKIT_API_SECRET",
"YowkBlcEZq2lLd6INz3Yx2uQlsDJt0c0HrygigHi8PP"
)
# =========================
# AUDIO
# =========================
SAMPLE_RATE: int = int(get_env("SAMPLE_RATE", 16000))
VAD_MODE: int = int(get_env("VAD_MODE", 2))
# =========================
# DEBUG
# =========================
DEBUG: bool = (
str(get_env("DEBUG", "false")).lower() == "true"
)
settings = Settings()