0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用NVIDIA Triton解决人工智能推断挑战

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-10-11 14:24 次阅读

本节讨论了 Triton 提供的一些开箱即用的关键新特性、工具和服务,可应用于生产中的模型部署、运行和扩展。

使用新管理服务建立业务流程模型

Triton 为高效的多模型推理带来了一种新的模型编排服务。该软件应用程序目前处于早期使用阶段,有助于以资源高效的方式简化 Kubernetes 中 Triton 实例的部署,其中包含许多模型。此服务的一些关键功能包括:

按需加载模型,不使用时卸载模型。

尽可能在单个 GPU 服务器上放置多个模型,从而有效地分配 GPU 资源

管理单个模型和模型组的自定义资源需求

大型语言模型推理

在自然语言处理( NLP )领域,模型的规模呈指数级增长(图 1 )。具有数千亿个参数的大型 transformer-based models 可以解决许多 NLP 任务,例如文本摘要、代码生成、翻译或 PR 标题和广告生成。

poYBAGNFDCSAfRe2AAKT7MsSCuo971.png

图 1.NLP 模型规模不断扩大

但这些型号太大了,无法安装在单个 GPU 中。例如,具有 17.2B 参数的图灵 NLG 需要至少 34 GB 内存来存储 FP16 中的权重和偏差,而具有 175B 参数的 GPT-3 需要至少 350 GB 内存。要使用它们进行推理,您需要多 GPU 和越来越多的多节点执行来为模型服务。

Triton 推理服务器有一个称为 Faster transformer 的后端,它为大型 transformer 模型(如 GPT 、 T5 等)带来了多 GPU 多节点推理。大型语言模型通过优化和分布式推理功能转换为更快的 transformer 格式,然后使用 Triton 推理服务器跨 GPU 和节点运行。

图 2 显示了使用 Triton 在 CPU 或一个和两个 A100 GPU 上运行 GPT-J ( 6B )模型时观察到的加速。

pYYBAGNFDCWAIP-hAAA3lzufBFs393.png

图 2.Faster transformer 后端的模型加速

基于树的模型推断

Triton 可用于在 CPU 和 GPU 上部署和运行 XGBoost 、 LightGBM 和 scikit learn RandomForest 等框架中基于树的模型,并使用 SHAP 值进行解释。它使用去年推出的 Forest Inference Library ( FIL )后端实现了这一点。

使用 Triton 进行基于树的模型推理的优点是在机器学习深度学习模型之间的推理具有更好的性能和标准化。它特别适用于实时应用程序,如欺诈检测,其中可以轻松使用较大的模型以获得更好的准确性。

使用模型分析器优化模型配置

高效的推理服务需要为参数选择最佳值,例如批大小、模型并发性或给定目标处理器的精度。这些值指示吞吐量、延迟和内存需求。在每个参数的值范围内手动尝试数百种组合可能需要数周时间。

Triton 模型分析器工具将找到最佳配置参数所需的时间从几周减少到几天甚至几小时。它通过对给定的目标处理器脱机运行数百个具有不同批大小值和模型并发性的推理模拟来实现这一点。最后,它提供了如图 3 所示的图表,可以方便地选择最佳部署配置。

poYBAGNFDCeAWsZxAAH1B-byIl4140.png

图 3.模型分析器工具的输出图表

使用业务逻辑脚本为管道建模

pYYBAGNFDCmAB09gAADh5j7ouxU278.png

图 4.模型集成与业务逻辑脚本

使用 Triton ®声波风廓线仪的模型集成功能,您可以构建复杂的模型管道和集成,其中包含多个模型以及预处理和后处理步骤。业务逻辑脚本使您能够在管道中添加条件、循环和步骤的重新排序。

使用 Python 或 C ++后端,您可以定义一个自定义脚本,该脚本可以根据您选择的条件调用 Triton 提供的任何其他模型。 Triton 有效地将数据传递到新调用的模型,尽可能避免不必要的内存复制。然后将结果传递回自定义脚本,您可以从中继续进一步处理或返回结果。

图 4 显示了两个业务逻辑脚本示例:

Conditional execution 通过避免执行不必要的模型,帮助您更有效地使用资源。

Autoregressive models 与 transformer 解码一样,要求模型的输出反复反馈到自身,直到达到某个条件。业务逻辑脚本中的循环使您能够实现这一点。

自动生成模型配置

Triton 可以自动为您的模型生成配置文件,以加快部署速度。对于 TensorRT 、 TensorFlow 和 ONNX 模型,当 Triton 在存储库中未检测到配置文件时,会生成运行模型所需的最低配置设置。

Triton 还可以检测您的模型是否支持批推理。它将max_batch_size设置为可配置的默认值。

您还可以在自己的自定义 Python 和 C ++后端中包含命令,以便根据脚本内容自动生成模型配置文件。当您有许多模型需要服务时,这些特性特别有用,因为它避免了手动创建配置文件的步骤。

解耦输入处理

poYBAGNFDCqARHzoAAA7fs3VtOQ520.png

图 5.通过解耦输入处理实现的一个请求到多个响应场景

虽然许多推理设置需要推理请求和响应之间的一对一对应,但这并不总是最佳数据流。

例如,对于 ASR 模型,发送完整的音频并等待模型完成执行可能不会带来良好的用户体验。等待时间可能很长。相反, Triton 可以将转录的文本以多个短块的形式发送回来(图 5 ),从而减少了第一次响应的延迟和时间。

通过 C ++或 Python 后端的解耦模型处理,您可以为单个请求发送多个响应。当然,您也可以做相反的事情:分块发送多个小请求,然后返回一个大响应。此功能在如何处理和发送推理响应方面提供了灵活性。

开始可扩展 AI 模型部署

您可以使用 Triton 部署、运行和缩放 AI 模型,以有效缓解您在多个框架、多样化基础设施、大型语言模型、优化模型配置等方面可能面临的 AI 推理挑战。

Triton 推理服务器是开源的,支持所有主要模型框架,如 TensorFlow 、 PyTorch 、 TensorRT 、 XGBoost 、 ONNX 、 OpenVINO 、 Python ,甚至支持 GPU 和 CPU 系统上的自定义框架。探索将 Triton 与任何应用程序、部署工具和平台、云端、本地和边缘集成的更多方法。

关于作者

Shankar Chandrasekaran 是 NVIDIA 数据中心 GPU 团队的高级产品营销经理。他负责 GPU 软件基础架构营销,以帮助 IT 和 DevOps 轻松采用 GPU 并将其无缝集成到其基础架构中。在 NVIDIA 之前,他曾在小型和大型科技公司担任工程、运营和营销职位。他拥有商业和工程学位。

Neal Vaidya 是 NVIDIA 深度学习软件的技术营销工程师。他负责开发和展示以开发人员为中心的关于深度学习框架和推理解决方案的内容。他拥有杜克大学统计学学士学位。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4700

    浏览量

    128674
  • 服务器
    +关注

    关注

    12

    文章

    9010

    浏览量

    85163
  • 深度学习
    +关注

    关注

    73

    文章

    5491

    浏览量

    120958
收藏 人收藏

    评论

    相关推荐

    嵌入式和人工智能究竟是什么关系?

    嵌入式和人工智能究竟是什么关系? 嵌入式系统是一种特殊的系统,它通常被嵌入到其他设备或机器中,以实现特定功能。嵌入式系统具有非常强的适应性和灵活性,能够根据用户需求进行定制化设计。它广泛应用于各种
    发表于 11-14 16:39

    《AI for Science:人工智能驱动科学创新》第6章人AI与能源科学读后感

    了电力的实时平衡和优化,有效降低了电网的运行成本和故障率。 此外,书中还讨论了人工智能在能源科学研究中的挑战和机遇。这些挑战包括数据质量、算法优化、隐私保护等方面,而机遇则体现在技术创新、产业升级
    发表于 10-14 09:27

    AI for Science:人工智能驱动科学创新》第4章-AI与生命科学读后感

    很幸运社区给我一个阅读此书的机会,感谢平台。 《AI for Science:人工智能驱动科学创新》第4章关于AI与生命科学的部分,为我们揭示了人工智能技术在生命科学领域中的广泛应用和深远影响。在
    发表于 10-14 09:21

    《AI for Science:人工智能驱动科学创新》第一章人工智能驱动的科学创新学习心得

    ,还促进了新理论、新技术的诞生。 3. 挑战与机遇并存 尽管人工智能为科学创新带来了巨大潜力,但第一章也诚实地讨论了伴随而来的挑战。数据隐私、算法偏见、伦理道德等问题不容忽视。如何在利用AI提升科研效率
    发表于 10-14 09:12

    risc-v在人工智能图像处理应用前景分析

    RISC-V在人工智能图像处理领域的应用前景十分广阔,这主要得益于其开源性、灵活性和低功耗等特点。以下是对RISC-V在人工智能图像处理应用前景的详细分析: 一、RISC-V的基本特点 RISC-V
    发表于 09-28 11:00

    人工智能ai 数电 模电 模拟集成电路原理 电路分析

    人工智能ai 数电 模电 模拟集成电路原理 电路分析 想问下哪些比较容易学 不过好像都是要学的
    发表于 09-26 15:24

    人工智能ai4s试读申请

    目前人工智能在绘画对话等大模型领域应用广阔,ai4s也是方兴未艾。但是如何有效利用ai4s工具助力科研是个需要研究的课题,本书对ai4s基本原理和原则,方法进行描诉,有利于总结经验,拟按照要求准备相关体会材料。看能否有助于入门和提高ss
    发表于 09-09 15:36

    名单公布!【书籍评测活动NO.44】AI for Science:人工智能驱动科学创新

    、污染治理、碳减排三个方面介绍了人工智能为环境科学引入的新价值和新机遇。 第8章探讨了AI for Science在快速发展过程中面临的机遇和挑战,并对“平台科研”模式进行了展望。 申请时间
    发表于 09-09 13:54

    报名开启!深圳(国际)通用人工智能大会将启幕,国内外大咖齐聚话AI

    8月28日至30日,2024深圳(国际)通用人工智能大会暨深圳(国际)通用人工智能产业博览会将在深圳国际会展中心(宝安)举办。大会以“魅力AI·无限未来”为主题,致力于打造全球通用人工智能领域集产品
    发表于 08-22 15:00

    FPGA在人工智能中的应用有哪些?

    FPGA(现场可编程门阵列)在人工智能领域的应用非常广泛,主要体现在以下几个方面: 一、深度学习加速 训练和推理过程加速:FPGA可以用来加速深度学习的训练和推理过程。由于其高并行性和低延迟特性
    发表于 07-29 17:05

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V2)

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V2) 课程类别 课程名称 视频课程时长 视频课程链接 课件链接 人工智能 参赛基础知识指引 14分50秒 https
    发表于 05-10 16:46

    5G智能物联网课程之Aidlux下人工智能开发(SC171开发套件V1)

    课程类别 课程名称 视频课程时长 视频课程链接 课件链接 人工智能 参赛基础知识指引 14分50秒 https://t.elecfans.com/v/25508.html *附件:参赛基础知识指引
    发表于 04-01 10:40

    使用NVIDIA Triton推理服务器来加速AI预测

    这家云计算巨头的计算机视觉和数据科学服务使用 NVIDIA Triton 推理服务器来加速 AI 预测。
    的头像 发表于 02-29 14:04 543次阅读

    嵌入式人工智能的就业方向有哪些?

    嵌入式人工智能的就业方向有哪些? 在新一轮科技革命与产业变革的时代背景下,嵌入式人工智能成为国家新型基础建设与传统产业升级的核心驱动力。同时在此背景驱动下,众多名企也纷纷在嵌入式人工智能领域布局
    发表于 02-26 10:17

    NVIDIA 人工智能开讲 | 什么是 AI For Science?详解 AI 助力科学研究领域的新突破

    NVIDIA 中国推出的人工智能类音频节目再次开讲啦,在这里,你将与 NVIDIA 共同见证人工智能的磅礴力量与无限可能! 如果你也想度过科技相伴的时光,赶快在“ 喜马拉雅FM ”
    的头像 发表于 12-25 18:30 943次阅读
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>人工智能</b>开讲 | 什么是 AI For Science?详解 AI 助力科学研究领域的新突破