0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NVIDIA Riva用于AI应用程序的GPU加速SDK

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-02 10:44 次阅读

语音人工智能用于各种应用,包括授权人工智能的呼叫中心、虚拟助理的语音接口以及视频会议中的实时字幕。语音人工智能包括自动语音识别( ASR )和文本语音转换( TTS )。 ASR 管道接收原始音频并将其转换为文本, TTS 管道接收文本并将其转换为音频。

开发和运行这些实时语音人工智能服务是一项复杂而艰巨的任务。构建语音 AI 应用程序需要数十万小时的音频数据、基于特定用例构建和自定义模型的工具,以及可扩展的部署支持。它还意味着实时运行,与用户进行自然交互的时间远低于 300 毫秒。 NVIDIA Riva 简化了开发语音 AI 服务的端到端流程,并为类人交互提供实时性能。

Riva SDK

NVIDIA Riva 是用于开发语音 AI 应用程序的 GPU 加速 SDK 。 Riva 旨在帮助您轻松快速地访问对话 AI 功能。只需几个命令,您就可以通过 API 操作访问高性能服务并尝试演示。

Diagram shows workflow starting from pretrained models in NGC, TAO toolkit for retraining the models and Riva for optimized speech AI skills to generate high-performance inference.

图 1 . Riva 构建语音应用程序的工作流

Riva SDK 包括 pretrained speech and language models 、 NVIDIA TAO Toolkit ,用于在自定义数据集上微调这些模型,以及用于语音识别、语言理解和语音合成的优化端到端技能。

使用 Riva ,您可以轻松地对数据上的最新模型进行微调,以更深入地了解其特定上下文。优化推理以提供运行时间为 150 毫秒( ms )的实时服务,而在 CPU 纯平台上需要 25 秒。

特定于任务的 AI 服务和 gRPC 端点提供现成的高性能 ASR 、 NLP 和 TTS 。所有这些人工智能服务都经过数千小时的公共和内部数据集培训,以达到高精度。您可以开始使用预训练的模型,或者使用自己的数据集对其进行微调,以进一步提高模型性能。

Riva 使用 NVIDIA Triton Inference Server 为多个模型提供服务,以实现高效、稳健的资源分配,并在高吞吐量、低延迟和高精度方面实现高性能。

Riva 技能概述

Riva 为实时转录和虚拟助理等用例提供高度优化的语音识别和语音合成服务。语音识别技能在各种真实世界、特定领域的数据集上进行培训和评估。它包括来自电信、播客和医疗保健的词汇,以在生产用例中提供世界级的准确性。

与 NVIDIA V100 GPU 上的 Tacotron 2 和 WaveGlow 模型相比, Riva 文本到语音或语音合成技能可生成类似人类的语音,并使用非自回归模型在 NVIDIA A100 GPU 上提供 12 倍的性能。此外,该服务使您能够为每个品牌和虚拟助理创建一个自然定制的声音,每天 30 分钟的演员数据。

Diagram shows capabilities in Riva Speech Recognition and Speech Synthesis services such as support for both batch and streaming mode, multiple sampling rates (8,16,22,32, 44, 48 kHz), and models such as Jasper, QuartzNet, CitriNet, Tacotron2, WaveGlow, Fastpitch, and HiFiGAN.

图 2 . Riva 服务能力

为了充分利用 GPU 的计算能力, Riva 基于 NVIDIA Triton 推理服务器,为神经网络和集成管道提供服务,以便与 NVIDIA TensorRT 高效运行。

Riva 服务通过 gRPC 端点可访问的 API 操作公开,这些操作隐藏了所有复杂性。图 3 显示了系统的服务器端。 gRPC API 操作由运行在 Docker 容器中的 API 服务器公开。他们负责处理所有语音和 NLP 传入和传出数据。

Diagram shows the Riva client applications such as desktop, mobile, and laptop interactions with Riva speech recognition and speech synthesis pipelines.

图 3 . Riva 服务管线

API 服务器向 NVIDIA Triton 发送推断请求并接收结果。

NVIDIA Triton 是后端服务器,可同时处理多个 GPU 上的多个神经网络或集成管道的多个推理请求。

对于会话 AI 应用程序,将延迟保持在给定阈值以下至关重要。这种延迟要求转化为推断请求一到达就执行。要使 GPU 饱和并提高性能,必须增加批大小并延迟推理执行,直到收到更多请求并形成更大的批。

NVIDIA Triton 还负责在一个请求和另一个请求之间切换网络的上下文。

Riva 可以通过从 NGC 下载适当的模型和容器的简单脚本直接安装在裸机上,也可以通过 Helm chart 将其部署在 Kubernetes 上。

下面简要介绍一下如何与 Python 交互。 Riva 接口通过简单的 Python API 操作,使客户端与 Riva 服务器的通信更加容易。例如,下面介绍如何通过三个步骤创建对现有 TTS Riva 服务的请求。

首先,导入 Riva API :

import src.riva_proto.riva_tts_pb2 as rtts
import src.riva_proto.riva_tts_pb2_grpc as rtts_srv
import src.riva_proto.riva_audio_pb2 as ri

接下来,创建到 Riva 端点的 gRPC 通道:

channel = grpc.insecure_channel('localhost:50051')
riva_tts = rtts_srv.RivaSpeechSynthesisStub(channel)

然后,创建一个 TTS 请求:

req = rtts.SynthesizeSpeechRequest()
req.text = "We know what we are, but not what we may be?"
req.language_code = "en-US" req.encoding = ri.AudioEncoding.LINEAR_PCM req.sample_rate_hz = 22050 req.voice_name = "ljspeech" resp = riva_tts.Synthesize(req)
audio_samples = np.frombuffer(resp.audio, dtype=np.float32)

使用数据自定义模型

使用 NVIDIA TAO Toolkit ,您可以在 Riva 中使用定制的训练模型(图 4 )。 NVIDIA TAO Toolkit 是一种无编码工具,用于在特定于域的数据集上微调模型。

图 4 。 NVIDIA TAO 工具包管道

例如,要进一步提高 ASR 转录文本的易读性和准确性,请向 ASR 系统添加自定义标点符号和大小写模型,以生成没有这些特征的文本。

从预训练的 BERT 模型开始,第一步是准备数据集。对于培训数据集中的每个单词,目标是预测以下内容:

单词后面的标点符号。

这个词是否应该大写。

数据集准备就绪后,下一步是通过运行先前提供的脚本进行培训。完成培训并达到所需的最终精度后,使用附带的脚本为 NVIDIA Triton 创建模型存储库。

NVIDIA Riva Speech Skills 文档包含有关如何训练或微调其他模型的更多详细信息。这篇文章只展示了使用 TAO 工具包进行定制的众多可能性中的一种。

在 Riva 中部署模型

Riva 是为大规模对话 AI 而设计的。为了帮助您在不同的服务器上高效、可靠地为模型提供服务, NVIDIA 使用 Helm 图表提供了按钮式模型部署(图 5 )。

Diagram shows the workflow for deploying TAO model as a Riva skill and highlights the TensorRT optimizations and Triton Inference Server under the hood.

图 5 。通过修改可用的舵图,可以在 Riva 中部署模型

NGC catalog 中提供的舵图配置可以针对自定义用例进行修改。您可以更改与要部署的模型、存储它们的位置以及如何公开服务相关的设置。

结论

Riva 是 NVIDIA Developer Program 成员的公开测试版。对于您的实时转录、虚拟助理或自定义语音实现, Riva 将支持您的开发。如果您正在大规模部署, Riva Enterprise 将为您大规模部署,并包括 AI 专家的支持。

关于作者

Davide Onofrio 是 NVIDIA 的高级深度学习软件技术营销工程师。他在 NVIDIA 专注于深度学习技术开发人员关注内容的开发和演示。戴维德在生物特征识别、虚拟现实和汽车行业担任计算机视觉机器学习工程师已有多年经验。他的教育背景包括米兰理工学院的信号处理博士学位。

Vinh Nguyen 是一位深度学习的工程师和数据科学家,发表了 50 多篇科学文章,引文超过 2500 篇。在 NVIDIA ,他的工作涉及广泛的深度学习和人工智能应用,包括语音、语言和视觉处理以及推荐系统。

Siddharth Sharma 是NVIDIA 加速计算的高级技术营销经理。在加入NVIDIA 之前, Siddharth 是 Mathworks Simulink 和 Stateflow 的产品营销经理,与汽车和航空航天公司密切合作,采用基于模型的设计来创建控制软件。

Alex Qi 是英伟达 AI 软件集团的产品经理。她的重点是对话 AI 框架( Riva )和多媒体流 AI / ML ( Maxine )的 AI 软件和应用程序。在加入 NVIDIA 之前,她在领导技术和工程组织中各种角色的具有挑战性的技术项目方面拥有丰富的经验,如数据科学家、计算建模和设计工程。 Alex 拥有麻省理工学院的双学位硕士学位:麻省理工学院斯隆管理学院的 MBA 学位,以及工程机械工程学院的理学硕士学位,她在该学院主要研究机器人技术和人工智能。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    4985

    浏览量

    103035
  • 服务器
    +关注

    关注

    12

    文章

    9149

    浏览量

    85402
  • 人工智能
    +关注

    关注

    1791

    文章

    47260

    浏览量

    238432
收藏 人收藏

    评论

    相关推荐

    《CST Studio Suite 2024 GPU加速计算指南》

    的各个方面,包括硬件支持、操作系统支持、许可证、GPU计算的启用、NVIDIA和AMD GPU的详细信息以及相关的使用指南和故障排除等内容。 1. 硬件支持 - NVIDIA
    发表于 12-16 14:25

    NVIDIA加速AI在日本各行各业的应用

    企业借助基于 NVIDIA AI Enterprise 与 Omniverse 工业 AI 构建的创新中心和服务加速 AI 转型。
    的头像 发表于 11-19 15:45 232次阅读

    日本企业借助NVIDIA产品加速AI创新

    日本领先企业和大学正在使用 NVIDIA NeMo、NIM 微服务和 NVIDIA Isaac 加速 AI 创新。
    的头像 发表于 11-19 14:34 299次阅读

    NVIDIA RTX AI套件简化AI驱动的应用开发

    NVIDIA 于近日发布 NVIDIA RTX AI套件,这一工具和 SDK 集合能够帮助 Windows 应用开发者定制、优化和部署适用于
    的头像 发表于 09-06 14:45 447次阅读

    IB Verbs和NVIDIA DOCA GPUNetIO性能测试

    NVIDIA DOCA GPUNetIO 是 NVIDIA DOCA SDK 中的一个库,专门为实时在线 GPU 数据包处理而设计。它结合了 GPUDirect RDMA 和 GPUD
    的头像 发表于 08-23 17:03 611次阅读
    IB Verbs和<b class='flag-5'>NVIDIA</b> DOCA GPUNetIO性能测试

    HPE 携手 NVIDIA 推出 NVIDIA AI Computing by HPE,加速生成式 AI 变革

    by HPE 包含了可持续的加速计算产品组合以及全生命周期服务,将简化 AI 创造价值的过程,加速生成式 AI 的发展步伐。 NVIDIA
    的头像 发表于 06-21 14:39 367次阅读

    NVIDIA推出NVIDIA AI Computing by HPE加速生成式 AI 变革

    作为极具开创性的一站式“交钥匙”私有云人工智能(private-cloud AI)解决方案,NVIDIA AI Computing by HPE 包含了可持续的加速计算产品组合以及全生
    的头像 发表于 06-20 17:36 722次阅读

    借助NVIDIA DOCA 2.7增强AI 云数据中心和NVIDIA Spectrum-X

    NVIDIA DOCA 加速框架为开发者提供了丰富的库、驱动和 API,以便为 NVIDIA BlueField DPU 和 SuperNIC 创建高性能的应用程序和服务。
    的头像 发表于 05-29 09:22 495次阅读

    NVIDIA发布DeepStream 7.0,助力下一代视觉AI开发

    NVIDIA DeepStream 是一款功能强大的 SDK,能够提供用于构建端到端视觉 AI 管线的 GPU
    的头像 发表于 05-23 10:09 666次阅读
    <b class='flag-5'>NVIDIA</b>发布DeepStream 7.0,助力下一代视觉<b class='flag-5'>AI</b>开发

    利用NVIDIA AI Enterprise IGX在边缘赋能任务关键型AI

    NVIDIA SDK加速智慧城市、医疗和机器人等领域的 AI 应用方面发挥了重要作用。
    的头像 发表于 04-26 09:46 497次阅读
    利用<b class='flag-5'>NVIDIA</b> <b class='flag-5'>AI</b> Enterprise IGX在边缘赋能任务关键型<b class='flag-5'>AI</b>

    利用NVIDIA组件提升GPU推理的吞吐

    本实践中,唯品会 AI 平台与 NVIDIA 团队合作,结合 NVIDIA TensorRT 和 NVIDIA Merlin HierarchicalKV(HKV)将推理的稠密网络和热
    的头像 发表于 04-20 09:39 725次阅读

    NVIDIA数字人技术加速部署生成式AI驱动的游戏角色

    NVIDIA 在 GDC 2024 大会上宣布,Inworld AI 等领先的 AI 应用程序开发者,正在使用 NVIDIA 数字人技术
    的头像 发表于 04-09 10:08 669次阅读
    <b class='flag-5'>NVIDIA</b>数字人技术<b class='flag-5'>加速</b>部署生成式<b class='flag-5'>AI</b>驱动的游戏角色

    NVIDIA 推出 Blackwell 架构 DGX SuperPOD,适用于万亿参数级的生成式 AI 超级计算

    Blackwell GPU 连成一个整体,由NVIDIA 系统专家加速即时 AI 基础设施的部署       美国加利福尼亚州圣何塞 —— GTC —— 太平洋时间 2024 年 3
    发表于 03-19 10:56 425次阅读
    <b class='flag-5'>NVIDIA</b> 推出 Blackwell 架构 DGX SuperPOD,适<b class='flag-5'>用于</b>万亿参数级的生成式 <b class='flag-5'>AI</b> 超级计算

    如何选择NVIDIA GPU和虚拟化软件的组合方案呢?

    NVIDIA vGPU 解决方案能够将 NVIDIA GPU 的强大功能带入虚拟桌面、应用程序和工作站,加速图形和计算,使在家办公或在任何地
    的头像 发表于 01-12 09:26 1124次阅读
    如何选择<b class='flag-5'>NVIDIA</b> <b class='flag-5'>GPU</b>和虚拟化软件的组合方案呢?

    谷歌发布新的AI SDK,简化Gemini模型与Android应用程序的集成

    对于 Android 应用程序,Google 提供了 Google AI Client SDK for Android,它将 Gemini REST API 封装为惯用的 Kotlin API
    的头像 发表于 01-03 16:29 938次阅读