Audio version — Estimated duration: 2 min 37 sec

Both the LLM (text rewriting) and TTS (audio synthesis) stages have independent online and local backends.

LLM backends

Online — Cerebras API

  • Model: gpt-oss-120b (configurable via --model)
  • Requires: CEREBRAS_API_KEY environment variable
  • Rate limit: 5 requests per 60 seconds (enforced client-side)

Local — llama.cpp

  • Expects: server at http://localhost:8080/v1
  • Any model compatible with llama.cpp server (GGUF format)
  • No rate limiting
  • Set --model to any value (passed through but mainly cosmetic)

TTS backends

Online — edge-tts

  • Microsoft’s cloud TTS via edge_tts Python library
  • Output: .mp3
  • Voice: any Microsoft neural voice (default en-US-JennyNeural)
  • Zero setup beyond pip install edge-tts

Local — Piper

  • GPU-accelerated via onnxruntime
  • Output: .wav (16-bit mono PCM)
  • Models auto-downloaded from Hugging Face on first use
  • Default voice: en_US-hfc_female-medium
  • --cpu flag to force CPU inference

Piper model download

Models are cached in models/:

models/en_US-hfc_female-medium.onnx
models/en_US-hfc_female-medium.onnx.json