Apple added a new speech-to-text API, SpeechAnalyzer, in macOS 26 and iOS 26, but apps that use it are tied to Apple's own recognition engine. Hugging Face has released two open-source Swift packages that loosen that tie. AnySpeechRecognizer copies Apple's API names so that an existing app can switch engines by changing an import and one line of setup, and AnyDecisionModel gives developers a typed way to ask a model yes-or-no, multiple-choice and rating questions. Both download open models from the Hugging Face Hub and run them on the device.
The speech package supports three versions of NVIDIA's Parakeet, including Parakeet TDT 0.6B v3, which recognises 25 European languages, and Alibaba's Qwen3-ASR in 0.6B and 1.7B sizes, which covers 30 languages and 22 Chinese dialects. Hugging Face converted the models to Core ML and pins each to a fixed revision. It also adds something Apple lacks: speaker diarisation, using NVIDIA's Streaming Sortformer to label up to four speakers, even when they talk over each other. On an M4 Max Mac Studio, Hugging Face measured 1.43% word error on clean LibriSpeech audio for Parakeet Unified, against 2.12% for Apple's engine, and says Parakeet transcribes an hour of audio from a file in about 20 to 40 seconds using about 100 MB of memory. Each Parakeet download is about 600 MB.
AnyDecisionModel takes a different approach to a common job: deciding whether a message is urgent or which team should get a ticket. Instead of parsing the text a language model writes, it reads the probability the model assigns to each allowed answer, so the app gets a confidence figure with every decision. It can run small models locally through MLX, Core AI or llama.cpp, use Cloudflare's Clef, a model trained specifically for decisions, or call hosted services such as Jev and Ollama. The package includes calibration options, because raw model probabilities tend to be overconfident.
For Apple developers this lowers the cost of trying the speech models we review, Parakeet TDT 0.6B v3 and Qwen3-ASR, without committing to a new API, and of moving classification work from a cloud chat model to the device. The packages have no third-party dependencies unless the local backends are switched on.
The limits are clear in Hugging Face's own write-up. All measurements come from one Mac and a few datasets, and the packages have been tested only on macOS 27, not on an iPhone. On the AMI meeting recordings every engine had a word error rate above 23%, so overlapping, real-world conversation remains hard whichever engine you choose. Qwen3-ASR is much slower than Parakeet and needs a few gigabytes of memory, and the Core AI decision backend cannot yet be combined with the speech package because of a dependency conflict.