LLM_BASE_URL=https://openrouter.ai/api/v1 LLM_API_KEY=your_openrouter_key_here LLM_MODEL_NAME=qwen/qwen3.5-35b-a3b LLM_TIMEOUT=60.0 LLM_ENABLE_THINKING=false VLLM_ENGINE=false # Deepseek API (decompose step only, Package 6) DP_BASE_URL=https://api.deepseek.com DP_API_KEY=your_deepseek_key_here DP_MODEL_NAME=deepseek-v4-pro EMBEDDING_MODEL=qwen/qwen3-embedding-4b EMBEDDING_BASE_URL=https://openrouter.ai/api/v1 EMBEDDING_API_KEY= CHROMA_DB_PATH=./chroma_db CHUNK_SIZE=1000 CHUNK_OVERLAP=200 RETRIEVAL_N_RESULTS=10 RELEVANCE_THRESHOLD=7.0 # SQLite databases (Package 3) PROMPTS_DB_PATH=./data/prompts.db HISTORY_DB_PATH=./data/history.db CORS_ORIGINS=["http://localhost:5173","http://localhost:3000"] # -------- ASR Configuration (Phase 2 + Phase 5) -------- # ASR provider: "dashscope" or "openrouter" # dashscope: Alibaba Cloud DashScope – batch + realtime (WebSocket) Cantonese ASR # openrouter: OpenRouter STT – batch-only Cantonese ASR via REST API # NOTE: "openrouter" only affects batch (Full Transcript) transcription. # Realtime streaming always uses DashScope (OpenRouter has no WebSocket STT). ASR_PROVIDER=dashscope # --- DashScope ASR (used when ASR_PROVIDER=dashscope, or for realtime) --- # Get your key from: https://modelstudio.console.alibabacloud.com DASHSCOPE_API_KEY=sk-your-dashscope-key-here ASR_MODEL_NAME=qwen3-asr-flash ASR_REALTIME_MODEL_NAME=qwen3-asr-flash-realtime # --- OpenRouter STT (used when ASR_PROVIDER=openrouter) --- # Get your key from: https://openrouter.ai/keys # Separate key for independent accounting/billing OPENROUTER_API_KEY= ASR_OPENROUTER_MODEL=google/chirp-3 # Video upload (Phase 2) VIDEO_UPLOAD_DIR=./uploads MAX_VIDEO_SIZE_MB=300 # Live audio capture toggles (Phase 4) # Set to false to disable System Audio or Listen Mic capture SYSTEM_AUDIO_ENABLED=true MIC_ENABLED=true # Q&A-pair chunking (Package 8) DEFAULT_CHUNKING_STRATEGY=token QA_VISION_ENABLED=true QA_MAX_CHUNK_TOKENS=3000 QA_STRUCTURE_MODEL= QA_INCLUDE_INTERNAL_REFS=true QA_CACHE_VISION_RESULTS=true