# Server Configuration HOST=0.0.0.0 PORT=8000 BACKEND_URL=http://127.0.0.1:8100 # Audio Configuration SAMPLE_RATE=16000 CHUNK_SIZE_MS=20 # VAD Configuration VAD_THRESHOLD=0.5 VAD_EOU_THRESHOLD_MS=600 VAD_MIN_SPEECH_DURATION_MS=160 # OpenAI / LLM Configuration (required for duplex voice) OPENAI_API_KEY=sk-fc4d59b360475f53401a864db8ce0985010acc4e696723d20a90d6569f38d80a OPENAI_API_URL=https://api.qnaigc.com/v1 # Optional: for Azure or compatible APIs LLM_MODEL=deepseek-v3 LLM_TEMPERATURE=0.7 # TTS Configuration TTS_PROVIDER=siliconflow TTS_VOICE=anna TTS_SPEED=1.0 # SiliconFlow Configuration (for TTS and ASR) SILICONFLOW_API_KEY=sk-thmzysdpqqmhqxxshyqoxvjeiflexjdgaftyufrsgrhpjnyx SILICONFLOW_TTS_MODEL=FunAudioLLM/CosyVoice2-0.5B # ASR Configuration ASR_PROVIDER=siliconflow SILICONFLOW_ASR_MODEL=FunAudioLLM/SenseVoiceSmall ASR_INTERIM_INTERVAL_MS=500 ASR_MIN_AUDIO_MS=300 # Duplex Pipeline Configuration DUPLEX_ENABLED=true # DUPLEX_GREETING=Hello! How can I help you today? DUPLEX_SYSTEM_PROMPT=You are a helpful, friendly voice assistant. Keep your responses concise and conversational. # Barge-in Configuration # Minimum speech duration (ms) to trigger interruption - filters out brief noises # Lower = more sensitive (50-100ms recommended), Higher = filters more noise BARGE_IN_MIN_DURATION_MS=100 ASR_START_MIN_SPEECH_MS=100 ASR_PRE_SPEECH_MS=320 # Logging LOG_LEVEL=INFO LOG_FORMAT=text