Language models (LLM)
For step-by-step setup instructions for LM Studio and Ollama, see the Local LLM Setup guide.
Speech-to-text (STT)
- All STT models are stored in
~/Library/Application Support/char/models/stt/ - The built-in whisper-cpp backend is now an optional compile-time feature. Production builds use the Cactus engine for local STT.
Cactus engine (beta)
Cactus is a local STT backend that runs optimized Whisper models. Cactus models are listed in Settings > Transcription under the Char provider. Models with an "Apple NPU" suffix use the Apple Neural Engine for hardware-accelerated inference on Apple Silicon Macs; non-Apple variants run on any platform.
| Model | Quantization | Platform |
|---|---|---|
| Whisper Small (INT4) | INT4 | General |
| Whisper Small (INT8) | INT8 | General |
| Whisper Small (INT8, Apple NPU) | INT8 | Apple Silicon |
| Whisper Medium (INT4) | INT4 | General |
| Whisper Medium (INT4, Apple NPU) | INT4 | Apple Silicon |
| Whisper Medium (INT8) | INT8 | General |
| Whisper Medium (INT8, Apple NPU) | INT8 | Apple Silicon |
| Parakeet TDT 0.6B V3 (INT4) | INT4 | General |
| Parakeet TDT 0.6B V3 (INT4, Apple NPU) | INT4 | Apple Silicon |
| Parakeet TDT 0.6B V3 (INT8) | INT8 | General |
| Parakeet TDT 0.6B V3 (INT8, Apple NPU) | INT8 | Apple Silicon |
Cactus models are downloaded and managed from the Settings UI. They are stored in a separate cactus/ directory within the models folder.
Timestamps: Cactus v1.11+ produces word-level timestamps in transcription output, enabling precise alignment of transcript words with audio playback.
Custom vocabulary: Cactus supports custom vocabulary to improve recognition accuracy for domain-specific terms, names, and acronyms. Custom vocabulary words are defined in Settings > Intelligence > Memory and are passed to the Cactus engine during both streaming and batch transcription.
For details on how your data is handled when using local vs cloud models, see AI Models & Data Privacy.