Intuitivo通过AWS Inferentia和PyTorch实现更高吞吐量并降低AI/ML成本

关键要点

Intuitivo开发了一种基于云的AI和机器学习交易处理系统,可以同时运作数百万个自主购买点APOPs。使用AWS Inferentia,Intuitivo实现了YOLO计算机视觉模型的运行速度提高五倍,推送成本降低95。本文介绍了Intuitivo在零售创新中的案例应用、面临的挑战及解决方案。

Intuitivo,作为零售创新的先驱,通过其云计算基础的AI和机器学习AI/ML交易处理系统,正在重塑购物体验。这项技术使我们能够同时操作数百万个自主购买点APOPs,彻底改变了顾客的购物方式。我们的解决方案不仅以十倍的价格优势超越了传统自动售货机及其他替代品,还具备简单的设置和免维护的操作方式。得益于AWS Inferentia的性能和成本优势,我们的新型APOPs为顾客提供了增强的购物体验。Inferentia使我们能够以五倍于以前解决方案的速度运行YOLO计算机视觉模型,从而为顾客提供无缝的实时购物体验。此外,与之前的解决方案相比,使用Inferentia也帮助我们将成本降低了95。在本文中,我们将讨论我们的应用案例、挑战以及使用Inferentia的解决方案概述。

变革中的零售环境与APOP的需求

随着零售环境的快速变化,消费者期望在购物时享受到数字化带来的便捷和无障碍体验。为了有效弥合数字和实体世界之间的差距,同时满足顾客不断变化的需求和期望,需要一种变革性的方法。我们在Intuitivo相信,零售的未来在于创造高度个性化、以AI驱动和计算机视觉为基础的自主购买点APOP。这种技术创新使产品更容易触手可及,不仅将顾客最喜欢的商品摆在眼前,还提供了一种无排队或复杂交易流程的无缝购物体验。我们很高兴在这一新兴的零售时代中引领潮流。

借助我们的尖端技术,零售商可以迅速而高效地部署成千上万的APOPs。扩展一直是零售商面临的重要挑战,主要是由于扩大传统自动售货机或其他解决方案时的后勤和维护复杂性。然而,我们的基于摄像头的解决方案消除了对重量传感器、RFID或其他高成本传感器的需求,不需要任何维护且显著低于传统费用。这使得零售商能够有效建立成千上万的APOPs,从而为顾客提供无与伦比的购物体验,同时为零售商提供了高效和可扩展的解决方案。

使用云推理进行实时产品识别

在设计基于摄像头的产品识别和支付系统时,我们面临着是在边缘处理还是在云端处理的问题。经过多次考量,我们设计的系统将交易的视频上传到云端进行处理。

我们的最终用户通过扫描APOP的二维码启动交易,这会触发APOP解锁,顾客随后可以自行取走想要的商品。预处理后的视频被上传到云端。我们的AI驱动交易管道会自动处理这些视频并相应地向顾客的账户收费。

以下是我们解决方案的架构图:

!架构图

解锁高性能和经济高效的推理使用AWS Inferentia

随着零售商希望扩展业务,APOPs的成本成为一个考量因素。同时,为终端用户提供无缝的实时购物体验至关重要。我们的AI/ML研究团队专注于确定最适合我们系统的计算机视觉CV模型。我们面临的挑战是如何在性能和成本之间进行优化。

我们在Amazon EC2 Inf1实例上部署我们的模型,其中Inf1实例通过Inferentia提供,Inferentia是亚马逊专为加速深度学习推理工作负载而设计的第一款机器学习硅。研究表明,Inferentia能显著降低推理成本。我们使用AWS Neuron SDK一组与Inferentia搭配使用的软件工具,来编译和优化我们的模型以便在EC2 Inf1实例上部署。

以下代码片段展示了如何使用Neuron编译YOLO模型。该代码与PyTorch无缝兼容,并且torchjittrace()和neurontrace()等函数记录了模型在前向传播过程中的操作,以构建静态IR图。

pythonfrom ultralytics import YOLOimport torchneuronximport torch

batchsize = 1imgsz = (640 640)im = torchzeros(batchsize 3 imgsz)to(cpu) # mock input

Compiler options

half = True # fp16fp8 = Falsedynamic = False # dynamic batch

加速器跨网

f = yolov8nneuronx # output model nameneuronxccargs = [autocast none]

if half neuronxccargs = [autocast all autocasttype fp16]elif fp8 neuronxccargs = [autocast all autocasttype fp8e4m3]

model = torchload(yolov8npt)[model]modeleval()modelfloat()model = modelfuse()neuronxmodel = torchneuronxtrace( model exampleinputs=im compilerargs=neuronxccargs)

if dynamic neuronxmodel = torchneuronxdynamicbatch(neuronxmodel)

neuronxmodelsave(f)

我们将计算量大的模型迁移到Inf1。利用AWS Inferentia,我们达到了满足业务需求的吞吐量和性能。在MLOps生命周期中采用基于Inferentia的Inf1实例是我们取得卓越成果的关键。

性能提升: 我们的大型计算机视觉模型现运行速度提高五倍,达到每秒超过120帧FPS,为顾客提供了无缝实时购物体验。此外,这一帧频处理能力不仅提升了交易速度,还使我们能提供更多信息给模型,显著提高了产品检测的准确性,从而进一步增强了购物系统的整体效能。成本节省: 我们削减了推理成本。这显著提升了支持APOPs建筑设计的效益。

使用AWS Neuron SDK轻松实现数据并行推理

为了提升推理工作负载的性能,并从Inferentia中提取最大性能,我们希望利用Inferentia加速器中所有可用的NeuronCores。借助Neuron SDK内置的工具和API,实现这一性能非常简单。我们使用了torchneuronDataParallel() API。我们目前使用的是inf12xlarge,这颗Inferentia加速器拥有四个Neuron加速器。因此,我们借助torchneuronDataParallel()充分利用Inferentia硬件和所有可用的NeuronCores。该Python函数在由PyTorch Neuron API创建的模型上实现了模块级的数据并行性。数据并行性是一种跨越多个设备或核心即Inferentia的NeuronCores的并行化形式,也称为节点。每个节点包含相同的模型和参数,但数据在不同节点间分配。通过在多个节点间分配数据,数据并行性能够减少较大批次输入的总体处理时间,相较于顺序处理更为高效,尤其对延迟敏感型应用表现出色。

展望未来:加速零售转型、基础模型及可扩展部署

在未来,基础模型对零售行业的影响不容小觑。基础模型可以在产品标记上发挥重大作用。在快速发展的零售环境中,快速且准确地识别和分类不同产品至关重要。通过现代的基于变换器的模型,我们可以部署更多多样化的模型来满足我们的AI/ML需求,从而提高准确性,改善用户体验,而无需耗费时间和资金从头开始训练模型。通过利用基础模型的力量,我们可以加速标记过程,使零售商迅速而有效地扩展其APOP解决方案。

我们已开始实施Segment Anything ModelSAM,这是一种视觉变换器基础模型,能够在任何图像中进行对象分割我们将在下一篇博客中进一步讨论。SAM使我们能够以无与伦比的速度加速标记过程。SAM非常高效,能够处理大约人类在同一时间内创建边界框的62倍图像。SAM的输出被用于训练一个检测交易中分割掩膜的模型,为处理数百万图像开辟了机会,显著加快了处理速度。这将大幅减少产品平面图模型的训练时间和成本。

我们的产品和AI/ML研究团队对这场变革感到激动。与AWS的持续合作关系以及在基础设施中使用Inferentia将确保我们能够以成本效益高的方式部署这些基础模型。作为早期采用者,我们正与新的基于AWS Inferentia 2的实例合作。Inf2实例专为今日的生成AI和大型语言模型LLM推理加速而构建,提供更高的性能和更低的成本。Inf2将使零售商能够以不高昂的成本利用AI驱动的技术,最终使零售环境更加创新、高效,并以顾客为中心。

在我们继续将更多模型迁移至Inferentia和Inferentia2,包括基于变换器的基础模型时,我们相信与AWS的合作将使我们能够与受信赖的云服务提供商共同成长和创新。携手合作,我们将重新塑造零售的未来,使之更加智能、快速,并更好地适应不断变化的消费者需求。

结论

在这次技术之旅中,我们突显了使用AWS Inferentia的转型之路,以及它在创新的AI/ML交易处理系统方面的关键作用。这一合作实现了处理速度提升五倍及推理成本减少95的显著效果,改变了零售行业目前的做法,使实时和无缝的购物体验成为可能。

如果你想了解更多关于Inferentia如何帮助你在优化推理应用的性能中节省成本的信息,可以访问Amazon EC2 Inf1实例和Amazon EC2 Inf2实例的产品页面。AWS提供了各种示例代码和入门资源,您可以在Neuron示例库中找到。

作者简介

Matias Ponchon是Intuitivo的基础设施负责人,专注于架构安全、稳健的应用。他在金融科技和区块链公司拥有丰富经验,并具备战略思维能力,致力于设计创新解决方案,致力于卓越,因此始终提供能推动边界的韧性解决方案。

Intuitivo 利用 AWS Inferentia 和 PyTorch 实现更高的吞吐量,同时节

Jose Benitez是Intuitivo的创始人及AI总监,专注于计算机视觉应用的开发和实施。他领导着一个才华横溢的机器学习团队,培养创新、创造力和尖端技术的环境。2022年,Jose被MIT技术评论评选为“35岁以下创新者”,这证明了他在这一领域的突破性贡献。这种奉献精神不仅体现在荣誉上,也体现在他所参与的每一个项目中,展现出对卓越和创新的执着追求。

Diwakar Bansal是AWS高级专家,专注于生成AI和机器学习加速计算服务的业务开发和市场推广。此前,Diwakar带领物联网、边缘计算和自动驾驶的技术产品定义、全球业务开发和市场营销,致力于将AI和机器学习带入这些领域。