【云驻共创】AI开发生产线重磅升级,破解AI全流程开发难题
前言
6月15日,以“因聚而生,为你所能”为主题的华为伙伴暨开发者大会 2022开幕,华为云CEO张平安发表“共创新价值,一切皆服务”主题演讲,并重磅发布了华为云ModelBox AI应用开发框架,打通端边云边界,助力开发者实现AI应用一次开发,全场景部署。
人工智能的开发流程多年来不断发展,华为云EI于技术和行业经验归纳出AI开发流水线:ModelArts作为AI开发流水线的主要载体,端到端贯穿了数据处理、算法开发、模型训练和云上部署,开源的ModelBox框架通过“一次开发、多端部署”解决了端侧推理开发部署推理的复杂性;RPA智能机器人解决繁复的作业流程的成本和正确率;盘古系列预训练大模型则是融合了行业数据和知识助力更多开发者。本分论坛将全面介绍AI开发流水线如上的重磅能力和行业应用案例,帮助伙伴及开发者开启自己的AI开发流水线,完成应用构建。
一、基于行业算法套件的ModelArts云原生AI开发最佳实践
作为一名华为云AI开发工程师,在面对一个业务场景问题或者已经抽象过的AI问题,我们是如何进行AI开发落地的?
在实地落地中,会面临两个阶段:
- 第一阶段,怎样可以快速结合数据进行算法和模型实验、探索及迭代。
- 第二阶段,对于已经明确的内容,怎么可以工程化的高效开发、标准化的交付,加速AI业务落地。
1.1 如何利用云上资源加速实验原型和探索?
在探索阶段,选择合适的环境、便利的工具、按需的算力、一键可运行的算法资源是我们最重要的因素。
- 在环境和算力方面,使用ModelArts提供云化Notebook,配合弹性按需算力资源能力,可以快速地让我们拿到一个带AI计算资源的环境。
- 在算法方面,面向特定领域问题的算法解法集合、AI算法套件,可以让我们快速的在算法间切换,找到合适的并且具备实际应用的自研及开源算法,通过订阅和选择的方式,可以在ModelArts上一键式的运行。
- 在工具方面,我们基于云化的Notebook提供了参数化的开发模式,让你的探索变得更便捷高效。
1.2 云原生Notebook作为交互式AI开发与探索的首选工具
为什么我们会选择Notebook作为线上AI开发与探索的首选工具?
它的优势在于贯穿整个AI开发探索生命周期。从数据的处理到模型的开发以及验证和调测,它都是能够全部覆盖的。提供交互式的编程体验,探索过程中的可视化要求,可以快速地进行结果的分享与重现。下图是Kaggle在2021年机器学习开发者调研的数据,可以看到在IDE的流行度里面,Notebook占据很重要的位置。当然它也有一些不足,在版本管理、工作流的定义、分布式调测、重型异步任务上的友好度不足,但这些不足并不影响它成为我们AI探索领域的首选工具。纵观整体业界趋势,各个云化AI开发厂商还是以JupyterLab底座+插件的方式演进,主打资源免费、协作、社交化。
ModelArts云化Notebook也是基于此趋势进行演进,并且提供丰富的差异化场景能力。资源切换、CodeLab、云上云下插件等,贴近用户使用习惯,提升AI开发效率。
具体领域算法问题的解法集合-算法开发套件
在算法方面,需要去寻找匹配我们业务场景的合适算法,并且需要进行环境和算法之间的适配开发,以及算法相关参数的调优。使用ModelArts提供的算法套件,这些算法套件是面向一类算法问题解的集合,是针对特定的行业、领域预训练模型、算法实现及数据集。以简单易用为基础正对云边端场景的不同需求,提供相应的内容支持。我们的算法套件是通过自研+社区两个方面,确保算法的丰富度。在自研方面,结合丰富的真实AI开发经验,提供领域预训练模型、算法实现及数据集。目前已经在图像分类、目标检测、视觉分类、姿态预估等多个领域提供相关的内容,并且后续会持续丰富。用户可以在AI Gallery上一键订阅,在ModelArts上一键运行,提升用户的AI开发和探索效率。在社区方面,对于社区的主流算法套件完成了非侵入式的适配,例如MMDetection、MMOCR、MMSegmentation等算法套件,可以像加载自研算法套件一样,在ModelArts中快速加载一键运行。
1.3 算法开发与探索
有了工具和算法,接下来就是算法开发的探索和调优。使用ModelArts提供的基于Notebook的参数化、图形化、交互式的能力加速开发过程,帮助在数据处理、模型调优以及模型预测方面进行可视化的操作,低门槛完成多种场景的AI算法开发与应用,配套提供的算法套件可以更加高效进行AI开发。丰富的预训练模型与算法(自研+开源),可以看到下图是Notebook的Excel,可以参数化的定义数据处理过程和训练过程,为AI开发者提供交互式可视化工具,可以图形化查看训练结果,有表格,而不是之前的大片的日志,并且可以交互式的进行结果调测。提供了丰富的基础组件和组件定义能力,用户可以根据自己的使用需求和习惯定义个性化的插件。初学者快速入门,深度开发者可甚于源码进行白盒化开发。
在开发的资源和算力方面,ModelArts云原生AI开发资源与算力构建在开放的华为云云原生平台之上,基于底层应用、开放自主的相关基础云原生能力,方便开发者按需,低成本,灵活获取到可用的资源和算力。从前面的介绍大家可以了解到,对于华为云AI开发工程师,在AI开发的实验原型和探索阶段是基于ModelArts提供的solid化的note的交互式参数化能力,配合弹性按需算力、资源和环境,以及丰富的算法套件,帮助我们加速实验原型的探索及开发。
1.4 AI开发过程个人探索->产品化团队化开发
面对具体AI团队开发及应用落地时,需要涉及多人和多阶段配合完成从数据处理、算法开发和调优,到模型训练、推理开发及测试,并且在后续运行中涉及反复的迭代,怎么样可以高效地完成这项工作。
借鉴传统软件开发经验和实践,我们使用了工程化的AI开发模式,从工具到开发标准,再到代码化工程管理能力,助力我们团队协同完成AI开发及应用落地。在工具方面,为了更加匹配我们通用的IDE工具使用习惯,使用ModelArts提供VSCode\PyCharm插件,就可以在自己的本地VSCode\PyCharm上进行代码开发,使用插件远程连接云上资源进行远程开发调测,并且可以调用模型训练、模型部署等能力。通过定义AI工程框架,来让AI开发标准化,这个标准化的工程框架是实践的总结和积累,使用ModelArts提供的标准化AI开发工程模板。在模板中对于数据、算法、推理等各个环节的结构进行定义,并且还提供了CLI工程脚手架,通过代码与命令的方式与平台功能相结合,全流程完成工程化的AI开发。用户可以基于我们提供的工程结构定义,分工协同,完成不同内容的开发。下图内容就是提供的标准化工程结构,可以通过代码化方式完成AI过程、步骤、行为、资源等定义,并且通过代码仓统一管理。例如可以定义workflow、镜像、训练、作业、应用部署等,并且配合统一的资产管理进行工程化的AI开发。
1.5 算法开发MLOps工程-标准化的开发工具-云上云下协同
前面介绍了云上开发工具的能力,云上的IDE与传统的IDE在能力上还是存在差距的,所以为了更加匹配开发者通用IDE工具的使用习惯,使用了基于VSCode\PyCharm+ModelArts插件,满足本地化开发及调测诉求。面对稀缺的GPU资源的诉求,通过远程连接云上资源的能力,打造本地开发远程资源按需使用的能力,插件提供一键式的安装配置等能力,方便我们开发者的使用。
在云上后续也会提供更加沉浸式的AI开发能力,包含AI计算资源、云上存储预置AI镜像,让用户体验到云上资源便利的同时,也带来本地开发的顺畅感。在远程插件上,可以调用云上的开发、数据、训练、推理等能力,以及提供的工程相关的所有AI开发能力,真正满足一个团队不同用户的诉求。本地化体验代码开发与调测。IDE+ModelArts插件远程开发能力。云上开发环境,包含A计算资源,云上存储,预制AI引擎。插件一键链接配置,代码开发主入口。
在正式的AI开发项目中,我们会面临更多的困难和问题。AI Gallery是在ModelArts的基础上构建了开发者生态社区,丰富及活跃的生态是AI开发的基础和推动力。在AI Gallery中,不仅提供了Notebook代码样例、数据集、算法套件、模型等AI数字资产,方便的将可重用各种AI开发资产加载到ModelArts AI开发过程中,加速开发过程;而且还有学习、实践、交流等板块,方便不同诉求的用户交流。并且在资产方面提供分享和订阅能力,方便AI资产持续更新和迭代。我们希望开发者沉淀更多的资产,帮助更多的AI开发者,提升大家的开发效率,加速AI产业的发展。
传统软件开发完成后就是交付运维,AI的软件开发交付后不仅仅是交付运维,还有面临持续的数据更新、模型迭代,难例挖掘。这些流程应该是标准化可信的,并且与开发流程解偶,所以提供了工作流的能力,该能力是基于实际业务场景开发的,用于部署AI应用流水线工具。把已经完成好的AI开发业务场景,通过ModelArts Python SDK进行编排和开发,将数据处理、模型训练、模型部署等能力进行编码,将流水线发布给业务应用人员,对于他们来说不一定需要了解整个开发实现细节,只需要了解流水线的机制,以及需要存在变化的内容。例如数据的增强、更新或者模型的参数变化,就可以方便地进行模型迭代、上线,这样让开发和运行分离,提高后续业务迭代的效率。
什么时候我需要流水线的开发模式-摆脱手工作坊?
- Notebook面向探索和实验属性,正现论文或或数据探索等
- 当模型有了固定的用户,就会有持续数据优化和微调的诉求
- 流水线的重要性随着工程量、人员增加而增长
Pipeline能够带来的收益主要集中在哪?
- 能够专注于新的模型开发,而不是已有的模型维护,避免并行开发时引入的一些问题
- 实验过程更容易被跟踪和重现,可信
- 标准化AI开发过程
从前面的介绍大家可以看出,ModelArts 致力打造一站式的AI开发平台,让AI开发变得简单、高效。华为云从AI开发全流程出发,在分析设计算法模型探索和实验模型集成与开发以及AI应用运维上提供高效、便捷的能力,并且结合我们的实践经验,沉淀更多的标准化AI开发流水线,服务好AI开发者。
二、华为云盘古大模型,开启AI工业化开发
2.1 作坊式的Al开发无法满足行业高效高质量数字化转型需求
什么是华为云盘古大模型呢?
2025年,企业对AI的采用率86%(当前4%)。从企业AI开发开始说起,当前AI走进企业的生产核心系统创造更大价值是大势所趋。但是与之相对的就是封闭的作坊式AI开发无法去满足行业高效高质量数字化转型需求。
华为云盘古大模型的思路是把海量的数据知识存储在超大型的神经网络当中,有了这样的神经网络以后,对于专门的需求,把这些需求固化成一些流水线,不同的流水线之间大部分的流程都是一样的,而只有小部分的操作或者场景专有的知识是有所不同的,把这些知识或者操作像搭积木一样把它架在这个流水线上面进行开发。这样的开发模式比起作坊式的开发模式,就会更加的节省时间和人力。
什么是作坊式开发呢?
它的意思就是每当企业有了AI需求以后,它都需要独立的创建一个场景,而在这个场景当中,就需要有不同的专家和开发人员针对这个场景去进行专门性的研发,这会导致在这些场景当中它的开发效率比较低下,并且它的开发经验,包括产生的一些资产是没有办法得到有效积累的。针对这样的情况,我们提出了华为盘古大模型。
在实际测试当中,盘古大模型进入企业生产系统以后,效率提升是非常明显的。原来需要十个人所做的事情,现在只要一个人就可以把它做完,效率的提升达到十倍以上。这就是华为盘古大模型的一些特点。
2.2 盘古大模型在千行百业的应用
盘古大模型可以在千行百业当中去取得一些应用,比如下图左下角这里的盘古大模型,它有各个不同领域的大模型,比如说视觉、NLP(自然语言处理)、多模态、Graph和科学计算。在这些大模型的基础上,我们又架设起了不同场景不同行业的这种大模型。包括比如说像金融风控、工业质检、时尚设计、案件审核和智慧育种等等这些不同的场景当中,我们都可以把大模型给适配上去。最后在不同的行业案例上取得大量的应用,比如下图左上角讲的,像违规风险识别、布料质检、流行元素标注等等这样的一些应用。
盘古大模型是通过把这些算力和研发成本往前提,比如每年会消耗超过4000张的英伟达V100这样的GPU,并且使用相当于4TB的清洗后的成本数据和10亿张图片去进行训练。同时我们配备有大量的工程师,包括算法工程师和系统工程师,经过多年的积累,最后产生了这样个大模型的系统。这个大模型系统就可以帮助业界把这个成本花在前面,华为云用了这些成本以后,不同的企业就不需要再去重复的耗费这些成本,可以使用积累下这些知识或者这些系统,快速的去进行AI的开发。这就是华为云在千行百业当中应用,为什么能够帮助企业去做到更好的本质原因。
2.3 CV大模型:铁路TFDS进行未知故障预测
第一个应用在CV(计算机视觉)这个大模型,在铁路TFDS进行未知的故障预测,这个场景是在有一辆列车行驶路途中,有个摄像头架设在上面,在列车上拍摄各种不同视角不同位置的图像后,快速的去判断这里面是否有故障。由于这些故障通常来说出现次数较少,因此很多情况下小模型没有办法在上面取得很好的应用。很多情况下,工程师或者开发人员要针对每个故障去适配一个小模型,成本是非常高的。当有了大模型以后,我们不仅可以用一个或者少数几个大模型去适配一百多种不同的故障场景,同时也可以保证故障的召回率90%,未知故障预测发现率提升1倍以上,同时还能保证单张图片的识别时间小于4ms。
盘古CV大模型的演示demo
下图是盘古CV大模型的演示demo,这个是基于ModelArts这个平台上面所提供的demo,允许用户快速的根据自己的需求去训练,并且部署大模型。
首先第一步,先选择数据,以自动驾驶的数据为例,选择相应的文件夹以后把这个数据给找出来。这是一个物体检测的模型,根据不同的需求,比如说物体检测分割和分类系统会对它进行不同的处理。然后对这个数据进行标注。拉开图片以后,我们用传统的方法去标数据,比如说车、卡车这些东西标注出来。标注了几十张图以后,就形成了数据集,这个数据集会存在在线的资产库里面。
有了数据集以后,第二步就可以开始训练模型了。点开算法管理以后,根据需要去配置参数。首先选择这个数据集,把刚才标的数据集导入进来,导入数据集以后,最重要的几个需要配置的参数,基本上就是这个模型的大小,并且模型训练的时候所需要使用的资源等等。有了资源以后,就可以开始训练模型。为了效果比较好,选了large(较大)的模型。然后开始配置节点。比如说用单节点机器去训练模型,然后开始训练。
训练需要花费比较长的时间,它涉及到超参自动调节等等问题。在训练完成了以后,就对这个模型进行部署。部署就是把训练好的模型放在公有云的平台上,这个时候大家就可以上传图片,对模型进行询问。比如刚才训练好自动驾驶当中物体检测的模型,现在上传一些图片,点击推理,下图右侧就会出现这个模型的推理结果。从下图我们可以看到,一些非常难的物体也被检测出来了,晚上的场景它也可以检测出很多这样的物体。
2.4 NLP大模型:最高检的测试结果证明在小样本能力及泛化性能
第二个场景是在NLP(自然语言处理)上的大模型。在这个大模型当中,我们使用的场景是最高检的项目,在这个项目当中,从最高检那边就获取文本,并且对于法律的文书文本进行分析,去理解其中所代表的内容。比如这个法律到底为什么在这里是这样去判,后面还包含着什么样的其他的原因等等,用它来指导后续的一些判例。
如果是传统的小模型的话,适配这个数据去适配不同的case,它这个时间就比较长。但是由于我们大模型已经在预训练过程当中积累了大量NLP(自然语言)方面的知识。所以可以在很短的时间内,把测试结果不断地从开始的73%提升到最后的测试结果92%,也是高效地完成了项目。
除了在最高检这个项目上进行应用以外,我们还在反电炸等等其他场景上得到应用。NLP大模型模型的迁移性强,针对个案由训练,可以应用于多个相近案由。对人工的依赖程度小,少量样本、简单调参即可。
来看盘古NLP大模型的一些demo。首先来看第一个例子,可以看到输入框里面有一句话,然后这句话当中空了一个词,这个词是个成语。模型被要求从下面的候选的成语当中挑出个最合适的给它填进去。盘古大模型能够根据它在预训练过程中所看到的大量的数据,记忆到所学知识,高效地来解决这个问题,这也是我们第一个演示的case成语填空。
第二个case是商品评价的例子。这个商品评价也就是用户有可能会在购物平台上写下它的评价,然后这个评价不知道是好是坏。在这种情况下,大模型可以根据用户写下这句话来判断它到底是正面的还是负面的,这也是得益于它在海量的训练数据当中所学到的知识。
第三个例子是阅读理解,会给出一句话来问他一个问题。比如在下图这句话当中,我们可以看到这个问题是一个非常晦涩的问题,因为它涉及到汉语当中比较有歧义性的表述方法,但是华为云盘古大模型依然可以在这个问题当中把这句话的结构给解析,并且根据所问问题,正确的给出回答。其他问题对它来讲一般都可以给出我们所要的正确回答。
上述所有内容就是给大家展示的NLP盘古大模型的三个例子,这些例子都是可以在线进行访问并且进行使用的。
第三个场景是科学计算大模型。所谓科学计算就是把AI的能力辐射到其他领域。在科学计算这个领域当中,比如气象、医药、航天航空、海洋、工业、地质等等不同的场景,在这些场景当中所面临的共同问题就是解偏微分方程。在偏微分方程解的过程当中,盘古大模型可以发挥出它自己得天独厚的优势。比如说神经网络这个体量很大,所以在解方程的时候,可以捕捉到小模型无法捕捉到的特征,从而得到更精确的解答。
相比于传统方法,用数值模拟的方法去求解这些偏微分方程,基于AI的方法求解效率会比较高。在一些极端的场景下,它的求解效率甚至能够从2天缩短到0.1秒,提升4到5个数量级的程度。在这种情况下,用实时预测能力为科学计算应用提供实时预警。比如在海量预测问题上可以为它提供实时预警,从而提升在各个方面应用的能力。
盘古科学计算大模型的演示demo,这个demo当中进行了全球海浪的实时预测,模拟了一个地球仪的形状,然后包含了全球的陆地和海洋这些数据。给定风速后全球海洋上的这些海浪的高度是可以实时地显示在屏幕上的,也是得益于推理速度的加快。因为我们0.1秒就可以完成预测,因此可以实时把结果显示出来。同时还可以模拟海洋上的突发情况,比如说针对海洋上可能出现的风暴和台风。
在demo当中给大家展示实时生成台风的路径,并且调整这台风的强度、它的风速、它的这个生命周期等等这样参数后,就能发现台风对海浪的高度等等造成了影响。因此就可以去模拟台风会对海洋的海浪造成什么影响。这样的模型就可以有效的帮助我们去指导海洋上的生产生活,比如指导渔船去避险等功能,发挥它自己所特有的价值。
对于大部分海上作业来说,精确的海浪预报具有重要的价值。与基于超级计算机的传统预报模式相比,Al全球海浪预报模型可以以较低的计算成本,灵活的结合短期气象预报更新结果,快速提供关心海域未来数小时的海况。该预报系统可以为航运公司提供服务,通过海浪数据结合航速航向来优化航行路径,减少航行过程中的碳排放,同时避免遭遇极端海况造成人员和财产损失。
第四个场景是多模态大模型。多模态的意思就是我们把图像和文本这两种不同的模态给结合在一起,它们之间可以进行交互,从而可以帮助我们完成各种各样的应用。比如像趋势预测、辅助设计等等这样在时装行业比较重要的应用,它都是得益于我们把人类所希望做的事情以文本表示出来,然后把它体现成图像的形式,让设计师能够以这种图像成图的方法给交付交付到生产线上去,从而加速最后的生产过程。在这个过程当中,我们利用大模型这样的思路,使得图像和文本之间能够高效地进行交互,从而最后完成这样的过程。
第五个场景,就是盘古的Graph大模型。这个大模型主要是用来处理结构化数据。比如企业的报表数据,华为在与广发证券合作的过程当中,有些广发证券的客户是会存在这个财务造假的情况。使用这个盘古大模型以后,利用数据帮助他们高效的分析出了哪些企业可能存在造假的情况,模型准确率超过90%,从而能够帮助广发证券更好的去完成业务情况。得益于大模型当中所具有的特征抽取包括预测的能力。盘古多模态大模型能构建定制化、高效的时尚产业链条,并在企业的生产生活当中是可以发挥更加重大的作用的。如果大家对盘古大模型感兴趣,包括对前面所展示的这个demo比较感兴趣的话,请与华为商务部门联系,他们会将你引导到我们盘古大模型上面。
三、ModelBox加速跨平台高性能AI应用开发和落地
3.1 打通行业AI应用落地最后一公里
随着新基建的推进,以及5G通信、云计算、大数据和物联网的快速发展,人工智能应用的场景越来越多,AI正从极具想象力的商业概念成为具有超大发展前景的商业赛道逐渐渗透到各行各业,并催生了技术产业新的发展。在深耕行业AI落地的过程中,我们发现AI的大规模应用落地并非一帆风顺,面临着比传统软件更复杂的难题。
包括:
第一、部署场景、复杂系统架构涉及端边云多种组合。
第二、易购计算平台多样,给应用性能优化带来了更高的技能要求。
第三、AI基础推理框架的API不统一,带来繁琐的适配工作。
为解决这些难题,在今年的这次大会上,华为云对AI开发生产线ModelArts进行了重磅升级,发布了ModelBox端边云统一AI应用开发框架。ModelBox顾名思义,就是让模型以统一的格式和接口更高效地运行,通过ModelBox开发者无需过多关注底层技术也能开发出跨平台高性能的AI应用,提升开发效率。开发者在华为云AI开发生产线ModelArtes上完成模型的训练和优化之后,可以均以模型通过ModelBox完成应用的开发和集成,并一键部署到端边云场景的不同设备中运行,打通行业AI应用落地最后一公里。
为了帮助开发者快速完成AI应用的开发和部署,我们在Windows中集成了三大核心技术。
- 第一,高性能并发调度引擎。通过这个引擎实现数据计算和资源管理的精细化智能调度,集成了特别优化过的硬件加速单元。
- 第二、译制的应用编排异构计算组件。丰富的组件覆盖了主流芯片、多数操作系统和主流的推理框架,做到了屏蔽这三个层次的平台差异。
- 第三、框架中提供了端边云AI系统单元,让开发者快速写出格式一致的AI应用,并结合场景需求,一键部署到端边云不同的设备上运行。
三大技术带来的收益也是明显的,在节约80%左右的开发成本的情况下,带来两到十倍的推理性能提升。
首先我们的性能底气来自高性能并发调度引擎,开发者无需掌握底层调度机制,也能保证高性能应用优化效果。ModelBox中将所有的任务都以功能单元的形式封装,一个完整的应用就是由多个功能单元构成。我们自研了一套灵活调度策略,在执行时,功能单元的计算将统一由线程池并发调度,确保计算单元被分配到对应的一个硬件中执行。同时计算中数据和执行单元绑定,保证数据处理的合理分配和高吞吐量。根据引擎在实际应用案例中,让典型的图片检测场景的数据吞吐量从54QPS提升到了442QPS。同时处理时延从0.5亿毫秒降到了0.2毫秒,做到了非常明显的性能提升。
为了带给开发者更好的开发体验,提供了图编排的开发模式,所有API以功能单元的方式提供,应用开发可以做到像搭积木一样方便。同时针对常用的AI推理场景提供了丰富的译制功能单元,做到低代码甚至零代码就能完成应用开发。这些功能单元,比如图片的高性能解码、缩放、易处理、AI推理运算等,屏蔽了不同硬件、操作系统和推理框架的差异,做到了一致的开发接口。换句话说,一次开发无需改动代码就能实现端边云不同设备的一致部署运行。
3.2 应用编排异构计算组件,缩短跨平台开发和部署成本
ModelBox作为AI应用开发框架,华为云始终关注开发者体验。据ModelBox的技术内核,提供了完整的开发工具链,这些工具链让开发者能够以自己喜欢的IDE来开始上手ModelBox。其中提供的丰富工程模板可以降低开发门槛,对应用的AI开发部分包含功能单元开发和图编排,实现了对Python、c++等多种语言的灵活支持和可视化编排低门槛开发模式。同时还提供完整的调试机制以应对开发中的问题。完成开发后,以RPN或者容器镜像的打包方式一键发布你的应用。最后,ModelBox格式的应用支持多种部署方式,可以一键发布成ModelArts云上在线推理服务,也可以通过HiLens端云协同服务,远程部署到端边侧运行。为了实际场景需要,ModelBox还提供灵活的插件,帮助开发者实现模型的权限管理和配置等。
演示ModelBox的开发过程
第一步,准备开发环境。在ModelArts的开发环境管理界面,创建Notebook实例,通过VS Code远程连接NoteBook实例(需提前安装VS Code插件),进入开发界面,在此查看已创建的工程或创建工程。
第二步,创建新工程。进入创建工程配置界面,输入工程名字路径,选择工程模板,创建工程。工程创建成功后可以查看ModelBox的工程结构,其中最重要的部分是Flowunit(功能单元)和Graph(图)。
第三步,功能单元及图形化编排可以在Flowunit里打开推理功能单元的配置文件(vehicle_ inference.toml)。这里我们用了TensorRT的模型,growth目录下可配置AI应用的工作流,可以通过代码直接编辑,也可以启动ModelBox图形化编排服务。ModelBox预置了丰富的基础功能单元,将功能单元拖拽至编排界面,通过连接不同功能单元形成应用的工作流。
点击功能单元可以查看并配置功能单元属性。配置顶点类型可以将功能单元编排到异构硬件上。完成功能单元配置及图形化编排后运行工程,就可以检查运行效果,看到成功检测车辆。随后可以RPN打包或者制作镜像。后续可以将模型部署到端、边、云应用到解决方案中,快速完成AI应用的开发和部署。
3.3 ModelBox案例:助力智慧出行应用实现高性能提升和快速落地
实际上从去年开始,已经陆续有伙伴开始将AI应用牵引到ModelBox框架上来。我们与伙伴合作,全面重构了安全出行方案中的AI推理业务。在重构前,其中的疲劳和分神驾驶检测任务是据传统的方式进行AI应用开发和部署。由于业务量的增加,AI运算的性能已经满足不了要求,而千亿平台将带来扩容成本的增加。同时,切换品牌代码需要重新开发,增加了千亿难度。
在双方团队配合中选择了ModelBox重构现有业务,结果也是非常震撼,数据吞吐量提升了2-10倍,比如抽烟识别从15QPS提升到了150QPS,在不扩容的情况下,业务能力大幅提高,节约了非常高的硬件成本。由于性能提升,我们也可以大胆尝试更强大的算法,使得识别准确率也有超过10%的提升,同时耗时降低78%。
在本次大会上,我们已经正式宣布ModelBox开源,希望通过开源能够与广大伙伴共同构建端边缘协同AI应用生态。在去年,我们依托旗帜社区平台完成了源码发布,这也是社区中第一个应用框架类项目。经过半年的开源社区化开发,我们的项目更加完善和强大。今年晚些时候,我们将在下一个版本推出更多的用户体验,优化工具。更长远的我们计划提供越来越多的ModelBox开源解决方案,让大家可以结合更多的参考样例和项目做到开箱即用。今天我们诚挚邀请广大开发者朋友参与到ModelBox的开源项目中来,可以扫下图右边的二维码,了解更多信息。在此华为云希望北向的AI算法应用开发者可以贡献自己的能力,来丰富ModelBox的功能单元和应用场景,同时让自己的应用可以被更多硬件高效运行。也希望南向设备厂商把自己的硬件通过开源项目对接到ModelBox项目中来,这样具有丰富的AI应用,可以补充和扩展硬件的AI使用场景。
为降低开发者上手门槛,本次我们还带来了与国办合作的ModelBox生态入门级开发板。开发者可以从这个开发板套件开始体验ModelBox结合硬件和端游协同带来的便利,将自己的IDEA快速变成现实。同时我们为开发者准备了丰富的上手课程,包含入门、进阶和高阶课。通过系列课程掌握ModelBox的基础开发概念,上手体验功能单元和图形化编排的开发模式。感兴趣的开发者伙伴可以扫描下图中的二维码,添加小助手,回复开发版获取更多资讯。
3.4 华为云助力ModelBox开发者实现商业成功
正是由于ModelBox天生对平台操作系统和推理框架的适配开放能力,结合统一的应用打包格式,让应用不管是云上还是端边侧,可复制性都大大提高,这就给开发者的商业变现提供了更多可能。华为云AI开发生产线ModelArts和华为云云市场,帮助开发者打通从开发到落地的变现通路。ModelBox开发的AI应用,可以通过云上平台和销售网络以及集成商伙伴,触达更多的行业客户,带来更多的商业机会。
到今天已经有来自不同领域的三十多家伙伴。成为我们ModelBox伙伴中的一员。我们张开双臂,欢迎更多的开发者伙伴,包括软件、硬件、集成商和渠道商朋友们加入ModelBox的生态,共同开拓行业AI应用的广阔前景,一起实现技术和商业的成功。欢迎大家扫码进群,与其他开发者伙伴一同探讨ModelBox。
四、深度融合AI与RPA 智能流程机器人打通数字化转型的最后一公里
4.1 行业趋势
整个企业的自动化发展历程经历了很长的阶段,首先是个人的自动化应用,个人任务的自动化,然后到部门级的流程的自动化,再上升到整个企业及跨部门的流程自动化。
技术的发展也经历了几个阶段,首先是个人在PC机上自己去部署一套自己个人用。然后发展到基于虚拟机的部署(端到端),甚至发展到这个基于SAAS化模式的部署。现在我们发展到4.0的阶段,就是RPA与AI深度融合,升级为智能的流程机器人。海量的非结构化数据的处理,包括高级AI的能力都集中在里面。
整个系统的这个自动化水平由最开始基于规则的重复任务执行,然后上升到基于知识和推理的应用,加上人工智能就相当于机器人有了眼睛和耳朵可以去做交互,然后达到更高效、更智能的水平。
4.2 新特性全景图
智能留存机器人里有智、快、好、省、信这五大特色。首先智能是我们的一大亮点,智能留存机器人里已经集成了华为云上60多个AI的服务在里面,而且还在往里面不断地去添加新的功能。然后还提供自定义AI工作流,这样的话能帮助用户快速去开发一个新的版权出来,快速上线一个新的API,非常的方便。
整个系统是在持续的学习,很多的样本可以反馈优化,这样可以做到越用越准,真正的像一个智能的机器人。
- 快速是永恒的追求,因为整个系统是端云协同部署,一般部署在客户机房里面,里面的数据和服务就在本地可以做到毫秒级的响应,非常低的延时。通过软硬协同的优化,整个性能做到大幅的提升,性价比非常高。通过端云协同也能快速更新部署也是整个系统的一大亮点。
- 好用是把AI和RPA做了深度的融合,能够兼容不同的系统,运行稳定。又通过一体化的交付预制了各种各样的场景化应用,比如发票的报销、合同的批量核对,这些流程都已经预置在里面,同时也可以非常方便地去基于能力去做二次开发。
- 省钱是整个方案的一大优势,因为是一站式的这个采购,然后通过虚拟化去提升整个资源的利用率,所以性价比非常高,从而帮助用户去省钱。
- 最后是安全可信,这个是对用户的庄严承诺,里面不管是AI还是整个系统都已经通过了国内和全球的各种安全认证体系,从而保障用户数据安全信息不被泄露。整个的系统是从各个维度不断地去提升整个企业的智能自动化能力。
4.3 Highlight新特性展开
下面来详细的介绍一下AI的新的特性。首先是里面通过端云协同,把我们自研的各种AI服务下发。目前已经支持华为云上60+ AI服务的下发,包括OCR服务的卡证、票据和各种行业单据的识别,也包含其他NLP自然语言处理、CBS对话机器人,以及其他的视频分析服务。这些能力都可以通过云上把它下发到这个客户端侧的机房。然后通过云上去做方便的这个升级,端云协同智能设备可以支持在客户机房更新迭代华为云AI服务,保障本地数据不出园区,从而让用户一直用到最新的最好的模型。然后通过端云协同保障服务在端侧来运行,这样用户的数据就在本地进行处理,不需要把数据再发送到外面,从而保障了整个数据的安全。
AI自定义模板的开发,在企业里面经常会有新的版式、单据出来,原来没有现成的API,比如有预制的身份证、发票,固定的API识别。如果来了一个新的票据,可以通过自定义模板来快速开发。它的开发流程是非常的方便,都是通过界面来处理。首先它会在上面去框选参考字段,比如说在银行的信用证识别,要去识别一张A4纸里面的地址、日期、金额等等信息,去找上面的参考字段,比如说地址两个字是固定的,把它画个框,说它是参考字段。然后再去把后面要识别的地址的区域框出来。相当于生成了一个配置文件,然后把所有要识别的文字识别框选出来之后,就可以快速去发布新的API,整个的开发过程大概三到五分钟就可以了。在银行里有成功的应用,整个的开发流程非常的方便,而且是所见即所得。
高阶的能力是AI套件的开发,如果有一个模型,它的精度还达不到更高的水平时候,我们就可以加入新的数据进来。比如说新的样本,我们就可以通过AI的套件做二次的开发。
这里面有几个特点,首先是在AI套件里面预制了通过大量数据训练出来的通用大模型,比如文字识别或NLP的处理,都已经把基础模型预置在里面了。另外一个特点是我们做了各种各样的创新,可以支持小样本的迁移学习,整个开发过程会非常方便、快捷。同时在开发套件里也沉淀了很多行业的经验,比如数据应该怎么做预处理,然后模型应该怎么去配置它的各种参数,模型怎么去评估啊,用哪些指标来衡量,然后怎么去测试。把这些经验沉淀到开发工作流里,就可以通过界面直接去开发了,都不需要去写代码,非常的方便且高效。
整个系统非常的普适和兼容,能够兼容不同的系统和浏览器和各种这个软件的架构。然后也支持常见的甚至年代比较久远的软件,全面兼容各类浏览器,专业领域软件及Legacy软件,数字机器人稳定运行550+天。
Edge浏览器Web自动化操作:
通过机器人访问浏览器进行录制,通过机器人访问子鸟浏览器进行录制与操作,随后通过机器人(WeAutomate Studio)访问power builder应用进行修改操作。将各类项目工程和脚本开发中的最佳实践标准融入到设计器中,通过内置检查功能,协助开发者构建高质量的机器人。然后为了保障整个项目的稳定运行,还增加了项目健康度衡量,通过各种的机制来做质量检查,来保障它的运行效果,及时监控和提示。
通过立体式、多维度的安全来做加固。首先这些软件都已经做完安全加固后,它是多租隔离,外面的数据进不来,里面的数据有敏感数据控件与队列,它是拿不走的。另外里面的敏感信息也做了加密和增强,从而保障整个传输和存储过程的安全。整个系统是通过了国内和全球的各种安全体系的认证,不管是AI还是我们整个系统都经过了各种的认证。
4.4 赋能企业日常作业增智提效
开发完成之后,就变成了各种场景化的机器人。在企业财务、供应链物流、金融、政务的各个场景,都已经有很多的案例。举一个简单的合同比对的例子,把整个的流程通过设计器,把RPA和AI的流程都串接起来。在合同比对的过程中,如果有两个很长的合同几十页,我们要比对两份合同里面修改了哪些金额或者一些关键的要素的时候,如果是人工比对,可能就是左看右看,花了很长时间也容易出现疏漏,眼睛容易疲劳。
通过RPA,先把文件获取到,通过AI的能力,包括OCR文字识别做全文的识别,然后还可以做里面印章和文字手写体的识别,识别完了之后就可以去比对。同时还可以更进一步把NLP信息抽取的能力也加上去,把里面甲方、乙方、金额和日期等关键要素把它抽取出来,再与系统里面的要素做一个自动化的比对,再把这个校验的结果保存下来,通过邮件发送给相关的人员去做最后的复核,这样整个的流程就会非常的高效,机器人的开发过程也非常方便,通过界面拖拉拽就可以实现相应功能。
下图右边可以看到,在不同的客户场景的真实的案例。比如说在供应链里面,在报销审核的自动化场景,都是可以去大幅提升自动化率,大幅减少人工处理的环节。在医院疫情防控管理的时候,也是有很多的应用把任务的时间由原来手工录入好几分钟、几十分钟,然后变到十几秒钟,效率提升有几十倍。不仅是银行信用卡网点的提升还有失业保险到账与划转等效率的提升,这些场景让我们相信智能流程机器人真正非常高效、非常方便的去使能千万的开发者,去使能千行百业。
五、总结
ModelArts是面向AI开发者的一站式开发平台,提供海量数据预处理及半自动化标注、大规模分布式训练、自动化模型生成及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。
“一站式”是指AI开发的各个环节,包括数据处理、算法开发、模型训练、模型部署都可以在ModelArts上完成。从技术上看,ModelArts底层支持各种异构计算资源,开发者可以根据需要灵活选择使用,而不需要关心底层的技术。同时,ModelArts支持Tensorflow、MXNet等主流开源的AI开发框架,也支持开发者使用自研的算法框架,匹配您的使用习惯。
ModelArts的理念就是让AI开发变得更简单、更方便。面向不同经验的AI开发者,提供便捷易用的使用流程。例如,面向业务开发者,不需关注模型或编码,可使用自动学习流程快速构建AI应用;面向AI初学者,不需关注模型开发,使用预置算法构建AI应用;面向AI工程师,提供多种开发环境,多种操作流程和模式,方便开发者编码扩展,快速构建模型及应用。
本文参与华为云社区【内容共创】活动第18期。
https://bbs.huaweicloud.com/blogs/364560
- 点赞
- 收藏
- 关注作者
评论(0)