feat: add streaming STT service with Whisper backend

- stt_streaming.py: HTTP-based STT using external Whisper service
- stt_streaming_local.py: ROCm-based local Whisper inference
- Voice Activity Detection (VAD) with WebRTC
- Interrupt detection for barge-in support
- Session state management (listening/responding)
- OpenTelemetry instrumentation with HyperDX support
- Dockerfile variants for HTTP and ROCm deployments
This commit is contained in:
2026-02-02 06:23:12 -05:00
parent 680e43fe39
commit 8fc5eb1193
9 changed files with 1473 additions and 1 deletions

20
requirements.txt Normal file
View File

@@ -0,0 +1,20 @@
nats-py>=2.0.0,<3.0.0
httpx>=0.20.0,<1.0.0
msgpack
# Audio processing
numpy>=1.20.0,<2.0.0
webrtcvad>=2.0.10
# pyannote.audio>=3.1.0 # Optional: for advanced speaker diarization
# OpenTelemetry core
opentelemetry-api
opentelemetry-sdk
# OTEL exporters (gRPC for local collector, HTTP for HyperDX)
opentelemetry-exporter-otlp-proto-grpc
opentelemetry-exporter-otlp-proto-http
# OTEL instrumentation
opentelemetry-instrumentation-httpx
opentelemetry-instrumentation-logging