天貓精靈智能引擎團(tuán)隊(duì)、智能合成團(tuán)隊(duì)與 NVIDIA 團(tuán)隊(duì)合作,通過利用 NVIDIA TensorRT 加速流式語音合成(Text-to-Speech,以下簡(jiǎn)稱 TTS)深度學(xué)習(xí)模型,并借助 NVIDIA Triton 推理服務(wù)器在 NVIDIA T4 GPU 上進(jìn)行高效部署,幫助阿里巴巴天貓精靈流式 TTS 服務(wù)將吞吐提升 50%,首包延時(shí)降低 35%,大幅提升服務(wù)運(yùn)行效率,提升資源利用率。
天貓精靈(Tmall Genie)是阿里巴巴消費(fèi)者人工智能一級(jí)公司,于 2017 年 9 月發(fā)布第一代天貓精靈智能終端 X1。讓用戶以自然語言對(duì)話的交互方式,實(shí)現(xiàn)影音娛樂、購(gòu)物、信息查詢、生活服務(wù)等功能操作,成為消費(fèi)者的家庭助手。目前,天貓精靈已經(jīng)服務(wù)超過 3000 萬中國(guó)家庭,在三方權(quán)威統(tǒng)計(jì)中不僅智能音箱產(chǎn)品出貨量排名中國(guó)前列,其產(chǎn)品并已可連接 3 億以上的家庭 AIoT 生態(tài)設(shè)備。
除了智能音箱終端產(chǎn)品外,天貓精靈推出 AliGenie 開放平臺(tái),旨在構(gòu)建基于 AI 的多模態(tài)交互及服務(wù)系統(tǒng),為多種云應(yīng)用提供跨系統(tǒng)服務(wù)能力,實(shí)現(xiàn)端云協(xié)同、跨平臺(tái)多終端快速接入。該開放平臺(tái)提供高性能且高質(zhì)量的語音 AI 能力,包括多種不同音色的高度擬人、高度流暢的語音合成算法等。
此外,天貓精靈基于 AliGenie 開放平臺(tái),還提供基于芯片/模組的硬件解決方案,以及通用的熱門行業(yè)解決方案。專注生活多個(gè)領(lǐng)域,提供一站式解決方案。
本案例中負(fù)責(zé)實(shí)施的是天貓精靈智能引擎團(tuán)隊(duì)以及天貓精靈智能合成團(tuán)隊(duì)。天貓精靈智能合成團(tuán)隊(duì)負(fù)責(zé)語音合成等生成式算法的研究及開發(fā);天貓精靈智能引擎團(tuán)隊(duì)主要支撐天貓精靈業(yè)務(wù)線各項(xiàng)業(yè)務(wù)的工程化落地,如語音識(shí)別、語義理解、語音合成、圖像處理等 AI 核心場(chǎng)景。
流式 TTS 是天貓精靈工作流中最為重要的 AI 環(huán)節(jié)之一。在這一場(chǎng)景中,天貓精靈智能引擎團(tuán)隊(duì)面臨著如下挑戰(zhàn):
首先流式 TTS 對(duì)于首包延時(shí)有著嚴(yán)格要求,否則用戶將會(huì)因?yàn)檩^長(zhǎng)的反饋遲滯而感到不適,這就要求 TTS 工作管線的每個(gè)模塊的推理能夠高效地執(zhí)行。
另一方面,團(tuán)隊(duì)希望 TTS 服務(wù)的吞吐能夠達(dá)到較高水平,這就需要在服務(wù)端對(duì)收到的多個(gè)流式合成請(qǐng)求進(jìn)行 Batching 的處理。但流式 TTS 工作管線包含聲學(xué)模型和聲碼器等多個(gè)模塊,在 GPU 上進(jìn)行 Batching 操作需要正確維護(hù)和切換每個(gè)合成請(qǐng)求所需的模型狀態(tài),因此需要特別設(shè)計(jì)工作管線和調(diào)度邏輯。
最后,如何盡可能提升 GPU 資源利用率是降本增效的關(guān)鍵。最直接的思路便是在一張 GPU 上部署多個(gè)模型來提升利用率。因此,如何在同一張 GPU 上對(duì)多個(gè)模型進(jìn)行高效的調(diào)度和管理也成為了一個(gè)挑戰(zhàn)。
基于以上挑戰(zhàn),天貓精靈智能引擎團(tuán)隊(duì)、智能合成團(tuán)隊(duì)與 NVIDIA 解決方案架構(gòu)團(tuán)隊(duì)合作,采用NVIDIA TensorRT對(duì)模型進(jìn)行推理加速,并利用NVIDIA Triton 推理服務(wù)器在 T4 GPU 上進(jìn)行在線部署,形成了一套高效的流式 TTS 推理部署方案。在提升用戶體驗(yàn)的同時(shí),大幅降低了服務(wù)成本。
首先,該方案使用 TensorRT 對(duì)流式 TTS 工作管線中的每一個(gè)模型進(jìn)行優(yōu)化加速。我們將訓(xùn)練好的聲學(xué)模型和聲碼器,導(dǎo)出為 ONNX 模型格式,再使用 TensorRT 將 ONNX 模型轉(zhuǎn)換為最優(yōu)化的 TensorRT Engine。使用 TensorRT 加速的 TTS 模型,能顯著提升推理執(zhí)行的速度,從而盡可能壓縮首包延時(shí)。
另一方面,天貓精靈智能引擎團(tuán)隊(duì)與 NVIDIA 團(tuán)隊(duì)合作設(shè)計(jì)并實(shí)現(xiàn)了一種基于 Triton 的流式 TTS 推理部署管線。在該方案中,我們使用 Triton Custom Backend 實(shí)現(xiàn)串聯(lián) TTS 各個(gè)模型的調(diào)度管線。對(duì)于管線中的每一步推理處理,會(huì)調(diào)用部署在 Triton 上的 TTS TensorRT Engine。如此一來,Triton 便可將發(fā)送到服務(wù)端的 TTS 請(qǐng)求,有條不紊地調(diào)度到管線中的每個(gè)模塊進(jìn)行推理執(zhí)行。并且,在該管線中,我們實(shí)現(xiàn)了適用于 GPU 平臺(tái)的流式 TTS 高效調(diào)度機(jī)制,通過在服務(wù)端 Custom Backend 中維護(hù)每個(gè)合成請(qǐng)求的狀態(tài),實(shí)時(shí)地將模型輸入和狀態(tài)動(dòng)態(tài)聚合為對(duì) GPU 友好的 Batch,交由管線中各個(gè)模塊的 TensorRT Engine 進(jìn)行推理,從而大幅提升管線吞吐和 GPU 利用率,同時(shí)保證了對(duì)每個(gè)合成請(qǐng)求的快速響應(yīng)。此外,流式 TTS 中一句話的合成請(qǐng)求會(huì)對(duì)應(yīng)多個(gè)回包,每個(gè)回包承載一個(gè)音頻塊。針對(duì)這種一收多發(fā)的推理模式,我們利用 Triton 提供的 Decoupled Responses 機(jī)制,保證一個(gè)請(qǐng)求的多個(gè)回包能夠正確高效地發(fā)送給對(duì)應(yīng)的客戶端,使用戶能聽到完整且流暢的音頻。
最后,為了進(jìn)一步提升 GPU 資源利用率,該方案利用了 Triton 的 Concurrent Model Execution 特性。該特性將部署在 Triton 上的模型或模塊,以模型實(shí)例的方式管理:一個(gè)模型可以部署多個(gè)實(shí)例,不同模型的實(shí)例也可部署在同一GPU上。因此該方案開啟了 Concurrent Model Execution 后,同一個(gè) T4 GPU 上可部署多個(gè) TTS 發(fā)音模型,使得多個(gè)模型實(shí)例的推理在 GPU 算力資源充足時(shí)可以達(dá)到并行執(zhí)行。如此一來,GPU 算力資源可以被多個(gè)模型的并行執(zhí)行充分利用起來,達(dá)到降本增效的目的。
通過使用基于 NVIDIA TensorRT 和 Triton 推理服務(wù)器的流式 TTS 推理部署方案,天貓精靈 TTS 服務(wù)的吞吐提升約 50%,首包延時(shí)降低約 35% ,幫助天貓精靈節(jié)省了業(yè)務(wù)成本,提升了用戶體驗(yàn)。
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5238瀏覽量
105749 -
阿里巴巴
+關(guān)注
關(guān)注
7文章
1635瀏覽量
48073 -
TTS
+關(guān)注
關(guān)注
0文章
51瀏覽量
11087 -
天貓精靈
+關(guān)注
關(guān)注
4文章
96瀏覽量
11650
原文標(biāo)題:NVIDIA TensorRT 和 Triton 助力阿里巴巴天貓精靈顯著提升流式語音合成服務(wù)運(yùn)行效率
文章出處:【微信號(hào):NVIDIA-Enterprise,微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
阿里云是什么?企業(yè)不可不知的云端架構(gòu)服務(wù)!
阿里云爆發(fā)式的跨越

評(píng)論