Overview of the livekit-wakeword module map
mainThe project is organized into several functional modules within src/livekit/wakeword/:
config.py: Pydantic models for configuration and YAML loading.cli.py: Typer-based CLI for the full lifecycle (setup,generate,augment,train,export,eval,run).models/: Contains feature extractors (feature_extractor.py), classifier architectures (classifier.py), and the training wrapper (pipeline.py).data/: Handles data orchestration including TTS (generate.py), augmentation (augment.py), dataset management (dataset.py), and feature extraction (features.py).training/: Contains theWakeWordTrainerand evaluation metrics.eval/: Tools for model evaluation (DET curves, FPPH, etc.).export/: Logic for ONNX export and INT8 quantization.inference/: The runtime API, includingWakeWordModelfor predictions andWakeWordListenerfor async microphone detection.