- tts_streaming.py: NATS-based TTS using XTTS HTTP API - Streaming audio chunks for low-latency playback - Voice cloning support via reference audio - Multi-language synthesis - OpenTelemetry instrumentation with HyperDX support
29 lines
646 B
Python
29 lines
646 B
Python
#!/usr/bin/env python3
|
|
"""
|
|
Health check script for Kubernetes probes
|
|
Verifies NATS connectivity
|
|
"""
|
|
import sys
|
|
import os
|
|
import asyncio
|
|
|
|
import nats
|
|
|
|
NATS_URL = os.environ.get("NATS_URL", "nats://nats.ai-ml.svc.cluster.local:4222")
|
|
|
|
|
|
async def check_health():
|
|
"""Check if service can connect to NATS."""
|
|
try:
|
|
nc = await asyncio.wait_for(nats.connect(NATS_URL), timeout=5.0)
|
|
await nc.close()
|
|
return True
|
|
except Exception as e:
|
|
print(f"Health check failed: {e}", file=sys.stderr)
|
|
return False
|
|
|
|
|
|
if __name__ == "__main__":
|
|
result = asyncio.run(check_health())
|
|
sys.exit(0 if result else 1)
|