出品 | AI科技大本营(ID:rgznai100)

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)也接连开源,向全球开放科技能力。

推荐阅读

  • 那个分分钟处理 10 亿节点图计算的 Plato,现在怎么样了?

  • 看似毫不相干,哲学与机器学习竟有如此大的交集

  • 黑客用上机器学习你慌不慌?这 7 种窃取数据的新手段快来认识一下

  • “谷歌杀手”发明者,科学天才 Wolfram

  • 数据库激荡 40 年,深入解析 PostgreSQL、NewSQL 演进历程

  • 5分钟!就能学会以太坊 JSON API 基础知识

  • 你点的每个“在看”,我都认真当成了AI

腾讯第100个开源项目:微信开源推理加速工具TurboTransformers相关推荐

  1. 微信开源推理加速工具 TurboTransformers,性能超越 PyTorch/TensorFlow 与主流优化引擎

    腾讯宣布开源 Transformer 推理加速工具 TurboTransformers.该工具面向自然语言处理领域中 Transformers 相关模型丰富的线上预测场景,据介绍,其在微信.腾讯云.Q ...

  2. 腾讯开源 TurboTransformers:自然语言处理推理加速工具

    4 月 24 日,腾讯正式宣布开源 Transformer 推理加速工具 TurboTransformers.该工具面向自然语言处理领域中 Transformers 相关模型丰富的线上预测场景,在微信 ...

  3. 苹果回应iPhone邮件漏洞;GitHub连续3天爆严重宕机情况;腾讯开源Transformer推理加速工具| 极客头条...

    整理 | 屠敏 头图 | CSDN 下载自东方 IC 快来收听极客头条音频版吧,智能播报由标贝科技提供技术支持. 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦 ...

  4. 阿里好的开源项目有哪些(善用工具)

    阿里好的开源项目有哪些(善用工具) 一.总结 一句话总结:善用工具,可以极大的提升开发效率. 1.阿里好的开源项目自己目前可能用得上的有哪些(举两个)? JSON处理器 fastjson 开源数据库A ...

  5. Android开源项目以及开源框架,各种UI实现效果

    开源项目和开源框架第一期 图片 Android-Universal-Image-Loader★15152 - 异步图像加载程序 glide★15006 - 媒体管理和图片加载框架 picasso★13 ...

  6. 阿里云PolarDB-X荣获“2022 OSCAR 尖峰开源项目及开源社区”奖

    9月16日,OSCAR 2022 开源产业大会在京召开,会议由中国信息通信研究院.中国通信标准化协会主办,中国通信标准化协会云计算标准和开源推进委员会承办.此次会议以"千行百业 可信开源&q ...

  7. Android开源项目以及开源框架,各种UI实现效果。

    开源项目和开源框架第一期 图片 Android-Universal-Image-Loader★15152 - 异步图像加载程序 glide★15006 - 媒体管理和图片加载框架 picasso★13 ...

  8. [Android开源项目] GitHub开源项目总结 (转)

    [Android开源项目] GitHub开源项目总结 GitHub开源项目android-styled-dialogs http://neast.cn/forum.php?mod=viewthread ...

  9. 我们的开源项目-暨开源力量公开课年度庆典活动

    我们的开源项目-暨开源力量公开课年度庆典活动 我们的开源项目-暨开源力量公开课年度庆典活动 大会介绍 还记得2012年"我们的开源项目"活动么? 2012年3月-7月,历时5个月, ...

最新文章

  1. linux oracle 远程exp_linux单独安装oracle客户端及exp/imp工具配置
  2. webstorm2018破解方法
  3. RDLC系列之六 打印纸张的大小(未解决)
  4. android 获取Service(服务)的运行状态
  5. ios开发之 -- 自动轮播图创建
  6. 15款提高表格操作的jQuery插件
  7. springcloud-gateway启动报错ApplicationContextException: Unable to start ServletWebServerApplicationConte
  8. qq空间代码查询_Mysql千万级大数据查询优化经验,一点课堂(多岸学院)
  9. 利用token 防止表单重复提交
  10. excel自动排班表_18个施工进度计划横道图,Excel版自动生成表,操作简单明了
  11. 用Resource Hacker辅助升级相关测试
  12. linux hg 图形,Linux下Mercurial (hg)配置说明
  13. 微信小程序电子签名实现并识别文字
  14. linux时间转excel,linux时间戳转换【操作模式】
  15. mysql analyze index_MYSQL优化 Analyze Table
  16. 深圳大学使用路由器登陆校园网,openwrt登陆drcom,d版教程
  17. GCD中dispatch_semaphore(信号量)的使用方法
  18. 【转】图解领带的打法10种
  19. 什么是单工,半双工,全双工
  20. 阿里云云服务器无法通过公网ip地址访问网站的解决方法

热门文章

  1. Selenium2+python自动化25-js处理日历控件(修改readonly属性)
  2. Spring MVC配置
  3. 使用Photoshop制作网页模板
  4. Windows Server 2008 R2 Beta VHD镜像文件发布
  5. 2018-3-27 专家系统
  6. vue 前端框架 (三)
  7. 2017年50道Java线程面试题
  8. 灵活性是原则性基础上的灵活
  9. 下拉菜单被挡住了,DIV置于最底层的方法
  10. android小技巧(二)