腾讯开源 TurboTransformers:自然语言处理推理加速工具
4 月 24 日,騰訊正式宣布開源 Transformer 推理加速工具 TurboTransformers。該工具面向自然語言處理領域中 Transformers 相關模型豐富的線上預測場景,在微信、騰訊云、QQ 看點等產品的線上服務中已經廣泛應用,這也是騰訊通過 Github 對外開源的第 100 個項目。
據了解,TurboTransformers 的誕生源于騰訊內部對開源協同的推動。2019 年初,騰訊技術委員會成立,下設開源協同、自研上云兩個項目組和對外開源管理辦公室,以此來促進內部代碼的開放共享和協同共建。TurboTransformers 來自于深度學習自然語言處理基礎平臺 TencentNLP Oteam,作為基礎性技術版塊,率先進行了開源協同的實踐,旨在搭建統一的深度學習 NLP (Natural Language Processing,自然語言處理)基礎平臺、提升研發效能。在內部對技術反復打磨的基礎上,該項目進一步對外開源。
在自然語言處理領域中,以 BERT 為代表的 Transformers 相關神經網絡模型是近年來最重要的模型創新。可以為閱讀理解、文章摘要、語義分類、同義改寫等 NLP 任務提供顯著的效果提升。但提高模型精度的同時,Transformes 相關模型也帶來了更多的計算量。由于深度學習的訓練和推理任務存在差異,訓練框架直接應用于線上推理并不能得到極致的性能。眾多模型算法工程師都遇到了訓練的模型效果很好,但因為響應延遲不滿足要求,導致模型無法上線的問題。
圖片包含 游戲機, 截圖 描述已自動生成TurboTransformers 是一款小而美的 Transformer 加速工具,就像它的名字所寓意的,Turbo(渦輪)可以增加發動機氧氣含量,從而帶來更大動力,使用 TurboTransformers 也可以讓你的推理引擎更加強勁。具體來說,它具有高速、實用、簡單三個特點:
1.優異的 CPU/GPU 性能表現。面向 Intel 多核 CPU 和 NVIDIA GPU 硬件平臺,通過核心融合和并行算法優化,TurboTransformers 充發揮硬件的各層級并行計算的能力。在多種 CPU 和 GPU 硬件上獲得了超過 PyTorch/TensorFlow 和目前主流優化引擎(如 onnxruntime-mkldnn/onnxruntime-gpu, torch JIT, NVIDIA faster transformers)的性能表現。
2.為 NLP 推理任務特點量身定制。TurboTransformers 可以支持變長輸入序列處理,無需序列補零、截斷或者分桶帶來的無用計算,也無需任何針對計算圖在推理前進行預調優的過程。
3.簡單的使用方式。TurboTransformers 支持 python 和 C++接口進行調用。TurboTransformers 支持 TensorFlow 和 PyTorch 預訓練模型的載入。它可以作為 huggingface/transformers 的推理加速插件,通過加入幾行 python 代碼獲得的 BERT 模型的端對端加速效果。
此前 TurboTransformers 已應用在騰訊內部多個線上 BERT 服務服務場景。其中微信常用問題回復服務獲得 1.88x 加速,公有云情感分析服務獲得 2.11x 加速,QQ 看點推薦服務獲得 13.6x 加速。和其他相關工具對比,TurboTransformers 在性能、使用方式上都具備優勢。
據了解,目前 TurboTransformers 的功能還相對有限,未來騰訊還會進一步對其優化,在開源后,TurboTransformers 也期待與社區和開發者一起共建。
隨著技術能力的不斷累積,以及以開源為代表的騰訊新代碼文化的興起,騰訊在開源領域表現亮眼:在全球最大的代碼托管平臺 Github 上,騰訊已經累計開源了 100 個項目,覆蓋云原生、大數據、AI、安全、硬件等多個熱門的技術方向,并累計獲得了超過 29 萬 Star 數,躋身國際上有影響力的開源企業之一。“騰訊希望在科研領域投入更多力量,把‘科技向善’納入公司新的使命與愿景。我們將通過內外部開放源代碼等方式,積極參與‘全球科技共同體’的共建。”在 2019 年智博會上,騰訊公司董事會主席兼首席執行官馬化騰表明了騰訊對開源的重視。
今年年初,騰訊高級執行副總裁、云與智慧產業事業群總裁湯道生也談及開源對騰訊的重要意義,他表示:“開源不再是開發者的個人熱情,它已成為許多技術驅動型產業背后重要的創新推動力。在科技向善的使命與愿景指引下,騰訊將進一步擁抱開源,與廣大開發者一起創造正向價值。”
在 2020 年,騰訊陸續推出了針對云的場景研發的 Linux 操作系統 TencentOS Server、視頻評估算法 DVQA 等多個開源項目,同時也積極用科技力量助力全球抗擊疫情,3 月 27 日,騰訊健康新冠疫情模塊國際版(TH_COVID19_International)、“新冠肺炎 AI 自查助手”(COVID-19 self-triage assistant)也接連開源,向全球開放科技能力。
總結
以上是生活随笔為你收集整理的腾讯开源 TurboTransformers:自然语言处理推理加速工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 银行核心海量数据无损迁移:TDSQL数据
- 下一篇: 三年之久的 etcd3 数据不一致 bu