chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用NVIDIA Triton和TensorRT-LLM部署TTS應(yīng)用的最佳實踐

NVIDIA英偉達企業(yè)解決方案 ? 來源:NVIDIA英偉達企業(yè)解決方案 ? 2025-06-12 15:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

針對基于 Diffusion 和 LLM 類別的 TTS 模型,NVIDIA Triton 和 TensorRT-LLM 方案能顯著提升推理速度。在單張 NVIDIA Ada Lovelace GPU 上,F(xiàn)5-TTS 模型每秒可生成長達 25 秒的音頻;Spark-TTS 在流式合成場景下,首包延遲可低至 200 余毫秒。

Text-to-Speech (TTS) 是智能語音技術(shù)的核心組成部分。隨著大模型時代的到來,TTS 模型的參數(shù)量和計算量持續(xù)增長,如何高效利用 GPU 部署 TTS 模型,構(gòu)建低延遲、高吞吐的生產(chǎn)級應(yīng)用,已成為開發(fā)者日益關(guān)注的焦點。

本文將圍繞兩款 Github 社區(qū)流行的 TTS 模型——F5-TTS[1]和 Spark-TTS[2]——詳細介紹運用NVIDIA Triton推理服務(wù)器和 TensorRT-LLM 框架實現(xiàn)高效部署的實踐經(jīng)驗,包括部署方案的實現(xiàn)細節(jié)、具體使用方法及最終的推理效果等。開發(fā)者可根據(jù)不同的應(yīng)用場景選擇合適的方案,并可利用性能分析工具調(diào)整配置,以最大化利用 GPU 資源。

方案介紹

當(dāng)前主流的 TTS 大模型大致可分為兩類:非自回歸擴散模型和自回歸 LLM 模型。非自回歸擴散模型因其解碼速度快,易于實現(xiàn)高吞吐性能;而自回歸 LLM 模型則以更佳的擬人效果和對流式合成的天然支持為特點。實踐中,常有方案將兩者結(jié)合,先使用自回歸 LLM 生成語義 Token,再利用非自回歸擴散模型生成音頻細節(jié)。

d0d9b86c-4602-11f0-b715-92fbcf53809c.png

圖1: TTS 部署方案結(jié)構(gòu)

F5-TTS

F5-TTS 是一款非自回歸擴散 TTS 模型,它基于 DiT (Diffusion Transformer) 和 Flow-matching 算法,移除了傳統(tǒng)非自回歸 TTS 模型中的 Duration 模塊,使模型能直接學(xué)習(xí)文本到語音特征的對齊。

其推理加速方案利用NVIDIA TensorRT-LLM加速計算密集的 DiT 模塊,并采用 NVIDIA TensorRT 優(yōu)化 Vocos 聲碼器,最后通過 NVIDIA Triton 進行服務(wù)部署。

方案地址:

https://github.com/SWivid/F5-TTS/tree/main/src/f5_tts/runtime/triton_trtllm

Spark-TTS

Spark-TTS 是一款自回歸 LLM TTS 模型,它采用經(jīng)過擴詞表預(yù)訓(xùn)練的 Qwen2.5-0.5B LLM 來預(yù)測 Speech Token,并基于 VAE Decoder 重構(gòu)最終音頻。

其部署方案通過 NVIDIA TensorRT-LLM 加速基于 LLM 的語義 Token 預(yù)測模塊,并借助 NVIDIA Triton 串聯(lián)其余組件,支持離線合成與流式推理兩種模式。

方案地址:

https://github.com/SparkAudio/Spark-TTS/tree/main/runtime/triton_trtllm

方案性能

我們從WenetSpeech4TTS 測試集[3]中選取了 26 組 Prompt Audio 和 Target Text 音頻文本對,在 Zero-shot 音色克隆任務(wù)上測試了模型的推理性能。測試細節(jié)如下:

d0ed5cd2-4602-11f0-b715-92fbcf53809c.png

F5-TTS

針對 F5-TTS,我們在 Offline 模式下(即直接在本地進行推理,不涉及服務(wù)部署和請求調(diào)度)測試了 TensorRT-LLM 推理方案的性能:

測試結(jié)果如下(Batch Size 固定為 1,因當(dāng)前 F5-TTS 版本暫不支持 Batch 推理;Flow-matching 推理步數(shù)固定為 16):

d0fb5a62-4602-11f0-b715-92fbcf53809c.png

如上表所示,與原生 PyTorch 實現(xiàn)(默認啟用 SDPA 加速)相比,NVIDIA TensorRT-LLM方案在 Ada Lovelace GPU 上實現(xiàn)了約 3.6 倍的加速,每秒可生成的音頻時長從 7 秒提升至 25 秒。

Spark-TTS

對于 Spark-TTS,我們在 Client-Server 模式下(即客戶端向服務(wù)器發(fā)送請求)測試了端到端推理服務(wù)的性能。測試結(jié)果如下(Offline 模式不統(tǒng)計首包延遲,Streaming 模式首包音頻長度為 1 秒):

d153dc50-4602-11f0-b715-92fbcf53809c.png

上表結(jié)果中,LLM 模塊默認啟用了 TensorRT-LLM 的inflightbatching 模式。為模擬多路并發(fā)場景,我們基于 Python asyncio 庫實現(xiàn)了一個異步并發(fā)客戶端。此部署方案在 Ada Lovelace GPU 上,每秒可生成約 15 秒音頻,流式模式下的首包延遲低至 200 余毫秒。

快速上手

本節(jié)將指導(dǎo)您如何快速部署和測試 F5-TTS 與 Spark-TTS 模型。在此之前,建議您先克隆對應(yīng)的代碼倉庫,并進入runtime/triton_trtllm目錄操作。

F5-TTS

詳細步驟請參考F5-TTS/src/f5_tts/runtime/triton_trtllm/README.md和run.sh腳本。

1. 最簡部署 (Docker Compose):這是啟動 F5-TTS 服務(wù)最快捷的方式。

# 根據(jù)您的模型選擇,例如 F5TTS_Base
MODEL=F5TTS_Base docker compose up

(注意:F5TTS_v1_Base的支持可能仍在開發(fā)中,請檢查項目 README)

2. 手動部署與服務(wù)啟動:如果您需要更細致地控制部署流程,可以使用run.sh腳本分階段執(zhí)行。

# 腳本參數(shù):  [model_name]
# 例如,執(zhí)行階段0到4,使用 F5TTS_Base 模型
bashrun.sh04F5TTS_Base

這個命令會依次執(zhí)行以下主要步驟:

Stage 0:下載 F5-TTS 模型文件。

Stage 1:轉(zhuǎn)換模型權(quán)重為 TensorRT-LLM 格式并構(gòu)建引擎。

Stage 2:導(dǎo)出 Vocos 聲碼器為 TensorRT 引擎。

Stage 3:構(gòu)建 Triton 推理服務(wù)器所需的模型倉庫。

Stage 4:啟動 Triton 推理服務(wù)器。

3. 測試服務(wù):服務(wù)啟動后,您可以使用提供的客戶端腳本進行測試。

gRPC 客戶端 (數(shù)據(jù)集 Benchmark):

# 示例命令,對應(yīng) run.sh stage 5
# 具體參數(shù)(如 num_task, dataset)請根據(jù)需求調(diào)整
python3 client_grpc.py --num-tasks 1 --huggingface-dataset yuekai/seed_tts --split-name wenetspeech4tts --log-dir ./log_f5_grpc_bench

HTTP 客戶端(單句測試):

# 示例命令,對應(yīng) run.sh stage6
# audio, reference_text, target_text 請?zhí)鎿Q為您的測試數(shù)據(jù)
python3 client_http.py--reference-audio ../../infer/examples/basic/basic_ref_en.wav 
           --reference-text "Some call me nature, others call me mother nature." 
           --target-text "I don't really care what you call me. I've been a silent spectator, watching species evolve, empires rise and fall. But always remember, I am mighty and enduring."

4. OfflineTensorRT-LLM基準測試:如果您希望直接測試 TensorRT-LLM 在 Offline 模式下的性能(不通過 Triton 服務(wù)),可以執(zhí)行run.sh中的 Stage 7。

# 此命令對應(yīng) run.sh stage 7
# 環(huán)境變量如 F5_TTS_HF_DOWNLOAD_PATH, model, vocoder_trt_engine_path, F5_TTS_TRT_LLM_ENGINE_PATH
# 通常在 run.sh 腳本頂部定義,請確保它們已正確設(shè)置或替換為實際路徑。
batch_size=1
model=F5TTS_Base# 示例模型名稱
split_name=wenetspeech4tts
backend_type=trt
log_dir=./log_benchmark_batch_size_${batch_size}_${split_name}_${backend_type}


# 確保以下路徑變量已設(shè)置,或直接替換
# F5_TTS_HF_DOWNLOAD_PATH=./F5-TTS (示例)
# F5_TTS_TRT_LLM_ENGINE_PATH=./f5_trt_llm_engine (示例)
# vocoder_trt_engine_path=vocos_vocoder.plan (示例)


rm-r$log_dir2>/dev/null
# ln -s ... # 符號鏈接通常在 run.sh 中處理,按需創(chuàng)建
torchrun --nproc_per_node=1 
benchmark.py --output-dir$log_dir
--batch-size$batch_size
--enable-warmup 
--split-name$split_name
--model-path$F5_TTS_HF_DOWNLOAD_PATH/$model/model_1200000.pt 
--vocab-file$F5_TTS_HF_DOWNLOAD_PATH/$model/vocab.txt 
--vocoder-trt-engine-path$vocoder_trt_engine_path
--backend-type$backend_type
--tllm-model-dir$F5_TTS_TRT_LLM_ENGINE_PATH||exit1

Spark-TTS

詳細步驟請參考Spark-TTS/runtime/triton_trtllm/README.md和run.sh腳本。

1. 最簡部署 (Docker Compose):

dockercompose up

2. 手動部署與服務(wù)啟動:使用run.sh腳本進行分階段部署。

#腳本參數(shù):
 [service_type]
#service_type 可為'streaming'或'offline',影響模型倉庫配置
#例如,執(zhí)行階段0到3,部署為 offline 服務(wù)
bash run.sh 0 3 offline

此命令會執(zhí)行:

Stage 0:下載 Spark-TTS 模型。

Stage 1:轉(zhuǎn)換模型權(quán)重并構(gòu)建 TensorRT 引擎。

Stage 2:根據(jù)指定的 service_type (streaming/offline) 創(chuàng)建 Triton 模型倉庫。

Stage 3:啟動 Triton 推理服務(wù)器。

3. 測試服務(wù) (Client-Server 模式):服務(wù)啟動后,可使用客戶端腳本進行測試。

gRPC 客戶端 (數(shù)據(jù)集 Benchmark):此命令對應(yīng)run.sh中的 stage 4。

# 示例:測試 offline 模式,并發(fā)數(shù)為2
# bash run.sh 4 4 offline
# 其核心命令如下:
num_task=2
mode=offline# 或 streaming
python3 client_grpc.py 
  --server-addr localhost 
  --model-name spark_tts 
  --num-tasks$num_task
  --mode$mode
  --huggingface-dataset yuekai/seed_tts 
  --split-name wenetspeech4tts 
  --log-dir ./log_concurrent_tasks_${num_task}_${mode}

單句測試客戶端: 此命令對應(yīng)run.sh中的 stage 5。

Streaming 模式 (gRPC):

# bash run.sh55streaming
# 其核心命令如下:
python client_grpc.py 
 --server-addr localhost 
 --reference-audio ../../example/prompt_audio.wav 
 --reference-text $prompt_audio_transcript 
 --target-text $target_audio_text 
 --model-name spark_tts 
 --chunk-overlap-duration 0.1 
 --mode streaming

Offline 模式 (HTTP):

# bash run.sh 5 5 offline
# 其核心命令如下:
python client_http.py 
  --reference-audio ../../example/prompt_audio.wav 
  --reference-text$prompt_audio_transcript
  --target-text$target_audio_text
  --model-name spark_tts

兼容 OpenAI 格式的 API

許多開源對話項目 (如 OpenWebUI)[4]已支持 OpenAI 格式的 TTS API。為方便開發(fā)者集成,我們提供了兼容 OpenAI API 的服務(wù),用法如下:

git clone https://github.com/yuekaizhang/Triton-OpenAI-Speech.git
cdTriton-OpenAI-Speech


docker compose up


curl$OPENAI_API_BASE/audio/speech 
 -H"Content-Type: application/json"
 -d '{
 "model":"spark_tts",
 "input":$target_audio_text,
 "voice":"leijun",
 "response_format":"pcm"
  }'|
sox-t raw-r16000-e signed-integer-b16-c1-output3_from_pcm.wav

總結(jié)

無論是 F5-TTS 或是 Spark-TTS,都可以看到 NVIDIA Triton 推理服務(wù)器和 TensorRT-LLM 框架可以大幅提升 TTS 模型的推理速度,也方便開發(fā)者進行模型部署。我們將持續(xù)增加對更多語音多模態(tài)模型的部署支持。

除了TTS,NVIDIA 技術(shù)團隊也為多種社區(qū)流行的多模態(tài)模型開發(fā)了最佳實踐,詳細方案介紹以及教程,請參閱 mair-hub[5]項目。

近期我們還將舉辦一場和該主題相關(guān)的在線研討會,歡迎大家報名參加,共同交流和探討。

作者

張悅鎧

張悅鎧是 NVIDIA 解決方案架構(gòu)師,碩士畢業(yè)于約翰霍普金斯大學(xué),導(dǎo)師為 Shinji Watanabe 教授,主要研究方向為語音識別。NVIDIA 中文語音識別解決方案主要開發(fā)者,對基于 GPU 的語音識別服務(wù)部署及優(yōu)化有豐富經(jīng)驗。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    5431

    瀏覽量

    108275
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    5036

    瀏覽量

    133739
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3611

    瀏覽量

    51431
  • LLM
    LLM
    +關(guān)注

    關(guān)注

    1

    文章

    337

    瀏覽量

    1144

原文標題:使用 NVIDIA Triton 和 TensorRT-LLM 部署 TTS 應(yīng)用的最佳實踐

文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    DeepSeek R1 MTP在TensorRT-LLM中的實現(xiàn)與優(yōu)化

    TensorRT-LLMNVIDIA Blackwell GPU 上創(chuàng)下了 DeepSeek-R1 推理性能的世界紀錄,Multi-Token Prediction (MTP) 實現(xiàn)了大幅提速
    的頭像 發(fā)表于 08-30 15:47 ?3509次閱讀
    DeepSeek R1 MTP在<b class='flag-5'>TensorRT-LLM</b>中的實現(xiàn)與優(yōu)化

    TensorRT-LLM初探(一)運行l(wèi)lama

    TensorRT-LLM正式出來有半個月了,一直沒有時間玩,周末趁著有時間跑一下。
    的頭像 發(fā)表于 11-16 17:39 ?2062次閱讀
    <b class='flag-5'>TensorRT-LLM</b>初探(一)運行l(wèi)lama

    如何在魔搭社區(qū)使用TensorRT-LLM加速優(yōu)化Qwen3系列模型推理部署

    TensorRT-LLM 作為 NVIDIA 專為 LLM 推理部署加速優(yōu)化的開源庫,可幫助開發(fā)者快速利用最新 LLM 完成應(yīng)用原型驗證與產(chǎn)
    的頭像 發(fā)表于 07-04 14:38 ?1434次閱讀

    TensorRT-LLM中的分離式服務(wù)

    在之前的技術(shù)博客中,我們介紹了低延遲[1] 和高吞吐[2] 場景的優(yōu)化方法。對于生產(chǎn)部署,用戶還關(guān)心在滿足特定延遲約束的情況下,每個 GPU 的吞吐表現(xiàn)。本文將圍繞“吞吐量-延遲”性能場景,介紹 TensorRT-LLM 分離式服務(wù)的設(shè)計理念、使用方法,以及性能研究結(jié)果。
    的頭像 發(fā)表于 08-27 12:29 ?1065次閱讀
    <b class='flag-5'>TensorRT-LLM</b>中的分離式服務(wù)

    《電子發(fā)燒友電子設(shè)計周報》聚焦硬科技領(lǐng)域核心價值 第16期:2025.06.16--2025.06.20

    、使用NVIDIA TritonTensorRT-LLM部署TTS應(yīng)用的最佳
    發(fā)表于 06-20 19:50

    《電子發(fā)燒友電子設(shè)計周報》聚焦硬科技領(lǐng)域核心價值 第17期:2025.06.23--2025.06.27

    ://www.brongaenegriffin.com/d/6734478.html 10、使用NVIDIA TritonTensorRT-LLM部署TTS
    發(fā)表于 06-27 18:24

    基于NVIDIA Triton的AI模型高效部署實踐

    NVIDIA Triton 推理服務(wù)器(以前稱為 TensorRT 推理服務(wù)器)是一款開源軟件,可簡化深度學(xué)習(xí)模型在生產(chǎn)環(huán)境中的部署。借助 Trit
    的頭像 發(fā)表于 06-28 15:49 ?2434次閱讀

    現(xiàn)已公開發(fā)布!歡迎使用 NVIDIA TensorRT-LLM 優(yōu)化大語言模型推理

    NVIDIA 于 2023 年 10 月 19 日公開發(fā)布 TensorRT-LLM ,可在 NVIDIA GPU 上加速和優(yōu)化最新的大語言模型(Large Language Models)的推理性
    的頭像 發(fā)表于 10-27 20:05 ?1702次閱讀
    現(xiàn)已公開發(fā)布!歡迎使用 <b class='flag-5'>NVIDIA</b> <b class='flag-5'>TensorRT-LLM</b> 優(yōu)化大語言模型推理

    NVIDIA加速微軟最新的Phi-3 Mini開源語言模型

    NVIDIA 宣布使用 NVIDIA TensorRT-LLM 加速微軟最新的 Phi-3 Mini 開源語言模型。TensorRT-LLM 是一個開源庫,用于優(yōu)化從 PC 到云端的
    的頭像 發(fā)表于 04-28 10:36 ?1348次閱讀

    魔搭社區(qū)借助NVIDIA TensorRT-LLM提升LLM推理效率

    “魔搭社區(qū)是中國最具影響力的模型開源社區(qū),致力給開發(fā)者提供模型即服務(wù)的體驗。魔搭社區(qū)利用NVIDIA TensorRT-LLM,大大提高了大語言模型的推理性能,方便了模型應(yīng)用部署,提高了大模型產(chǎn)業(yè)應(yīng)用效率,更大規(guī)模地釋放大模型的
    的頭像 發(fā)表于 08-23 15:48 ?1404次閱讀

    TensorRT-LLM低精度推理優(yōu)化

    本文將分享 TensorRT-LLM 中低精度量化內(nèi)容,并從精度和速度角度對比 FP8 與 INT8。首先介紹性能,包括速度和精度。其次,介紹量化工具 NVIDIA TensorRT Model
    的頭像 發(fā)表于 11-19 14:29 ?2086次閱讀
    <b class='flag-5'>TensorRT-LLM</b>低精度推理優(yōu)化

    NVIDIA TensorRT-LLM Roadmap現(xiàn)已在GitHub上公開發(fā)布

    感謝眾多用戶及合作伙伴一直以來對NVIDIA TensorRT-LLM的支持。TensorRT-LLM 的 Roadmap 現(xiàn)已在 GitHub 上公開發(fā)布!
    的頭像 發(fā)表于 11-28 10:43 ?996次閱讀
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>TensorRT-LLM</b> Roadmap現(xiàn)已在GitHub上公開發(fā)布

    解鎖NVIDIA TensorRT-LLM的卓越性能

    NVIDIA TensorRT-LLM 是一個專為優(yōu)化大語言模型 (LLM) 推理而設(shè)計的庫。它提供了多種先進的優(yōu)化技術(shù),包括自定義 Attention Kernel、Inflight
    的頭像 發(fā)表于 12-17 17:47 ?1399次閱讀

    NVIDIA TensorRT-LLM中啟用ReDrafter的一些變化

    Recurrent Drafting (簡稱 ReDrafter) 是蘋果公司為大語言模型 (LLM) 推理開發(fā)并開源的一種新型推測解碼技術(shù),該技術(shù)現(xiàn)在可與 NVIDIA TensorRT-LLM 一起使用。
    的頭像 發(fā)表于 12-25 17:31 ?1036次閱讀
    在<b class='flag-5'>NVIDIA</b> <b class='flag-5'>TensorRT-LLM</b>中啟用ReDrafter的一些變化

    TensorRT-LLM的大規(guī)模專家并行架構(gòu)設(shè)計

    之前文章已介紹引入大規(guī)模 EP 的初衷,本篇將繼續(xù)深入介紹 TensorRT-LLM 的大規(guī)模專家并行架構(gòu)設(shè)計與創(chuàng)新實現(xiàn)。
    的頭像 發(fā)表于 09-23 14:42 ?370次閱讀
    <b class='flag-5'>TensorRT-LLM</b>的大規(guī)模專家并行架構(gòu)設(shè)計