騰訊云 TI 平臺 TI-ONE 利用 NVIDIA Triton 推理服務器構造高性能推理服務部署平臺,使用戶能夠非常便捷地部署包括 TNN 模型在內的多種深度學習框架下獲得的 AI 模型,并且顯著提升推理服務的吞吐、提升 GPU 利用率。
騰訊云 TI 平臺(TencentCloud TI Platform)是基于騰訊先進 AI 能力和多年技術經驗,面向開發者、政企提供的全棧式人工智能開發服務平臺,致力于打通包含從數據獲取、數據處理、算法構建、模型訓練、模型評估、模型部署、到 AI 應用開發的產業 + AI 落地全流程鏈路,幫助用戶快速創建和部署 AI 應用,管理全周期 AI 解決方案,從而助力政企單位加速數字化轉型并促進 AI 行業生態共建。騰訊云 TI 平臺系列產品支持公有云訪問、私有化部署以及專屬云部署。
TI-ONE 是騰訊云 TI 平臺的核心產品之一,可為 AI 工程師打造的一站式機器學習平臺,為用戶提供從數據接入、模型訓練、模型管理到模型服務的全流程開發支持。騰訊云 TI 平臺 TI-ONE 支持多種訓練方式和算法框架,滿足不同 AI 應用場景的需求。
通常我們在 AI 模型訓練好之后,需要將其部署在云端形成 AI 服務,供應用的客戶端進行調用。但如何高效地進行推理服務的部署無疑是 AI 推理平臺需要面對的挑戰。
一方面,推理服務部署平臺需要支持多種不同深度學習框架訓練出來的模型,以滿足不同客戶對于不同框架的偏好,甚至需要支持一些自定義的推理框架,如 TNN[1] 等。
另一方面,部署平臺需要盡可能提升推理服務的性能,包括提升吞吐、降低延時,以及提升硬件資源利用率等,這就要求平臺對模型的部署和調度進行高效的優化。
最后,對于由前后處理、AI 模型等多個模塊組成的工作流,例如一些 AI 工作管線中除了深度學習模型之外還包含前后處理模塊,推理服務部署平臺也需要對各個模塊進行有條不紊且高效的串聯。以上這些需求,都需要對推理服務部署平臺進行精心的設計和實現。
針對以上挑戰,騰訊云 TI-ONE 充分利用 NVIDIA Triton 推理服務器構建高性能的推理部署解決方案,為多個行業場景的推理工作負載提升效率。
騰訊云將 Triton 集成進 TI-ONE 的推理部署服務中。行業客戶僅需將需要推理的模型上傳至 TI-ONE 平臺上,并選擇使用 Triton 作為推理后端框架,TI-ONE 便能自動地在 Kubernetes 集群上自動拉起 Triton 容器。在容器內,Triton 服務器將會啟動,并根據客戶選定的配置參數,自動地加載用戶上載的模型,以模型實例的方式管理起來,并對外提供推理服務請求的接口。
Triton 支持絕大部分主流深度學習框架的推理,包括 TensorRT, TensorFlow, PyTorch, ONNX Runtime 等。除此之外,Triton 還支持擴展自定義的推理框架 Backend。TNN 是騰訊自研的開源高性能、輕量級神經網絡推理框架,被廣泛應用于騰訊云行業解決方案的推理場景中。騰訊云遵循 Triton Backend API [2],實現了 Triton TNN Backend,使得 TNN 模型能夠直接被 Triton 推理服務器加載、管理以及執行推理。
圖1. 加入 TNN Backend 的 Triton 推理服務器架構示意圖
為了提升推理服務的性能、提升硬件資源利用率,騰訊云 TI-ONE 利用了 Triton 提供的 Dynamic Batching 功能。在部署推理服務時,用戶可選擇開啟該功能,Triton 則會自動地將到達服務端的零散推理請求(通常 batch size 較小)聚合成大的 batch,輸入對應的模型實例中進行推理。如此,GPU 在執行更大 batch size 的推理時能達到更高的利用率,從而提升服務的吞吐。且用戶可在 TI-ONE 平臺中設置將多個請求組合成 batch 的等待時長,以便在延時和吞吐之間權衡。不僅如此,TI-ONE 還利用 Triton 的 Concurrent Model Execution 功能,在每張 NVIDIA GPU 上同時部署相同或不同模型的多個模型實例,使得在單個模型較為輕量的情況下,通過多個模型實例的并行執行來充分利用 GPU 的計算資源,在提升 GPU 利用率的同時獲得更高的吞吐。
圖2. Triton Dynamic Batching 機制示意圖
最后,針對需要部署由多個模塊組合的 AI 工作管線的應用場景,TI-ONE 正與 NVIDIA 一起積極探索如何利用 Triton Ensemble Model 以及 Triton Python Backend,將前后處理模塊與 AI 模型有序地串聯在一起。其中,Triton Python Backend 能夠直接將現有的 Python 前后處理代碼封裝為可在 Triton 上部署的模塊;Triton Ensemble Model 是一種特殊的調度器,可通過配置文件定義多個模塊之間的連接關系,并自動地將推理請求在定義好的工作管線上進行有條不紊的調度。
目前,騰訊云 TI 平臺 TI-ONE 利用 NVIDIA Triton 已為多種不同的行業解決方案提供了高性能的推理服務,包括工業質檢、自動駕駛等業務場景,涉及到的圖像分類、對象檢測、以及實例分割等 AI 任務。
通過 Triton 提供的多框架支持以及擴展的 TNN Backend,無論用戶使用何種框架訓練 AI 模型,都能在 TI-ONE 上部署其推理服務,給了算法工程師更大的選擇自由度,節省了模型轉換的開銷。利用 Triton 的 Dynamic Batching 機制和 Concurrent Model Execution 功能, TI-ONE 在某一目標檢測場景部署 FasterRCNN ResNet50-FPN 模型,相比于使用 Tornado 部署框架在 NVIDIA T4 Tensor Core GPU 上最高可獲得 31.6% 的吞吐提升,如下圖所示:
圖 3. TI-ONE 中不同推理服務框架部署目標檢測模型時所實現的服務吞吐量對比
2022 騰訊云
此圖片依據由騰訊云提供數據所制作
在另一圖像分類業務中,TI-ONE 利用 Triton 的 Dynamic Batching 機制部署包含前后處理及模型推理的工作管線,結合 TNN 對推理的加速,在 1/2 T4 Tensor Core GPU 上,相比于 Python 實現的 HTTP Server 獲得最高 2.6 倍延時縮減及最高 2.5 倍吞吐的提升,如下表所示:
表 1. TI-ONE 中不同推理服務框架部署圖像分類模型時所實現的服務性能對比
2022 騰訊云
此表格依據由騰訊云提供數據所制作
未來,騰訊云 TI 平臺將與 NVIDIA 團隊繼續合作,探索利用 Triton 對復雜工作管線進行推理服務部署的解決方案,進一步為各個行業的 AI 推理場景提供更高效率、更低成本的推理平臺。
-
NVIDIA
+關注
關注
14文章
4978瀏覽量
102988 -
服務器
+關注
關注
12文章
9123瀏覽量
85328 -
AI
+關注
關注
87文章
30728瀏覽量
268887 -
騰訊云
+關注
關注
0文章
210瀏覽量
16782
原文標題:NVIDIA Triton 助力騰訊云 TI-ONE 平臺為行業解決方案提供高性能 AI 推理部署服務
文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業解決方案】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論