Speech

NVIDIA-NeMoApache-2.0活跃维护

面向语音 AI 的可扩展生成式框架,覆盖语音识别、语音合成、说话人分离与语音翻译,方便研究和开发人员训练部署语音模型。

A scalable generative AI framework built for researchers and developers working on Large Language Models, Multimodal, and Speech AI (Automatic Speech Recognition and Text-to-Speech)

v3.0.0发布于 2026-08-07 00:13 UTC18,723star +10 / 7 天3,686fork同步于 2026-11-10 11:24 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/NVIDIA-NeMo/Speech.git
cd Speech
uv sync --extra all --extra cu13
硬件要求按 README 说明

训练必须使用 NVIDIA GPU 和 CUDA,推理也推荐使用 GPU;CPU 可以运行,但 README 未给出具体显存要求。官方容器和编译内核默认面向 H100+(Hopper/Blackwell),A100 需设置 GPU_TARGET=a100。

支持 Apple Silicon需要 CUDA有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

NVIDIA 出品的语音 AI 框架,覆盖 ASR、TTS 和语音大模型的训练、微调与部署

面向语音 AI 的可扩展生成式框架,覆盖语音识别、语音合成、说话人分离与语音翻译,方便研究和开发人员训练部署语音模型。

核心能力

  • 提供 ASR、TTS、语音 LLM 的预训练检查点与训练代码
  • 支持流式识别,延迟可在 80ms 到 1s 之间调节
  • Nemotron 3.5 Transcribe 支持 40 种语言和最长一小时的录音
  • MagpieTTS 多语言合成覆盖 12 种语言
  • 用 uv 锁定可复现的 Python、PyTorch、CUDA 组合

容易踩的坑

PyTorch 2.6 起 torch.load 默认 weights_only=True,部分检查点需设 TORCH_FORCE_NO_WEIGHTS_ONLY_LOAD=1 且仅限可信文件;Linux 上 cu12 与 cu13 互斥,只能传一个;想保留自己的 PyTorch 版本时不要用 uv sync --locked,它会覆盖为官方基线。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v3.0.0
  1. v3.0.0NVIDIA NeMo Speech 3.0最新正式版2026-08-07 · 2026-08-07 00:13 UTC

    NVIDIA NeMo Speech 3.0 Release Notes

    NeMo Speech 3.0 is the first major release after the repo split and rename to NVIDIA-NeMo/Speech. The repo now focuses on ASR, TTS, audio processing, speaker tasks, and SpeechLM. Non-speech Framework, LLM, VLM, diffusion, export/deploy, evaluator components can now be found under separate repos under NVIDIA-NeMo organization.

    While this release brings new major features, the central focus is addressing technical debt: removed 800k deprecated LOC, migration to uv package manager for cleaner installs, stronger model test coverage, reduced the number of dependencies, revamped documentation, lighter containers, and AGENTS.md + agentic skills.

    Top-Level Changes and Highlights

    Breaking Changes and Migration Notes

    • LLM/VLM/diffusion/NLP/export/evaluator collections have been moved out to separate repos.
    • Unsupported ASR/TTS models and old tutorials were removed. Use active examples under examples/ and docs under docs/source/.
    • uv sync reproduces the supported NeMo Speech stack and may replace Python/PyTorch/CUDA inside .venv. To keep your own stack, install PyTorch first, then use uv pip or pip.
    • SpeechLM2 compiled acceleration is optional. Use the supported Docker build for TE/FlashAttention/Mamba/grouped-GEMM/DeepEP performance paths.

    SpeechLM2 and NeMo Automodel Backend

    SpeechLM2 now supports training SpeechLM models with NeMo Automodel through SALMAutomodel, targeting both dense and MoE LLM backbones such as Nemotron 3.

    • SALMAutomodel adds an Automodel-backed SALM path with native LoRA, deferred configure_model() initialization, shard-aware distributed loading, and Automodel-owned mesh creation (#15447).
    • AutomodelParallelStrategy supports FSDP2, HSDP, TP, CP, and EP, letting SpeechLM training combine sharded data parallelism, tensor/model partitioning, long-context sequence sharding, and MoE expert routing (#15447, #15648, #15679, #15773).
    • Optimized backend support now covers Transformer Engine, FlashAttention, Mamba/state-space kernels, grouped GEMM for MoE experts, and DeepEP for expert-parallel all-to-all communication (#15737, #15758, #15679).
    • THD packed-sequence training reduces padding waste in variable-length speech batches and is the supported path for CP long-audio training (#15679).
    • Long-audio support was expanded with encoder chunking, activation-checkpointing controls, CP-safe data handling, and fixes around dtype/checkpoint restoration (#15648, #15679, #15686, #15716).
    • Export and serving improved with vLLM integration, HF/vLLM-ready checkpoint export, backbone-native chat templates, offline HF export, and buffered SALM inference (#15364, #15520, #15623, #15736).
    • Data format support now includes ShareGPT conversations, indexed ShareGPT JSONL, and WebDataset-backed ShareGPT conversations (#15316, #15410).

    Nemotron VoiceChat Training Modules

    NeMo Speech 3.0 adds the train/eval modules behind Nemotron VoiceChat.

    • Added Nemotron VoiceChat speech-decoder modules for the response-generation side of the duplex stack (#15066).
    • Added DuplexSTT training and inference for generating agent text from user speech plus text context (#15092).
    • Added Duplex/EAR-TTS speech-generation pieces used by VoiceChat, including MagpieTTS decoder integration and semantic-codec training support (#15277, #15524).
    • Added the joint NemotronVoiceChat STT + TTS class for validation, offline speech-to-speech inference, and export workflows (#15456).
    • Added formatter/reproducibility work for the VoiceChat speech decoder, with faster training and half-precision inference support (#15583).
    • Expanded Voice Agent examples for Nemotron Nano v2/v3, MagpieTTS, tool calling, audio logging, and README guidance (#14325, #14704, #15243, #15269, #15318, #15547, #15642).
    • Hardened Voice Agent behavior around default Parakeet EOU STT, text aggregation, end-of-bot handling, RTVI messages, empty tools, and logging (#1
  2. v2.7.3NVIDIA Neural Modules 2.7.32026-04-23 · 2026-04-23 17:40 UTC
    查看更新说明

    Highlights

    Uncategorized:

    • beep boop 🤖: Bumping nemo to v2.7.3 by @nemo-automation-bot[bot] :: PR: #15552
    • remove experimental sclite file by @nithinraok :: PR: #15572
    • fix: Remove nemo_class arg in import_hf.py by @chtruong814 :: PR: #15596
    • fix: Use RestrictedUnpickler in nemo.lightning.io.mixin by @chtruong814 :: PR: #15597
    • cp: fix: Remove diskcache from requirements (15630) into r2.7.0 by @chtruong814 :: PR: #15635
  3. v2.7.2NVIDIA Neural Modules 2.7.22026-03-25 · 2026-03-25 19:47 UTC
    查看更新说明

    ASR

    • cp: Fix numba-cuda and cuda-python installation and usage (#15506) by @chtruong814 :: PR: #15540

    Uncategorized:

    • beep boop 🤖: Bumping nemo to v2.7.2 by @nemo-automation-bot[bot] :: PR: #15535
  4. v2.7.1NVIDIA Neural Modules 2.7.12026-03-20 · 2026-03-20 23:42 UTC
    查看更新说明

    ASR

    • cp: Fix cuda-python usage for CUDA graphs (#15416) by @ko3n1g :: PR: #15471

    Uncategorized:

  5. v2.7.0NVIDIA Neural Modules 2.7.02026-02-26 · 2026-02-26 03:26 UTC
    查看更新说明

    Highlights

    Starting with the next release, NeMo 2.8.0, the following collections will be removed: avlm, diffusion, llm, multimodal, multimodal-autoregressive, nlp, speechlm, vision, vlm, and this repo will focus solely on speech tasks: ASR, TTS, speaker diarization, and speech enhancement.

    Detailed Changelogs:

    ASR
    • Enable CUDA graphs in streaming tests by @artbataev :: PR: #14953
    • Update ctc-segmentation by @chtruong814 :: PR: #14991
    • check asr models by @nithinraok :: PR: #14989
    • Unified inference of streaming ASR by @naymaraq :: PR: #14817
    • Update numba to numba-cuda and update cuda python bindings usage by @chtruong814 :: PR: #15018
    • Fixing lines for multispeaker pipeline by @tango4j :: PR: #15030
    • Inference optimization for cache-aware pipelines by @naymaraq :: PR: #15035
    • fix loading of hyb ctc rnnt bpe models when using from pretrained by @nithinraok :: PR: #15042
    • removed old buffered CTC script by @naymaraq :: PR: #15061
    • remove nlp related notebooks by @nithinraok :: PR: #15070
    • Update MagpieTTS model with latest changes by @blisc :: PR: #15031
    • ASR inference: expose RNN-T decoding params for context biasing by @artbataev :: PR: #15091
    • update notebook by @nithinraok :: PR: #15093
    • Fix: Obsolete Attribute [SDE] by @Jorjeous :: PR: #15105
    • Upgrade NeMo ASR tutorials from Mozilla/CommonVoice to Google/FLEURS by @KunalDhawan :: PR: #15103
    • Add support for AIS batch loading for ASR audio processing by @gaikwadabhishek :: PR: #15102
    • Multi-Talker Parakeet Streaming - NeMo Documents and Tutorial Notebooks PR 03 by @tango4j :: PR: #15025
    • [Fix] Fix the notebook errors on multispeaker data simulation and end to end diarization training by @tango4j :: PR: #15149
    • Streaming transducer inference: fix memory usage, improve WER by @artbataev :: PR: #15148
    • Execute with subprocess list by @nithinraok :: PR: #15165
    • Chunking fix by @nune-tadevosyan :: PR: #15163
    • ASR Decoding: allow fallback to CUDA graphs without while loops by @artbataev :: PR: #15173
    • remove nlp/modules by @dimapihtar :: PR: #14934
    • Asr numpy 2 fix by @nithinraok :: PR: #15166
    • Adding flexible input sources for Diarization Mixin by @tango4j :: PR: #15184
    • Add support for streaming speech translation by @naymaraq :: PR: #15132
    • Confidence fix get_correct_marks by @nune-tadevosyan :: PR: #15128
    • Chunking edge cases by @nune-tadevosyan :: PR: #15182
    • update subprocess cmd by @nithinraok :: PR: #15218
    • Changes required for enabling prompt based models in Nemo Inference by @arushidNV :: PR: #15036
    • Fixing the missing sample_rate argument in mixin calling in Sortformer model file by @tango4j :: PR: #15228
    • Fix audio tensor loading canary2 by @nithinraok :: PR: #15265
    • Fix word confidence return by @nithinraok :: PR: #15249
    • feat(asr): add optional auxiliary timestamp model restoration for Canary by @chaosido :: PR: #15268
    • Performance: Optimize .nemo tar extraction & model config processing by @paulirish :: PR: #15245
    • fix speech commands notebook by @nithinraok :: PR: #15290
    • fix timestamps processing with audio tensor input by @nithinraok :: PR: #15291
    • Update conv_asr.py preventing unnecessary calculations by @tamilselvan0x0 :: PR: #15239
    • Bump to pytorch 25.11 by @chtruong814 :: PR: #15247
    • Add FeatureBuffer support to Cache-Aware streaming pipeline by @arushidNV :: PR: #15188
    • Per-Stream Phrase Boosting in ASR Decoding

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Project Status: Active -- The project has reached a stable, usable state and is being actively developed. CodeQL NeMo Speech license Release version Python version PyPi total downloads Code style: black

    NVIDIA NeMo Speech

    Checkout our HuggingFace🤗 collection for the latest open weight checkpoints and demos!

    Updates

    NeMo Speech 3.0 is now available as release v3.0.0 and in the 26.07.00 NeMo Speech NGC container. The final NeMo release before the repository split was v2.7.3, available in the 26.04 NeMo NGC container.

    • 2026-10: Nemotron 3.5 Transcribe is now available: an open-weight, offline speech LLM for 40 languages and recordings up to one hour. Control transcription with instructions and vocabulary context, request speaker-attributed transcripts with word timestamps, translate speech, and ask questions about audio. Start with the NeMo Speech quickstart or try the demo.
    • 2026-07: MagpieTTS v2607 has been released with support for 3 new languages (Ar, Ko, Pt) + 9 existing languages (En, Es, De, Fr, Vi, It, Zh, Hi, Ja). Try out the demo!
    • 2026-06: Nemotron-3.5-ASR-Streaming-0.6B has been released with 40 languages supported, controllable latency 80ms-1s, and 240-2400 1xH100 concurrent streams. Built on cache-aware Fastconformer architecture.
    • 2026-04: Parakeet-unified-en-0.6b has been released with high-quality offline and streaming (with a minimum latency of 160ms) inference in one model for English language with punctuation and capitalization support.
    • 2026-03: Nemotron 3 VoiceChat is now released in Early Access. Built on the Nemotron Nano v2 LLM backbone with Nemotron speech and TTS decoder, VoiceChat delivers full-duplex, natural, interruptible conversations with low latency. Try out the demo and apply for early access.
    • 2026-03: Nemotron-Speech-Streaming v2603 has been updated. It has been trained on a larger and more diverse corpus, resulting in lower WER across all latency modes. Try out the demo and check out the NIM.
    • 2026-03: MagpieTTS v2602 has been released with support for 9 languages (En, Es, De, Fr, Vi, It, Zh, Hi, Ja).
    • 2026-01: Nemotron-Speech-Streaming was released: One checkpoint that enables users to pick their optimal point on the latency-accuracy Pareto curve!
    • 2026-01: MagpieTTS v2512 was released.
    • 2026: This repo has pivoted to focus on audio, speech, and multimodal LLMs. For the final pre-split NeMo release with support for additional modalities, see v2.7.3.
    • 2025-08: Parakeet V3 and Canary V2 have been released with speech recognition and translation support for 25 European languages.
    • 2025-06: Canary-Qwen-2.5B has been released with record-setting 5.63% WER on English Open ASR Leaderboard.

    Introduction

    NVIDIA NeMo Speech is built for researchers and PyTorch developers working on Speech models including Automatic Speech Recognition (ASR), Text to Speech (TTS), and Speech LLMs. It is designed to help you efficiently create, customize, and deploy new AI models by leveraging existing code and pre-trained model checkpoints.

    For technical documentation, please see the NeMo Speech Developer Documentation.

    Requirements

    NeMo Speech works with the Python, PyTorch, and CUDA versions of your choosing:

    • Python 3.12 or above
    • PyTorch 2.7 or above (CPU, CUDA, etc. — your choice)
    • NVIDIA GPU + CUDA (required for training; recommended for inference)

    If you already have a Python/PyTorch/CUDA stack that satisfies those minimums, NeMo Speech installs on top of it without replacing it, so your existing PyTorch build is kept (see the install options below). The versions pinned in uv.lock and shipped in the official container — Python 3.13, PyTorch 2.11 with CUDA 12.9 or PyTorch 2.12 with CUDA 13.2 — are simply the combinations we actively test and support. They make setup turnkey and reproducible, but they are not a hard requirement.

    As of Pytorch 2.6, torch.load defaults to using weights_only=True. Some model checkpoints may require using weights_only=False. In this case, you can set the env var TORCH_FORCE_NO_WEIGHTS_ONLY_LOAD=1 before running code that uses torch.load. However, this should only be done with trusted files. Loading files from untrusted sources with more than weights only can have the risk of arbitrary code execution.

    Developer Documentation

    VersionDescription
    3.0.0 (latest release)NeMo Speech 3.0.0 documentation
    NightlyDocumentation for the latest main branch

    Install NeMo Speech

    The recommended way to install NeMo Speech is from source with uv, which reproduces our actively-tested stack from the committed uv.lock. If you need different Python/PyTorch/CUDA versions, NeMo Speech also installs over your existing environment via pip — see the pip fallback below.

    From source with uv (recommended)

    git clone https://github.com/NVIDIA-NeMo/Speech.git
    cd Speech
    uv sync --extra all --extra cu13     # CUDA 13.x (recommended) — use --extra cu12 for CUDA 12.x
    

    This installs our supported stack (Python 3.13, PyTorch 2.12, CUDA 13.2) into .venv/ with NeMo Speech editable. Add --group test for the test suite or --group docs to build the docs; run tools via uv run <cmd> or activate with source .venv/bin/activate. On Linux, cu12 and cu13 are mutually exclusive — pass exactly one (cu13 is the default). For the exact container baseline, add --locked --python 3.13 (the path the Dockerfile and CI use).

    SpeechLM2 / Automodel: the Automodel backend runs without any compiled dependencies. It can optionally benefit from dedicated accelerated backends (Transformer Engine, FlashAttention, Mamba, grouped-GEMM/MoE, DeepEP) for better performance — these source-built kernels come from the compiled (Hopper/Blackwell) or compiled-a100 (A100) extras, built by docker/Dockerfile (GPU_TARGET=h100plus / a100). See the installation guide for the full list and build details.

    Docker (turnkey, our supported stack)

    The latest prebuilt NeMo Speech image is the 26.07.00 NGC container:

    docker pull nvcr.io/nvidia/nemo-speech:26.07.00
    docker run --rm -it --gpus all -v "$PWD:/workspace" nvcr.io/nvidia/nemo-speech:26.07.00 bash
    

    To build the container from source (CUDA 13 / H100+ by default):

    git clone https://github.com/NVIDIA-NeMo/Speech.git
    cd Speech
    docker buildx build -f docker/Dockerfile -t nemo-speech .          # CUDA 13 / H100+ (default)
    docker run --rm -it --gpus all -v "$PWD:/workspace" nemo-speech bash
    

    For A100, set GPU_TARGET=a100 — A100 works with both CUDA 12 and CUDA 13 (CUDA 13, the default base image, is recommended; the CUDA 12 base is a convenience). See the header of docker/Dockerfile for all build arguments (BASE_IMAGE, GPU_TARGET).

    From PyPI with pip (fallback — bring your own versions)

    Prefer your own Python/PyTorch/CUDA? Install your PyTorch first (any version ≥ 2.7 for your CPU/CUDA/etc. target — see the PyTorch install matrix), then add NeMo Speech and it keeps your build. uv pip (uv's fast, pip-compatible installer) works like pip:

    uv pip install 'nemo-toolkit[asr,tts]'   # or plain: pip install 'nemo-toolkit[asr,tts]'
    

    ⚠️ Do not use uv sync --locked for a bring-your-own stack — it applies uv.lock and replaces your Python/PyTorch/CUDA with the supported baseline. Use uv pip/pip here; reserve uv sync --locked for reproducing our stack.

    To instead pull our pinned PyTorch build, add the CUDA extra and the matching wheel index (pip/uv pip do not read uv's project index config, so --extra-index-url is required):

    pip install 'nemo-toolkit[asr,tts,cu13]' --extra-index-url https://download.pytorch.org/whl/cu132   # CUDA 13.x
    pip install 'nemo-toolkit[asr,tts,cu12]' --extra-index-url https://download.pytorch.org/whl/cu129   # CUDA 12.x
    

    Contribute to NeMo Speech

    We welcome community contributions! Please refer to CONTRIBUTING.md for the process.

    Licenses

    NeMo Speech is licensed under the Apache License 2.0.