"""Gemini Live Translate agent configuration.""" from __future__ import annotations import os GEMINI_MODEL = os.getenv("GEMINI_MODEL", "gemini-2.5-flash-preview-native-audio-dialog-09-2025") GEMINI_INPUT_SAMPLE_RATE = 16000 GEMINI_OUTPUT_SAMPLE_RATE = 24000 AUDIO_CHANNELS = 1 PARTICIPANT_LANG_ATTR = "lang" NATIVE_LANG = "none" RECONCILE_DEBOUNCE_SEC = float(os.getenv("GEMINI_RECONCILE_DEBOUNCE_SEC", "0.25")) SESSION_GRACE_SEC = float(os.getenv("GEMINI_SESSION_GRACE_SEC", "10.0")) GEMINI_RECONNECT_BACKOFF_SEC = [0.5, 1.0, 2.0, 4.0, 8.0, 16.0, 30.0] GEMINI_MAX_FAILURES_BEFORE_LONG_BACKOFF = 5 # Map app language codes to Gemini targetLanguageCode values. GEMINI_LANG_MAP: dict[str, str] = { "fa": "fa", "en": "en", "ar": "ar", "de": "de", "fr": "fr", "es": "es", "tr": "tr", } def gemini_lang(code: str | None) -> str | None: if not code or code == NATIVE_LANG: return None return GEMINI_LANG_MAP.get(code, code)