83 lines
5.5 KiB
Bash
83 lines
5.5 KiB
Bash
REALTIME_VOICE_HTTP_HOST=0.0.0.0
|
|
REALTIME_VOICE_HTTP_PORT=8000
|
|
REALTIME_VOICE_AUDIOSOCKET_HOST=0.0.0.0
|
|
REALTIME_VOICE_AUDIOSOCKET_PORT=9092
|
|
REALTIME_VOICE_SAMPLE_RATE_HZ=16000
|
|
|
|
LLM_PROVIDER=openai
|
|
|
|
OPENAI_API_KEY=
|
|
OPENAI_BASE_URL=
|
|
OPENAI_LLM_MODEL=gpt-4o-mini
|
|
OPENAI_LLM_SYSTEM_PROMPT=Ты Айнур, лаконичный русскоязычный голосовой оператор контакт-центра DigiOps. Всегда отвечай на русском естественно, кратко и в одном спокойном стиле для голосового воспроизведения. Когда говоришь о себе, всегда используй женский род: могла, смогла, сделала, готова, проверила, нашла. Никогда не добавляй собственные фразы ожидания. Если нужна короткая фраза ожидания, голосовой сервис добавит её отдельно, поэтому отвечай сразу и не добавляй собственную фразу ожидания. Если клиент спрашивает, робот ты, ИИ или человек, отвечай ровно: "Да, я голосовой агент контакт-центра DigiOps." Не завершай диалог самостоятельно. Говори «до свидания» только если клиент явно попрощался или попросил завершить разговор. Простые «спасибо» или «благодарю» не считай просьбой завершить разговор. Телефонные номера читай по цифрам. Предпочитай понятные формулировки, удобные для ударения, и избегай неоднозначных по ударению слов. Не используй Markdown, URL или таблицы.
|
|
OPENAI_LLM_ENABLE_TOOLS=true
|
|
OPENAI_LLM_MAX_TOOL_ROUNDTRIPS=2
|
|
OPENAI_TIMEOUT_SECONDS=30
|
|
SERPER_API_KEY=
|
|
SERPER_API_BASE=https://google.serper.dev
|
|
SERPER_SEARCH_GL=kz
|
|
SERPER_SEARCH_HL=ru
|
|
SERPER_SEARCH_NUM=5
|
|
OPENAI_STT_MODEL=whisper-1
|
|
OPENAI_STT_LANGUAGE=ru
|
|
OPENAI_STT_TIMEOUT_SECONDS=30
|
|
|
|
OLLAMA_BASE_URL=http://host.docker.internal:11434
|
|
OLLAMA_LLM_MODEL=qwen2.5:1.5b
|
|
OLLAMA_TIMEOUT_SECONDS=20
|
|
OLLAMA_LLM_TEMPERATURE=0.3
|
|
OLLAMA_LLM_SYSTEM_PROMPT=Ты Айнур, голосовой ИИ-оператор. Всегда отвечай только на русском, коротко и по делу. Когда говоришь о себе, всегда используй женский род: могла, смогла, сделала, готова, проверила, нашла. Не завершай диалог самостоятельно и говори «до свидания» только если клиент явно попрощался или попросил завершить разговор.
|
|
OLLAMA_LLM_MAX_CONTEXT_MESSAGES=4
|
|
OLLAMA_LLM_NUM_PREDICT=64
|
|
OLLAMA_LLM_NUM_CTX=1024
|
|
|
|
STT_PROVIDER=openai
|
|
STT_FALLBACK_PROVIDER=elevenlabs
|
|
# Empty means auto-detect the first answer, because the greeting asks for preferred language first.
|
|
STT_NAME_CAPTURE_LANGUAGE_CODE=
|
|
STT_PROMPT=
|
|
STT_PROMPT_RU=Это русская речь по телефону. Точно распознавай короткие ответы, имена, фамилии, слова благодарности и прощания. Если человек представился одним словом, сохраняй его как имя. Номера телефонов записывай цифрами.
|
|
STT_PROMPT_KZ=Бұл қазақ тіліндегі телефон арқылы сөйлесу. Қысқа жауаптарды, есімдерді, тілді таңдауды және қоштасуды дәл таны. Клиент бір сөзбен танысса, оны есім ретінде сақта. Телефон нөмірлерін цифрлармен жаз.
|
|
TTS_PROVIDER=elevenlabs
|
|
|
|
REALTIME_VOICE_INITIAL_GREETING_RU_TEXT=Здравствуйте, мое имя Айну́р. На каком языке Вам удобнее общаться: на казахском или русском?
|
|
REALTIME_VOICE_INITIAL_GREETING_KK_TEXT=Сәлеметсіз бе, менің атым Айнұр. Сізге қай тілде сөйлескен ыңғайлы: қазақша ма, орысша ма?
|
|
|
|
ENABLE_AUDIO_DUMP=false
|
|
AUDIO_DUMP_DIR=debug_audio
|
|
|
|
ELEVENLABS_API_KEY=
|
|
ELEVENLABS_API_BASE=https://api.elevenlabs.io
|
|
ELEVENLABS_TTS_VOICE_ID=
|
|
# Use eleven_v3 for Kazakh/Russian. Switch back to v2 anytime with eleven_flash_v2_5 or eleven_multilingual_v2.
|
|
ELEVENLABS_TTS_MODEL_ID=eleven_v3
|
|
ELEVENLABS_TTS_TRANSPORT=auto
|
|
ELEVENLABS_TTS_LANGUAGE_CODE=ru
|
|
ELEVENLABS_TTS_OUTPUT_FORMAT=pcm_16000
|
|
ELEVENLABS_TTS_SPEED=1.2
|
|
ELEVENLABS_STT_MODEL_ID=scribe_v2
|
|
ELEVENLABS_STT_REALTIME_MODEL_ID=scribe_v2_realtime
|
|
ELEVENLABS_STT_LANGUAGE_CODE=ru
|
|
ELEVENLABS_STT_USE_REALTIME=true
|
|
ELEVENLABS_STT_ALLOW_BATCH_FALLBACK=true
|
|
ELEVENLABS_TIMEOUT_SECONDS=30
|
|
|
|
YANDEX_STT_API_KEY=
|
|
YANDEX_STT_IAM_TOKEN=
|
|
YANDEX_STT_FOLDER_ID=
|
|
YANDEX_STT_LANGUAGE=ru-RU
|
|
YANDEX_STT_TOPIC=general
|
|
|
|
VAD_THRESHOLD=0.5
|
|
VAD_NEGATIVE_THRESHOLD=
|
|
VAD_SILENCE_TIMEOUT_MS=420
|
|
VAD_SPEECH_PAD_MS=180
|
|
VAD_MIN_SPEECH_DURATION_MS=0
|
|
VAD_USE_ONNX=false
|
|
REALTIME_VOICE_INITIAL_GREETING_TEXT=
|
|
REALTIME_VOICE_INITIAL_GREETING_USE_SINGLE_TEXT=false
|
|
SEMANTIC_ENDPOINTING_HOLD_MS=600
|
|
REALTIME_VOICE_FILLER_DELAY_MS=300
|
|
REALTIME_VOICE_TTS_CHUNK_SOFT_MIN_CHARS=10
|
|
REALTIME_VOICE_TTS_CHUNK_SOFT_MIN_WORDS=2
|