NVIDIA(英伟达)最近开源了最新的Nemotron Speech ASR模型。
这是一款专攻低延迟、实时流式场景的语音识别模型。
做 AI 语音开发的朋友都知道,ASR(语音转文字)一直是实时交互中那块难啃的骨头。
尤其是 Streaming ASR(流式识别),长期面临着:准确率、延迟、计算成本,三者很难兼得。
传统的流式模型处理长语音时往往会有“累积延迟” —你说得越久,它识别得越慢,因为它要反复处理之前的上下文。
但英伟达这次发布的Nemotron Speech ASR,用一种极客的方式打破了这个魔咒。
单句转录锁定只需 24 毫秒。这意味着当你话音刚落的瞬间,AI 已经听懂并准备好回应了。这几乎超越了人类的神经反应速度。
1、缓存感知
为什么能做到单句 24ms 的锁定时间呢?
秘密在于它的架构设计 -缓存感知设计可高效处理连续音频流,专为低延迟语音代理应用程序交互而设计和优化的。
已经算过的语音特征,直接缓存进显存,永远不再重复算。
当新的音频帧进来时,它不再二次编码历史数据,而是直接调用缓存,只计算当前这几十毫秒的“增量”。
这就像是看书夹了书签。每次只读新的一页,前面读过的直接记在脑子里(显存里),完全不需要回头。
正是因为这种“增量计算”的特性,解决了长语音识别的痛点。
2、运行效率显著提升
与传统的缓冲流式传输方式相比,可提供更高的吞吐量。
这使得在相同的 GPU 内存限制下能够处理更多并行流,从而直接降低生产环境的运行成本。
整个端到端的延迟被控制在了500ms以内。
3、动态运行灵活
这一点非常工程向,也非常英伟达。
Nemotron Speech ASR 支持多档延迟模式:80 ms、160 ms、560 ms、1.12 s。
你可以在推理阶段,通过参数直接调整延迟模式
重点是:无需重新训练模型!一个模型,通吃所有场景,这大大降低了部署和维护成本。
还得额外提一点:该模型原生支持标点符号和大小写。
英伟达给的不是模型,是一整套能跑起来的语音 Agent,这点非常重要。
Nemotron Speech ASR 不是孤立模型,而是被放进了一套完整语音智能体方案里。
官方推出了 Nemotron Speech ASR 0.6B 参数模型。
要使用此模型进行训练、微调或推理,需要安装NVIDIA NeMo。
apt-get update && apt-get install -y libsndfile1 ffmpeg
pip install Cython packaging
pip install git+https://github.com/NVIDIA/NeMo.git@main#egg=nemo_toolkit[asr]加载模型
import nemo.collections.asr as nemo_asr
asr_model = nemo_asr.models.ASRModel.from_pretrained(model_name="nvidia/nemotron-speech-streaming-en-0.6b")流式推理:
推理脚本:https://github.com/NVIDIA-NeMo/NeMo/blob/main/examples/asr/asr_cache_aware_streaming/speech_to_text_cache_aware_streaming_infer.py
cdNeMo
python examples/asr/asr_cache_aware_streaming/speech_to_text_cache_aware_streaming_infer.py \
model_path=<model_path> \
dataset_manifest=<dataset_manifest> \
batch_size=<batch_size> \
att_context_size="[70,13]"\#setthe second value to the desired right context from {0,1,6,13}
output_path=<output_folder>还可以通过管道方法运行流式推理(配置文件同样在NeMo项目下):
from nemo.collections.asr.inference.factory.pipeline_builder import PipelineBuilder
from omegaconf import OmegaConf
# Path to the cache aware config file downloaded from above link
cfg_path ='cache_aware_rnnt.yaml'
cfg = OmegaConf.load(cfg_path)
# Pass the paths of all the audio files for inferencing
audios = ['/path/to/your/audio.wav']
# Create the pipeline object and run inference
pipeline = PipelineBuilder.build_pipeline(cfg)
output = pipeline.run(audios)
# Print the output
forentryinoutput:
print(entry['text'])NVIDIA Nemotron Speech ASR 的开源,释放了一个明确的信号:实时语音交互的瓶颈,正在从算法转移到应用。
当识别延迟不再是问题,当长语音不再卡顿,我们就可以构建出许多真正的语音智能体。
这次,英伟达是真的把地基给你打好了。就看大家如何应用了。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |