modelscope/FunASR

Инструментарий для распознавания речи промышленного уровня: 170x в реальном времени, 50+ языков, диаризация говорящих, распознавание эмоций, потоковая передача и API, совместимый с OpenAI.

Аудио⭐ 20 452Pythonпоследний релиз: v1.4.16
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

FunASR — это промышленный набор инструментов для распознавания речи от ModelScope, обеспечивающий высокую скорость обработки (до 340x realtime) и поддержку более 50 языков.

Зачем нужен

Инструмент решает задачу преобразования аудио в текст с возможностью обработки в реальном времени, а также извлечения дополнительных метаданных, таких как диаризация говорящих и эмоции. Он полезен тем, кто ищет бесплатную альтернативу облачным API или Whisper, способную работать как на GPU, так и на CPU.

Что можно реализовать

  • Создание систем транскрибации подкастов и интервью с автоматическим разделением по спикерам и временными метками
  • Разработка голосовых ассистентов и чат-ботов с поддержкой потоковой обработки (streaming) через WebSocket
  • Интеграция распознавания речи в AI-агентов (например, через MCP Server для Claude/Cursor или OpenAI API для LangChain)
  • Обработка аудио на серверах с ограниченным доступом к GPU, используя модели, оптимизированные для CPU

Ключевые возможности

  • Высокая производительность: до 340x realtime с использованием vLLM для батчинга
  • Мультимодальный анализ: одна модель (SenseVoice) возвращает текст, диаризацию, эмоции и события аудио
  • OpenAI-compatible API: готовый сервер для совместимости с существующими инструментами разработки
  • Гибкий выбор моделей: от флагманского LLM-ASR (Fun-ASR-Nano) до легковесных решений для стриминга (Paraformer)
  • MIT лицензия: возможность полного локального хостинга без затрат на облачные сервисы

👤 Кому подойдёт: Разработчики, внедряющие голосовые интерфейсы и транскрибацию, а также инженеры ML, ищущие высокопроизводительные open-source решения для обработки аудио.

Релизы

v1.4.16minor
🕐 3 дн назад · релиз на GitHub ↗

FunASR 1.4.16: исправлено размещение моделей на устройствах, уточнена работа пунктуации и добавлены руководства по Native Transformers.

  • Fixed: Исправлено сохранение конфигурации устройств (VAD, пунктуация, спикер) при повторных вызовах инференса.
  • Added: Добавлены проверенные руководства по Native Transformers для английского и китайского языков.
  • Added: Уточнена документация: объяснена необходимость использования CT-Transformer для пунктуации в SenseVoiceSmall и Paraformer.
  • Added: Выпущены пресобранные бинарные файлы runtime-llamacpp-v0.2.6 для Linux, macOS и Windows.
v1.4.15minor
🕐 12 дн назад · релиз на GitHub ↗

FunASR 1.4.15: поддержка NumPy 2, улучшение стабильности стриминга и VAD, документация MOSS и обновления runtime.

  • Fixed: Обеспечена совместимость с NumPy 2, обновлены вызовы librosa и тесты.
  • Fixed: Улучшена надежность стриминга: сохранение кадров KWS, корректная работа VAD и ранжирование чекпоинтов.
  • Added: Добавлены профили MOSS в Gradio-клиент и пример офлайн-транскрипции через vLLM.
  • Added: Обновлены документация по развертыванию и примеры для Qwen3 и MOSS.
  • Выпущены бинарные файлы runtime-llamacpp-v0.2.6 для Linux, macOS и Windows.
v1.4.14patch
🕐 17 дн назад · релиз на GitHub ↗

Исправлены архивы исходников, обновлена документация по MOSS-Transcribe-Diarize и добавлены руководства по развёртыванию.

  • Fixed: Исправлены проблемы с архивами исходного кода для Git archive и установки из исходников.
  • Added: Обеспечена доступность MOSS-Transcribe-Diarize в моделях, документации по развёртыванию и сервисам.
  • Added: Добавлены актуальные руководства по развёртыванию в реальном времени и промышленных условиях.
  • Added: Предоставлены кроссплатформенные бинарные файлы runtime-llamacpp-v0.2.6 и контрольные суммы SHA256SUMS.
v1.4.13minor
🕐 19 дн назад · релиз на GitHub ↗

Исправлены ошибки NumPy и VAD, добавлена поддержка n8n и пример для Qwen3-asr, обновлены документы.

  • Fixed: Исправлено несовпадение ABI NumPy 2 и принятие частичных результатов VAD в реальном времени.
  • Added: Добавлена поддержка транскрипции через n8n OpenAI audio transcription и пример офлайн-запуска Qwen3-asr.
  • Added: Нормализованы ISO-хинты языков для Fun-ASR-Nano.
  • Обновлены документы: уточнены пути vLLM, границы MOSS и добавлены профили настройки L20.
v1.4.12minor
🕐 20 дн назад · релиз на GitHub ↗

Выпуск FunASR 1.4.12: стабилизация fp16 декодирования, поддержка MOSS diarization и новые бинарники llama.cpp.

  • Added: Добавлена поддержка MOSS diarization во все этапы развертывания.
  • Added: Выпущены готовые бинарные сборки FunASR с runtime llama.cpp для Linux, macOS и Windows.
  • Fixed: Исправлена стабилизация fp16 декодирования в fun-asr-nano.
  • Fixed: Исправлена логика сохранения выровненных частичных результатов при длинных сегментах в реальном времени.
v1.4.11patch
🕐 21 дн назад · релиз на GitHub ↗

Выпуск FunASR 1.4.11: исправление маркеров SentencePiece и автоматизация сборки пакетов, добавлены бинарники llama.cpp для всех платформ.

  • Fixed: Исправлено выравнивание маркеров слов в SentencePiece для работы auto-model.
  • Added: Добавлены готовые бинарные сборки llama.cpp для Linux, macOS и Windows (включая CUDA Blackwell и Vulkan).
  • Added: Автоматизировано прикрепление Python-пакетов к релизам через CI.
  • Обновлена версия до 1.4.11, доступна установка через PyPI.
v1.4.10patch
🕐 21 дн назад · релиз на GitHub ↗

Исправлено разбиение длинных китайских предложений на субтитры с учётом пауз и лексики; обновлён runtime llama.cpp.

  • Fixed: Улучшено формирование границ субтитров для длинных китайских предложений: теперь учитываются длительность, пунктуация и границы слов Jieba, а не только лимит в 42 символа.
  • Fixed: Исправлена проблема #3539, связанная с нарушением длительности и длины cue при обработке смешанных китайско-корейских аудиодорожек.
  • Added: В релиз включены проверенные архивы runtime llama.cpp для Linux, macOS и Windows с поддержкой CPU, Vulkan, CUDA и Blackwell.
v1.4.8minor
🕐 22 дн назад · релиз на GitHub ↗

Исправлена обработка ошибок загрузки, добавлена поддержка длинных транскрипций и диаризации через vLLM, выпущены бинарники для CUDA Blackwell.

  • Added: Добавлена поддержка длинных транскрипций и диаризированных ответов через vLLM в MOSS.
  • Added: Опубликованы ассеты для Windows с поддержкой CUDA Blackwell (sm_120).
  • Fixed: Исправлено сохранение ошибок снапшота при загрузке.
  • Added: Обновлена документация: раскрыт путь локального API MOSS и синхронизированы рецепты.
v1.4.7minor
🕐 22 дн назад · релиз на GitHub ↗

Исправлена работа SenseVoice (F16, веса), улучшена точность SRT, добавлен профилинг декодирования и адаптер AutoModel.

  • Fixed: Исправлено декодирование эмбеддингов SenseVoice (F16) и загружены веса на выбранный бэкенд.
  • Fixed: Устранены мелкие семантические разрывы в читаемом формате SRT.
  • Added: Добавлен опциональный профилинг декодирования для улучшения производительности в реальном времени.
  • Added: Реализован адаптер runtime AutoModel для интеграции с экосистемой MOSS.
  • Added: Обновлен runtime llama.cpp до версии 0.2.5 с поддержкой различных платформ и архитектур.
runtime-llamacpp-v0.2.5patch
🕐 22 дн назад · релиз на GitHub ↗

Исправлена загрузка весов в Vulkan для FunASR llama.cpp; добавлены бинарники для SenseVoice, Paraformer и Nano.

  • Fixed: Исправлена загрузка весов с хоста на устройство в Vulkan, обеспечивая корректное копирование тензоров перед выполнением графа.
  • Added: Добавлены готовые самодостаточные бинарники для FunASR llama.cpp / GGUF с поддержкой SenseVoice, Paraformer и Fun-ASR-Nano.
  • Added: Предоставлены скрипты для автоматической загрузки квантованных моделей через Hugging Face CLI.
  • Добавлена поддержка AVX2/FMA/F16C/BMI2 для повышения производительности на совместимых CPU.
  • Выпущены сборки для Linux, macOS и Windows с поддержкой Vulkan и CUDA (архитектура 86).
runtime-llamacpp-v0.2.4patch
🕐 23 дн назад · релиз на GitHub ↗

Исправлено прерывистое появление пустых транскриптов SenseVoiceSmall при использовании F16 GGUF-весов.

  • Fixed: Устранена ошибка, вызывавшая пустые транскрипты SenseVoiceSmall при работе с F16 GGUF-моделями.
  • Fixed: Корректная декодировка эмбеддингов в зависимости от типа тензора (F16/F32) и валидация ширины.
  • Fixed: Запрет чтения F16-хранилища через float * и отсечение недопустимых ID токенов.
  • Исправление не затрагивает проблему краха AMD Vulkan на Windows (issue #3479).
v1.4.6patch
🕐 23 дн назад · релиз на GitHub ↗

Исправлены ошибки в timestamp, рентайме и Vulkan, улучшена группировка субтитров и добавлена трассировка SenseVoice.

  • Fixed: Исправлена ошибка IndexError при обработке пустых сегментов в timestamp_sentence_en.
  • Fixed: Устранены ложные таймауты keepalive в режиме реального времени под нагрузкой.
  • Fixed: Добавлена защита от сбоев инициализации бэкенда Vulkan.
  • Added: В CLI реализована группировка читаемых субтитровых подсказок.
  • Added: Добавлена трассировка этапов бэкенда SenseVoice для улучшенной диагностики.
runtime-llamacpp-v0.2.3patch
🕐 23 дн назад · релиз на GitHub ↗

Улучшена диагностика этапов загрузки и выполнения моделей SenseVoice, Paraformer и Nano в runtime llama.cpp.

  • Added: Расширена диагностика этапов инициализации бэкенда, загрузки модели, выделения графа и начала вычислений.
  • Added: Добавлены четкие границы статусов (backend ready, model ready, graph allocated, compute starting) для точной локализации сбоев.
  • Fixed: Подготовлен пакет Windows Vulkan для повторного тестирования на Radeon 780M и RX 9070 XT.
  • Релиз не устраняет критический сбой AMD Windows 0xC0000005, а лишь улучшает отладку.
  • Android/Mali остается вне списка официально поддерживаемых и проверяемых платформ.
runtime-llamacpp-v0.2.2patch
🕐 23 дн назад · релиз на GitHub ↗

Исправлена критическая ошибка инициализации бэкендов CUDA/Vulkan, улучшено логирование ошибок, добавлены бинарники для Windows с Vulkan.

  • Fixed: Исправлена ошибка разыменования нулевого указателя при сбое инициализации бэкендов CUDA или Vulkan.
  • Added: Улучшено логирование: добавлены четкие границы вывода в stderr для точной диагностики этапов инициализации.
  • Added: Готовы пакеты Windows с поддержкой Vulkan для тестирования на Radeon 780M и RX 9070 XT.
  • Релиз собран по коммиту 05be4863, все девять платформ успешно прошли сборку.
v1.4.5minorbreaking
🕐 24 дн назад · релиз на GitHub ↗

FunASR 1.4.5: отказ от torchaudio в пользу knf, добавлены бинарники llama.cpp и улучшена работа с GPU.

  • Breaking: torchaudio больше не является обязательным зависимым пакетом для стандартного инференса.
  • Added: Добавлен опциональный бэкенд kaldi-native-fbank (knf) для уменьшения размера зависимостей.
  • Added: Приложены готовые сборки llama.cpp / GGUF для Linux, macOS и Windows (CPU/GPU/Vulkan).
  • Added: Включена поддержка интегрированных GPU-бэкендов для улучшенной совместимости.
  • Fixed: Проведена валидация на Ascend 910B с показателем RTF 0.016.
runtime-llamacpp-v0.2.1major
🕐 25 дн назад · релиз на GitHub ↗

Выпущены самодостаточные бинарники FunASR на базе llama.cpp с поддержкой SenseVoice, Paraformer и Nano, включая оптимизации для CPU, Vulkan и CUDA.

  • Added: Добавлены готовые бинарные файлы для рантайма llama.cpp, поддерживающие модели SenseVoice, Paraformer и Fun-ASR-Nano с встроенным FSMN-VAD.
  • Added: Реализована поддержка GPU через Vulkan (для Linux и Windows) и CUDA (для Windows с архитектурой compute capability 86).
  • Added: Добавлены оптимизированные сборки для x64-процессоров с поддержкой инструкций AVX2/FMA/F16C/BMI2 для повышения производительности.
  • Added: Предоставлен скрипт download-funasr-model.sh для автоматической загрузки квантованных моделей через Hugging Face CLI.
  • Added: Решение работает без необходимости установки Python-рантайма или локальной сборки, обеспечивая максимальную совместимость с CPU.
v1.4.3minor
🕐 1 мес назад · релиз на GitHub ↗

FunASR 1.4.3: добавлен адаптер Silero VAD, оптимизирована кластеризация спикеров и обновлен runtime llama.cpp.

  • Added: Добавлен опциональный адаптер Silero VAD с поддержкой ONNX, порогов срабатывания и сегментов в миллисекундах.
  • Added: Внедрена нормализованная фиксированная K-кластеризация для больших наборов спикеров, заменяющая ресурсоемкий спектральный метод.
  • Added: Обновлен prebuilt runtime llama.cpp (v0.2.0) с поддержкой Linux, macOS и Windows, включая CUDA и Vulkan.
  • Added: Обновлены интеграции MLX Audio и OpenMAIC, а также контракты рантайма llama.cpp.
v1.4.2minor
🕐 1 мес назад · релиз на GitHub ↗

Исправление выравнивания пунктуации, DDP и DeepSpeed, поддержка SRT, Vulkan и SenseVoice в нативных рантаймах.

  • Fixed: Исправлено выравнивание токенов пунктуации в AutoModel.
  • Fixed: Устранены ошибки накопления градиентов DDP и инициализации DeepSpeed.
  • Added: Добавлен вывод субтитров SRT в нативных рантаймах llama.cpp.
  • Fixed: Исправлены сбои AMD Windows через обновление ggml/Vulkan.
  • Added: Добавлена поддержка SenseVoice через audio.cpp и валидация Fun-ASR-Nano на vLLM 0.27.1.
runtime-llamacpp-v0.2.0minor
🕐 1 мес назад · релиз на GitHub ↗

Выпуск runtime-обёртки llama.cpp для FunASR с поддержкой SRT-субтитров, улучшенной работой Vulkan на AMD и готовыми бинарниками.

  • Added: Добавлена поддержка вывода субтитров в формате SRT для моделей Fun-ASR-Nano, SenseVoiceSmall и Paraformer через флаг --srt.
  • Added: Предоставлены готовые самодостаточные бинарные файлы для Linux, macOS и Windows, не требующие сборки или установки Python-рантайма.
  • Fixed: Обновлена версия llama.cpp: улучшено пакетное выполнение для Vulkan на видеокартах AMD и улучшена диагностика ошибок VK_ERROR_DEVICE_LOST.
  • Added: Добавлены рекомендации по настройке переменных GGML_VK_MAX_NODES_PER_SUBMIT и GGML_VK_SERIALIZE_SUBMISSIONS для устранения проблем с Vulkan.
v1.4.1minor
🕐 1 мес назад · релиз на GitHub ↗

FunASR 1.4.1: исправлена загрузка paraformer-en, добавлен LoRA для Qwen3, улучшена стабильность ONNX и SenseVoice.

  • Fixed: Исправлен маршрут для paraformer-en: теперь загружается английская модель, а не китайская.
  • Added: Добавлена поддержка LoRA-дообучения для LLM Qwen3 в Fun-ASR-Nano.
  • Fixed: Устранены ошибки выбора чекпоинта при отсутствии метрик валидации.
  • Added: В бинарники ONNX Runtime добавлен стабильный вывод JSONL с таймстампами.
  • Added: Добавлен воспроизводимый путь развертывания SenseVoice через TensorRT/Triton.
v1.4.0minor
🕐 1 мес назад · релиз на GitHub ↗

FunASR 1.4.0: исправление опечатки VAD, восстановление нормализации SenseVoice, поддержка llama.cpp/GGUF и фиксы WebSocket.

  • Fixed: Исправлена опечатка vda_model: теперь параметр vad_model проверяется сразу, предотвращая тихую работу без VAD.
  • Fixed: Восстановлена английская нормализация орфографии для SenseVoice через файл english.json.
  • Fixed: Восстановлена компиляция CUDA-ядер RWKV-BAT путем включения исходников .cpp и .cu в пакеты.
  • Added: Добавлены готовые сборки llama.cpp / GGUF для SenseVoice, Paraformer и Fun-ASR-Nano под Linux, macOS и Windows.
  • Fixed: Исправлено корректное завершение сессий ввода файлов через WebSocket при получении клиентом сигнала конца.
runtime-llamacpp-v0.1.4major
🕐 2 мес назад · релиз на GitHub ↗

Выпущены самодостаточные бинарники FunASR для llama.cpp с поддержкой SenseVoice, Paraformer и Fun-ASR-Nano без необходимости Python.

  • Added: Добавлены готовые бинарные файлы для работы с моделями SenseVoice, Paraformer и Fun-ASR-Nano в среде llama.cpp.
  • Added: Встроенный модуль FSMN-VAD обеспечивает эффективное обнаружение речи на устройстве, оптимизировано для китайского языка.
  • Added: Доступны оптимизированные сборки x64-avx2 для процессоров с поддержкой AVX2/FMA/F16C/BMI2 для повышения производительности.
  • Added: Предоставлены скрипты автоматической загрузки моделей и готовые CLI-инструменты для запуска без сборки и Python.