What Speech Models Does FluidVoice Support? A Complete Technical Guide

FluidVoice supports 15 distinct speech recognition models across three families: FluidAudio (8 Apple Silicon-optimized models), Apple Native (2 built-in ASR engines), and Whisper (6 universal OpenAI models), all unified in the SpeechModel enum defined in Sources/Fluid/Persistence/SettingsStore.swift.

The FluidVoice open-source macOS dictation app provides flexible speech-to-text through a single enumeratio that abstracts model selection, metadata, and backend routing. This unified architecture lets users choose from lightweight on-device models to large multilingual systems without code changes.

FluidAudio Models: Apple Silicon-Optimized ASR

The FluidAudio family delivers high-performance speech recognition optimized for Apple Silicon, with model sizes ranging from ~428 MB to ~2 GB.

Model Identifier Languages Size Source Link
Parakeet TDT parakeetTDT 25 languages ~460.9 MB SettingsStore.swift#L76
Parakeet TDT v2 parakeetTDTv2 English only ~442.9 MB SettingsStore.swift#L77
Parakeet Flash (Beta) parakeetRealtime English only ~428.4 MB SettingsStore.swift#L78
Qwen3 ASR (Beta) qwen3Asr 30 languages ~2.0 GB SettingsStore.swift#L79
Cohere Transcribe cohereTranscribeSixBit 14 languages ~1.54 GB SettingsStore.swift#L80
Nemotron 3.5 Offline nemotronOffline ~40 languages ~530.8 MB SettingsStore.swift#L81
Nemotron 3.5 Streaming nemotronStreaming ~40 languages ~668.2 MB SettingsStore.swift#L82
Nemotron 3.5 Streaming (320 kbps) nemotronStreaming320 ~40 languages ~668.2 MB SettingsStore.swift#L83

These models require Apple Silicon and are downloaded on-demand. The Qwen3 ASR and Cohere Transcribe models provide the broadest multilingual coverage but at significantly larger storage costs.

Apple Native Models: Built-In System ASR

For users prioritizing zero download overhead, FluidVoice exposes Apple's native speech engines:

  • appleSpeech — Legacy Apple ASR with system language support (SettingsStore.swift#L87)
  • appleSpeechAnalyzer — Modern Apple Speech framework (macOS 26+) with support for English, Spanish, French, German, Italian, Japanese, Korean, Portuguese, and Chinese (SettingsStore.swift#L88)

Both models use the system's built-in speech recognition with no additional downloads.

Whisper Models: Universal Cross-Platform ASR

The Whisper family from OpenAI provides consistent performance across all Mac hardware, including Intel-based systems. All Whisper models support 99 languages.

Model Identifier Size Source Link
Whisper Tiny whisperTiny ~43.9 MB SettingsStore.swift#L92
Whisper Base whisperBase ~81.0 MB SettingsStore.swift#L93
Whisper Small whisperSmall ~257.3 MB SettingsStore.swift#L94
Whisper Medium whisperMedium ~793.0 MB SettingsStore.swift#L95
Whisper Large Turbo whisperLargeTurbo ~845.3 MB SettingsStore.swift#L96
Whisper Large whisperLarge ~1.55 GB SettingsStore.swift#L97

How to Enumerate and Select Speech Models

The SpeechModel enum conforms to CaseIterable and provides computed properties for UI display. Here's how to work with supported models programmatically:

import Fluid

// Retrieve all 15 supported speech models
let allModels = SettingsStore.SpeechModel.allCases

// Inspect model metadata
for model in allModels {
    print("\(model.displayName)\(model.languageSupport)\(model.downloadSize)")
}

// Select a specific model for transcription
SettingsStore.shared.selectedSpeechModel = .whisperLargeTurbo

// Start dictation with the configured model
DictationService.shared.startDictation(
    using: SettingsStore.shared.selectedSpeechModel
)

The enum exposes properties like displayName, languageSupport, and downloadSize that RewriteModeView.swift and CommandModeView.swift use to render the model selector without hardcoded strings.

Model Selection Architecture

FluidVoice's model abstraction lives in three key locations:

The DictationService receives the selected SpeechModel value and routes audio to the appropriate inference backend—Core ML for FluidAudio models, SFSpeechRecognizer for Apple Native, or llama.cpp/whisper.cpp for Whisper variants.

Summary

  • 15 total models in three families: FluidAudio (8), Apple Native (2), Whisper (6)
  • Unified SpeechModel enum in SettingsStore.swift with source-defined links at lines 76–97
  • Smallest model: Whisper Tiny at ~43.9 MB L92
  • Largest model: Qwen3 ASR at ~2.0 GB L79
  • Widest language support: Whisper models with 99 languages; Nemotron with ~40 languages
  • Zero-download options: appleSpeech and appleSpeechAnalyzer use system frameworks

Frequently Asked Questions

Does FluidVoice support Intel Macs?

Yes, but with limitations. The Whisper family (6 models) and Apple Native models work on both Intel and Apple Silicon. The FluidAudio family (8 models) requires Apple Silicon and optimized Core ML pipelines. Intel Mac users should select .whisperLargeTurbo or .whisperMedium for best quality.

How do I change the default speech model in FluidVoice?

Set SettingsStore.shared.selectedSpeechModel to any SpeechModel case before starting dictation. The value persists across app launches via @AppStorage or equivalent persistence in SettingsStore.swift. The UI in RewriteModeView.swift provides a dropdown with human-readable names from the displayName property.

Which speech model has the best accuracy for English transcription?

For English-specific use cases with Apple Silicon, Parakeet TDT v2 L77 offers optimized performance at ~442.9 MB. For universal deployment, Whisper Large L97 or Whisper Large Turbo L96 provide state-of-the-art accuracy at the cost of ~1.55 GB or ~845 MB respectively. The Nemotron Streaming models L82-L83 balance ~40-language support with reasonable size.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →