first commit
This commit is contained in:
175
.env.kube.prd
Normal file
175
.env.kube.prd
Normal file
@@ -0,0 +1,175 @@
|
||||
# Copie para .env.dev ou .env.prod antes de executar.
|
||||
|
||||
APP_ENV=prd
|
||||
LOG_LEVEL=INFO
|
||||
LOG_DIR=./logs
|
||||
CALL_TIMELINE_DIR=./timeline
|
||||
CALL_TIMELINE_CONSOLE=0
|
||||
FLOW_LOG_ENABLED=1
|
||||
FLOW_AUDIO_BURST_GAP_S=0.8
|
||||
FLOW_LOG_AUDIO_BURST_END=1
|
||||
FLOW_LOG_PREVIEW_CHARS=500
|
||||
FLOW_LOG_STT_SKIPS=1
|
||||
FLOW_LOG_VAD_DECISIONS=1
|
||||
FLOW_LOG_VAD_ACTIVITY=1
|
||||
FLOW_LOG_VAD_ACTIVITY_MIN_PROB=0.03
|
||||
EXPORT_DIR=./recordings
|
||||
ENTIRE_CALL_RECORDING_ENABLED=1
|
||||
ENTIRE_CALL_RECORDING_TMP_DIR=./recordings/entire_call_tmp
|
||||
|
||||
AGENT_BASE_NAME=ws-voice-agent
|
||||
AGENT_BACKEND=remote_sse
|
||||
AGENT_RECONNECT_ENABLED=1
|
||||
AGENT_RECONNECT_MAX_ATTEMPTS=1
|
||||
AGENT_RECONNECT_TIMEOUT_S=10
|
||||
|
||||
# WebSocket keepalive do Uvicorn para sessoes longas de audio.
|
||||
UVICORN_WS_PING_INTERVAL_S=30
|
||||
UVICORN_WS_PING_TIMEOUT_S=120
|
||||
|
||||
LIVEKIT_URL=ws://tim-ai-atend-agnt-integ-tia-livekit.agnt-ai-atendimento-tia.svc.cluster.local:7880
|
||||
LIVEKIT_API_KEY=tia_livek_tia_api_key
|
||||
LIVEKIT_API_SECRET=TiaLivekitSecret2026KeyBridgeSync01
|
||||
|
||||
# Providers locais para smoke test
|
||||
STT_PROVIDER=internal_http
|
||||
TTS_PROVIDER=xai
|
||||
TTS_EMPTY_FRAME_RETRY_TIMEOUT_S=3
|
||||
TTS_FIRST_FRAME_TIMEOUT_S=3
|
||||
TTS_UNDERFLOW_ERROR_MS=1000
|
||||
TTS_TOTAL_TIMEOUT_S=60
|
||||
|
||||
# Tuning de fala/interrupcao: permite detectar palavras curtas como "nao".
|
||||
MIN_INTERRUPT_S=0.5
|
||||
DISCARD_AUDIO_IF_UNINTERRUPTIBLE=0
|
||||
SILENCE_CHECK_EVERY=1
|
||||
# Volume da fala do agente: a correcao de nivel agora e feita na saida do TTS
|
||||
# (worker), com limiter soft-knee p/ nao clipar. O ganho do bridge fica neutro.
|
||||
WS_OUTPUT_GAIN=1.0
|
||||
TTS_OUTPUT_GAIN=2.0
|
||||
VAD_MIN_SPEECH_DURATION=0.15
|
||||
VAD_ACTIVATION_THRESHOLD=0.30
|
||||
VAD_MIN_SILENCE_DURATION=1.0
|
||||
VAD_DEACTIVATION_THRESHOLD=0.15
|
||||
VAD_PREFIX_PADDING_DURATION=1.0
|
||||
VAD_PREFIX_PADDING_MIN_DURATION=1.0
|
||||
AGENT_WAIT_TIMEOUT_RETRY_VAD_THRESHOLD_ENABLED=1
|
||||
AGENT_WAIT_TIMEOUT_RETRY_VAD_ACTIVATION_THRESHOLD=0.20
|
||||
|
||||
# STT fake: usa uma frase por turno. Quando acabar, repete a ultima.
|
||||
FAKE_STT_TRANSCRIPTS="alô"
|
||||
FAKE_STT_MODE=repeat_last
|
||||
FAKE_STT_MIN_AUDIO_MS=150
|
||||
|
||||
# TTS fake: gera um tom PCM local para validar o pipeline de audio.
|
||||
FAKE_TTS_TONE_HZ=440
|
||||
FAKE_TTS_AMPLITUDE=0.12
|
||||
FAKE_TTS_MIN_DURATION_MS=320
|
||||
FAKE_TTS_MAX_DURATION_MS=2200
|
||||
FAKE_TTS_CHAR_DURATION_MS=35
|
||||
|
||||
|
||||
# Azure Speech TTS opcional
|
||||
AZURE_TTS_IMPLEMENTATION=plugin
|
||||
AZURE_SPEECH_REGION=brazilsouth
|
||||
AZURE_SPEECH_ENDPOINT=
|
||||
AZURE_SPEECH_VOICE=pt-BR-FranciscaNeural
|
||||
AZURE_SPEECH_LANGUAGE=pt-BR
|
||||
AZURE_SPEECH_DEPLOYMENT_ID=
|
||||
|
||||
# STT opcional
|
||||
STT_URL=http://10.152.89.211:8100/api/transcriber
|
||||
STT_KEY=
|
||||
STT_LANG=portuguese
|
||||
STT_MIN_PROB_SINGLE_WORD=0.03
|
||||
STT_MIN_AUDIO_MS=120
|
||||
STT_MIN_DBFS=-55
|
||||
VOSK_MODEL_PATH=
|
||||
|
||||
# Backend remoto opcional
|
||||
REMOTE_AGENT_WS_URL=ws://tim-ai-contas-agnt-service.agnt-ai-atendimento-contas.svc.cluster.local:80/agent/ws
|
||||
# Endpoint fake mantido apenas para testes manuais do contrato websocket.
|
||||
REMOTE_AGENT_WS_FAKE_URL=ws://127.0.0.1:8000/fake-agent/ws
|
||||
REMOTE_AGENT_WS_OPEN_TIMEOUT_S=10
|
||||
REMOTE_AGENT_WS_READ_TIMEOUT_S=900
|
||||
REMOTE_AGENT_WS_WRITE_TIMEOUT_S=10
|
||||
REMOTE_AGENT_WS_CLOSE_TIMEOUT_S=10
|
||||
REMOTE_AGENT_SSE_URL_CONTA=http://tim-ai-contas-agnt-service.agnt-ai-atendimento-contas.svc.cluster.local:80/agent/sse
|
||||
REMOTE_AGENT_HEALTH_URL=http://tim-ai-contas-agnt-service.agnt-ai-atendimento-contas.svc.cluster.local:80/health
|
||||
REMOTE_AGENT_HEALTH_URL_CONTA=http://tim-ai-contas-agnt-service.agnt-ai-atendimento-contas.svc.cluster.local:80/health
|
||||
REMOTE_AGENT_SSE_DEFAULT_STAGE=PRESENTATION
|
||||
REMOTE_AGENT_SSE_CONNECT_TIMEOUT_S=10
|
||||
REMOTE_AGENT_SSE_READ_TIMEOUT_S=900
|
||||
REMOTE_AGENT_SSE_WRITE_TIMEOUT_S=10
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_INTERVAL_S=12
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_TIMEOUT_S=180
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_MAX_NOTICES=0
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_TEXT=Um momento, ainda estou consultando para te ajudar.
|
||||
PRE_BACKEND_WAIT_NOTICE_FAST_ON_VAD_PAUSE=0
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_SHORT_AUDIO_DIR=src/app/livekit/assets/comfort/short
|
||||
REMOTE_AGENT_INFLIGHT_WAIT_LONG_AUDIO_DIR=src/app/livekit/assets/comfort/long
|
||||
|
||||
# Mock temporario para encerrar a chamada apos a primeira resposta de audio do agente.
|
||||
MOCK_STOP_AFTER_FIRST_AUDIO_ENABLED=0
|
||||
MOCK_STOP_AFTER_FIRST_AUDIO_SILENCE_S=2
|
||||
MOCK_STOP_AFTER_FIRST_AUDIO_REASON=nao_resolvido
|
||||
|
||||
# Bridge audio tuning
|
||||
HOLD_SILENCE_DBFS=-45
|
||||
LK_CATCHUP_KEEP_MS=600
|
||||
AUDIO_IN_BACKLOG_SHED_ENABLED=1
|
||||
AUDIO_IN_BACKLOG_SHED_THRESHOLD_MS=500
|
||||
AUDIO_IN_BACKLOG_SHED_KEEP_MS=300
|
||||
AUDIO_IN_LATENCY_METRICS_ENABLED=1
|
||||
AUDIO_IN_LATENCY_ALERT_MS=1000
|
||||
AUDIO_IN_LATENCY_LOG_INTERVAL_S=15
|
||||
LIVEKIT_AUDIO_SOURCE_QUEUE_SIZE_MS=500
|
||||
LIVEKIT_AUDIO_SOURCE_CLEAR_ON_SHED=1
|
||||
|
||||
# Status terminais de finalizacao normal, resolvidos por reason no bridge.
|
||||
FINAL_STOP_STATUS_RESOLVED=stop_resolvido_e_finalizado
|
||||
FINAL_STOP_STATUS_UNRESOLVED=stop_nao_resolvido
|
||||
FINAL_STOP_STATUS_OTHER_SUBJECT=stop_outro_assunto
|
||||
FINAL_STOP_STATUS_LONG_SILENCE=stop_silencio_longo
|
||||
FINAL_STOP_DEFAULT_KIND=resolved
|
||||
FINAL_STOP_REASON_RESOLVED=stage_done
|
||||
FINAL_STOP_REASON_UNRESOLVED=nao_resolvido
|
||||
FINAL_STOP_REASON_OTHER_SUBJECT=outro_assunto
|
||||
FINAL_STOP_REASON_LONG_SILENCE=no_user_response
|
||||
|
||||
# Readiness / capacidade do TIA
|
||||
TIA_WS_MAX_CONNECTIONS=0
|
||||
TIA_RESOURCE_HEALTH_TTL_S=5
|
||||
TIA_RESOURCE_HEALTH_TIMEOUT_S=3
|
||||
TIA_SKIP_STT_READINESS=1
|
||||
STT_HEALTH_URL=http://10.152.89.211:8100/healthz
|
||||
|
||||
# Idle nudge
|
||||
IDLE_NUDGE_ENABLED=0
|
||||
IDLE_NUDGE_DELAY_S=60
|
||||
IDLE_NUDGE_JOIN_DELAY_S=60
|
||||
|
||||
# Interrupcao durante processamento
|
||||
DEFERRED_INTERRUPTION_ENABLED=1
|
||||
DEFERRED_INTERRUPTION_MIN_AUDIO_MS=1000
|
||||
DEFERRED_INTERRUPTION_STT_SETTLE_TIMEOUT_S=3.0
|
||||
DEFERRED_INTERRUPTION_USER_TURN_TIMEOUT_S=10.0
|
||||
|
||||
# XAI
|
||||
XAI_TTS_VOICE=c8x2ieiocufs
|
||||
XAI_TTS_LANGUAGE=pt-BR
|
||||
XAI_TTS_READINESS_MODE=connect
|
||||
XAI_WEBSOCKET_URL=wss://peordagnt002prd.pe.inference.generativeai.us-chicago-1.oci.oraclecloud.com/xai/v1/tts
|
||||
|
||||
GCP_PROJECT_ID=tim-bigdata-prod-e305
|
||||
AGENT_PUBSUB_TOPIC=pbs-ingest-agnt-ai-tia-events
|
||||
|
||||
# OTEL
|
||||
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://10.152.6.254/v1/traces
|
||||
OTEL_SERVICE_NAME=ai-agent-tia-orch
|
||||
OTEL_EXPORTER_OTLP_HEADERS=Host=tim-ai-atend-agnt-opentelemetry
|
||||
|
||||
#BUCKET OBJECT STORAGE
|
||||
BUCKET_REGION=sa-saopaulo-1
|
||||
BUCKET_NAME=osb-gru-agnt-ai-atendimento-prd-004
|
||||
BUCKET_NAMESPACE=grfrp6rtsznm
|
||||
Reference in New Issue
Block a user