29 октября 2026 г.
AnyDecisionModel: локальная модель отвечает типом, а не текстом, и закрывает 16 вопросов за 0,45 секунды
Приложению на Mac больше не нужно парсить текст модели: AnyDecisionModel отдаёт ответ готовым типом, а речь распознаёт Parakeet.

Локальная модель отвечает на 16 вопросов за 0,45 секунды и возвращает не текст, а значение enum.
Оба пакета вышли 29.10 под Apache 2.0: AnySpeechRecognizer распознаёт речь, AnyDecisionModel отвечает на вопросы готовым типом. Модели Core ML они тянут с Hugging Face Hub сами.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
Зачем ответ типом, а не текстом
Ответ приходит значением. AnyDecisionModel читает вероятности следующего токена и выбирает ответ там, вместо того чтобы разбирать сгенерированный текст. Форм ответа три: да/нет, выбор из списка и оценка по шкале.
Вы описываете enum с протоколом Choosable, создаёте MLXDecisionModel с моделью mlx-community/Qwen3-4B-Instruct-2507-4bit и вызываете session.choice("Which team?", from: Department.self). Обратно приходит значение enum, а не строка, которую надо чинить.
Бэкендов шесть. Локально считают MLX на Apple silicon и llama.cpp с GGUF, подключается Ollama от версии 0.35.0. Ещё три закрывают decision heads моделей Clef от Cloudflare, Core AI на macOS 27 и API Jev. Ядро библиотеки работает и на Linux, если взять Jev или Ollama.
Самая крупная модель решений, Clef-Flash на 9B в 4 бит, просит минимум 16 ГБ памяти и 6,2 ГБ на диске, а промпт держит до 16 384 токенов. В демо Emoji Magnet она отвечает на 16 вопросов за 0,45 секунды, полный перебор 343 эмодзи занимает около 10 секунд.
Насколько Parakeet точнее встроенного транскрайбера
Раньше и теперь. Раньше приложение на Apple распознавало речь встроенным транскрайбером Apple с 2,12% ошибок на LibriSpeech test-clean. Теперь через AnySpeechRecognizer подключается Parakeet Unified EN с 1,43%, а на шумном test-other разрыв шире, 3,97% против 2,19%.
На M4 Max Mac Studio Parakeet расшифровывает час записи из файла за 18–42 секунды, в живом режиме тратит 1,5–2,5 минуты на час. После компиляции Core ML модель занимает около 100 МБ памяти, сама загрузка весит около 600 МБ.
Qwen3-ASR стоит рядом ради языков: 30 языков и 22 китайских диалекта против 25 европейских у Parakeet. Но час аудио он считает 10,5–21,2 минуты, пик памяти доходит до 4,4 ГБ, а живого ввода, тайминга слов и confidence у него нет.
Говорящих раскладывает Sortformer: различает до четырёх человек и путает примерно четверть размеченной речи на тестовых совещаниях (DER 25,73%, у версии v2.1 23,42%).
Что нужно, чтобы поставить
Swift 6.2 или новее, macOS 26 или iOS 26, Apple silicon обязателен для Parakeet и Sortformer. В Package.swift добавляются два адреса: AnySpeechRecognizer от 0.1.0 и AnyDecisionModel от 0.6.0 с трейтом MLX. Для MLX понадобится Xcode со Swift 6.4 и Metal toolchain.
Бэкенд Core AI заработает только на macOS 27 и iOS 27, до их выхода решения считает MLX.
Первоисточник