首頁騰訊雲 TACO Infer 助力自動語音識別推理業務 QPS 三倍提升 騰訊雲 TACO Infer 助力自動語音識別推理業務 QPS 三倍提升作者: Admin / 2023 年 3 月 3 日 導語 機器學習領域最重要的兩個問題是機器學習模型的生產(模型訓練)和機器學習模型的部署(模型推理)。其中,模型的部署關注兩個方面: 模型推理的性能問題:目標是通過計算圖層面的優化,算子層面的優化等方式,在保證模型效果的前提之下,提升模型計算(模型推理)的性能。 模型部署的工程問題:主要著眼於對模型部署過程中的整個模型的生命週期進行管理,降低模型部署的工程量。 目前常見的推理優化框架有側重於推理性能提升的 TensorRT、NVIDIA 基於 TensorRT 的 Triton、Tensorflow 社區的 tensorflow serving、微軟的 ONNX Runtime 等;有側重於降低模型部署的工程量的 Seldon、KFServing 等。 前者通常需要將模型轉化為某一特定格式,但通常需要圍繞模型服務自行實現模型自動發佈,模型灰度發佈,模型版本管理,服務監控,線上流量複製等一系列功能,工程量較大。後者提供了模型部署過程中的一整套功能,可有效降低模型部署落地時的工程量,但是性能一般不如前者。 騰訊雲自研的 TACO Infer 可以大幅提升推理性能 1.4~5.2 倍,並解決模型部署的問題,無侵入業務代碼,僅數行代碼改動即可實現業務升級。 什麼是 TACO Infer TACO Infer 是一款輕量易用、無縫集成已有深度學習框架的 AI 推理加速軟件,幫助客戶簡潔、無侵入業務代碼地一鍵式提升推理性能,無縫適配多種服務框架。 TACO Infer 有什麼厲害之處 市面上已經有各種各樣的推理優化框架,騰訊云為什麼還要推出自研推理加速軟件呢?其實 TACO Infer 要解決的,主要就是模型前端框架、硬件後端設備、軟件版本的組合爆炸帶來的工程調優複雜度問題。 首先,在軟硬件兼容性上,TACO Infer 支持 TensorFlow、PyTorch 等多種模型前端框架, 兼容 CPU、GPU、NPU 等多種加速芯片,且可無縫嵌入 TF Serving、TensorRT、Triton 等多種服務框架。 其次,在使用體驗上,TACO Infer 提供統一的優化接口,無論用戶使用 CPU、GPU、NPU 哪種後端設備,也無論 TensorFlow、PyTorch 或者 ONNX 哪種模型框架及版本,接口均保持一致。該接口接受未優化模型輸入,輸出優化後的模型。優化前後模型格式保持不變,對用戶透明無感,不改變業務部署方式。 最後,在性能提升上,TACO Infer 強大的可擴展性設計使得無論是開源社區的前沿加速方案還是硬件廠商的定製加速算子,都可集成在 TACO Infer 中,一站式整合多種開源優化方案,獲得 1.4~5.2 倍的推理加速。 技術上如何實現 獨創的 ModelFlow 設計理念 目前,主流深度學習框架採用“TensorFlow”的設計理念,即以 Tensor 作為核心數據在計算圖中流動(Flow)的方式完成計算過程。受此啟發,我們獨創了“ModelFlow”的設計理念,即以 Model 作為核心數據,在優化 Pipeline 中流動(Flow)的方式完成模型優化過程。 豐富的模型優化策略 TACO-Infer 支持以專家優化和編譯優化兩條優化路徑對深度學習模型分別進行優化。 在專家優化路徑,模型經過精心設計的跨框架複用的計算圖優化組件進行計算圖匹配,算子融合之後,被匹配的算子會被替換為基於專家優化庫進行加速的算子實現。 而在編譯優化路徑,模型經過編譯優化後端進行子圖編譯優化,高性能算子代碼生成之後,被匹配的算子會被替換為經過編譯技術加速的算子實現。同時,在模型優化過程中,TACO-Infer 會對相關性能參數進行自動搜索調優。最後,在性能評估階段,TACO-Infer 會實測模型,自動選擇最佳優化路徑,保證獲得最佳的模型優化性能。 自研的 AI 編譯優化後端 在傳統編譯器實現中,通常採用單層 IR 設計,如 LLVM。而 AI 模型具有更豐富的語義,更復雜的優化層次。單層 IR 設計不足以支撐。因此,AI 編譯器通常採用多層 IR(MLIR) 設計,以支持不同層次的優化。 TIDY(TACO Inference DYnamic shape compiler) 是我們自研的基於 MLIR 實現的 AI 編譯優化後端。TIDY 可以支持多種深度學習框架(TF/Pytorch),支持多種異構硬件(GPU/CPU),支持動態 shape。同時還可以靈活集成第三方專家優化庫,提升計算密集型算子的性能,與編譯優化技術一起提升模型整體性能。 TACO Infer 助力數美自動語音識別 QPS 3倍提升 在實際業務中,TACO Infer 也助力了多個客戶推理業務效能提升,在提高推理性能同時,節省算力成本。 作為騰訊雲的戰略合作伙伴,數美科技是一家在線業務風控解決方案提供商,提供支持文本、圖片、音頻、視頻等多種形式風險內容過濾的內容安全產品和解決營銷欺詐、交易風控、數據盜爬、欺詐廣告等業務風險問題的業務安全產品。產品形態主要是 SaaS 服務,注重性能延遲和業務併發能力。 數美在進行自動語音識別推理吞吐優化中發現,由於音頻數據特徵預處理負載較重,帶來的 IO、特徵計算耗時增加等問題尤為突出,此外未算子化的特徵計算需要額外的工程代碼實現,增加了運維和適配不同硬件的難度。 針對這樣的業務痛點,騰訊雲專家團隊與數美科技業務夥伴進行了深入交流和溝通,協同制定了優化方案,針對業務場景,在計算圖、AI 編譯優化、算子生成做了深度優化。 由於客戶性能主要受特徵前處理效率和模型前向推理性能影響,TACO 通過將音頻特徵計算算子化,從而將原先 CPU 親和的特徵計算合併到 ASR 模型裡,並且基於自研 AI 編譯器進一步實現子圖編譯優化增強和計算圖預處理,消除不必要分支,精簡推理模型。 數美使用 TACO Infer 優化後模型推理時延縮短70%,QPS 優化三倍,降低了業務部署成本,在同類競品中獲得了更大的性能和成本優勢。且 TACO Infer 適配了多種框架,不改變用戶模型格式,從而實現了客戶業務的無感遷移。 總結 騰訊雲秉承為客戶解決實際業務難題,創造增量價值的初衷,不僅要讓客戶在雲上業務可靠運行,還要輔助客戶真正發揮出雲服務器的算力性價比優勢。我們希望通過 TACO Train、TACO Infer、qGPU 共享技術等軟件附加值產品,助力客戶提升算力效率,降低業務成本,形成可持續發展的長期合作模式。 未來,TACO Infer 會不斷在軟硬件兼容性和性能提升上有提升,包括融合硬件廠商優化算子、自研 AI 編譯技術升級等。相信隨著 TACO Infer 的不斷發展,在保持易用性的基礎上,使用 TACO Infer 的性能收益將會越來越高,歡迎加入 TACO Infer 交流群,更多新特性敬請期待。