ModelScope开发者社区 > 正文

数禾科技 AI 模型服务 Serverless 容器化之旅

简介: 数禾科技 AI 模型服务 Serverless 容器化之旅
+关注继续查看

作者:周伟鹏、魏文哲、元毅


“使用阿里云容器服务 Knative 和 ECI 虚拟节点配合部署,在保证线上模型应对突发流量的稳定性大幅提升的同时,又使资源利用效率获得了显著的提高,极大的节约了资源成本。” 

-- 数禾科技 AI 实验室

AI 平台负责人 周伟鹏

“数禾 DevOps 平台 BetterCDS 集成了阿里云容器服务 Knative,支持模型服务的多版本运行和弹性伸缩,在降低运行成本的同时,也提升了服务的可用性,极大地方便了运维人员和开发人员。” 

-- 数禾科技基础架构研发部

工程效率组负责人 邓志


背景


数禾科技以大数据和技术为驱动,为金融机构提供高效的智能零售金融解决方案,服务银行、信托、消费金融公司、保险、小贷公司等持牌金融机构,业务涵盖消费信贷、小微企业信贷、场景分期等多个领域,提供营销获客、风险防控、运营管理等服务。数禾科技通过自主开发的消费信贷产品,连接金融机构与普罗大众,赋能金融机构数字化转型,迎接中国消费升级的大潮。

image.png

遇到问题


在风险管理业务中,根据公司的风险容忍度、风险偏好波动以及阶段性业务目标需要针对公司客户进行风险属性的调整,这其中包括用户额度、定价、可借期限等相关要素。那么这不可避免的需要应用批量数据处理能力通过计算规则来对大量用户做调额、调价等,当然,模型作为风险管理的重要组成部分也必不可少的会被运用至批量处理的动作中来。因此对于模型的计算能力就提出了很高的要求,包括计算速度、计算结果准确性、计算数据实时性等。


而当前的困扰所在是支撑模型计算的底层应用资源无法灵活且快速的根据请求量来智能化调整机器资源支持运算能力,这也是当前业务快速发展过程中亟待解决的痛点。同时,随着模型在线推理服务数量的增加,数禾的模型服务也变得越来越庞大、臃肿,难以管理。这种状况不仅导致了资源浪费,还增加了维护和升级的成本。


基于以上的各种情况,我们开始寻求新的技术架构方案,希望新方案可以具备随流量高效使用资源,降低模型服务成本,同时最好具备版本管理功能,可以实现多版本同时提供服务,较小响应的运维成本。


解决方案


经过内部的沟通与调研,我们最终选择了基于 Knative 的 Serverless 服务方案,它具备根据请求的扩缩容能力、允许 pod 缩容到 0 的冷启动能力以及多版本的管理能力。与此同时,由于数禾本身的技术架构都是部署在阿里云的底层资源上,而阿里云 ACK 又对 Knative 做了组件集成,可以支持一键部署,极大的减小了我们部署调试的时间成本

image.png

客户价值


通过对内部模型部署的 pipeline 进行改造后,目前数禾的所有新增模型均已通过 ACK + Knative 方式部署在线上提供服务,得益于 Knative 的多版本管理能力,我们快速解决了模型的灰度发布和多版本并存的问题。同时加之基于请求的自动扩缩容能力,在多个版本并存的情况下,并没有对资源产生额外的消耗,而且对晚上的谷时资源继续了很好的节约。


下图是我们一个模型服务的资源消耗与请求量的对比图,上图为 Pod 资源数量,下图为服务请求量。由下图对比可以看出,整个服务资源的使用情况于服务请求量保持高度一致,使用效率非常高。

image.png

查看大图:

https://img.alicdn.com/imgextra/i4/O1CN01uHrVr51sc2SJ76y4x_!!6000000005786-0-tps-2559-1341.jpg

对于上文提到的批量作业任务,虽然我们已经具备了 Knative 的扩缩容能力,但依然需要在底层准备好足够的资源池来供模型进行扩容。但是在一天的大部分场景中这部分资源又是浪费的,对于这个问题,我们通过在 Knative 中使用 ECI 虚拟节点来得到了很好的解决。


我们对上线之后的模型服务进行了持续监控,对比使用之前的方案,模型服务在应对突发批量流量的稳定性获得大幅提升,同时资源的使用效率也获得了显著提高,节约成本约 60%。


关于 Serverless


众所周知,Serverless 是一种云原生的开发模型,客户只需构建和运行应用、而无需管理托管应用所在的服务器。在实际实现上,IT 架构里还是有服务器的,只是对从客户应用研发不可见了,服务器由云厂商托管和维护,用户只需要将代码打包成容器即可。随着云原生技术的演进,以应用为中心,资源按需使用的 Serverless 技术逐渐成为主流。Gartner 预测,2025 年将有 50% 以上的全球企业部署 Serverless。


Knative 是基于 Kubernetes 之上提供的一款开源 Serverless 应用框架,其目标就是制定云原生、跨平台的 Serverless 容器编排标准,帮助您部署和管理现代化的 Serverless工作负载,打造企业级 Serverless 容器平台。Knative 于 2021 年 11 月 2 日正式发布 1.0 版本,达到了一个重要的里程碑,随着 2022 年 3 月 2 日加入到 CNCF,越来越多的开发者拥抱 Knative 。


阿里云容器服务从 Knative 早期版本开始产品化集成,持续跟进 Knative 社区功能迭代,并与容器服务 ACK、消息、存储、网络等云产品进行了全方位的融合,提供了生产级别的 Knative 能力。


点击此处了解更多阿里云 Knative 产品相关信息

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《阿里云云原生 Serverless 案例集》——典型案例——游戏-小迈科技
《阿里云云原生 Serverless 案例集》——典型案例——游戏-小迈科技
22 0
《阿里云云原生 Serverless 案例集》——典型案例——广告传媒-鱼传科技
《阿里云云原生 Serverless 案例集》——典型案例——广告传媒-鱼传科技
28 0
如何用serverless部署wordpress?【AI科技应用-每日问答】
如何用serverless部署wordpress?【AI科技应用-每日问答】
1033 0
玩转AIGC,5分钟 Serverless 部署 Stable Diffustion 服务
双重奖品设置,完成体验场景可得社区1000 积分兑换奖品,还可参加 AI 生成图像比赛赢取 Airpods、500 元猫超卡及社区定制抱枕!
32011 0
《Serverless 开发实战-快速开发一个分布式Puppeteer 网页截图服务》电子版地址
Serverless 开发实战-快速开发一个分布式Puppeteer 网页截图服务
30 0
【体验有奖】 玩转 AIGC,Serverless 一键部署 AI 图像生成服务
【体验有奖】 玩转 AIGC,Serverless 一键部署 AI 图像生成服务
485 0
EMQ
Serverless MQTT 服务即将正式上线、新增 2 个平台安装包
EMQX Cloud Serverless 正式版已于四月初正式上线。该版本通过多租户技术和按量计费的模式,为用户提供了极速的部署创建和有效的成本控制。
51 0
使用ASM管理Knative服务(2):使用Knative on ASM部署Serverless应用
如何在阿里云服务网格ASM中开启Knative on ASM功能, 并结合ACK或者ASK部署管理Serverless应用服务。
171 0
《基于阿里云容器服务 实现Serverless服务》电子版地址
基于阿里云容器服务 实现Serverless服务
52 0
Serverless 服务中的前端解决方案——总结
Serverless 服务中的前端解决方案——总结自制脑图
34 0
Serverless 服务中的前端解决方案——给函数预热
Serverless 服务中的前端解决方案——给函数预热自制脑图
44 0
Serverless 服务中的前端解决方案——执行上下文重用
Serverless 服务中的前端解决方案——执行上下文重用自制脑图
30 0
Serverless 服务中的前端解决方案——函数冷启动的时机
Serverless 服务中的前端解决方案——函数冷启动的时机自制脑图
40 0
ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!
+关注
阿里云云原生小助手
技术工作者
文章
问答
视频
相关电子书
更多
微服务与Serverless
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载