chatGPT大规模使用kubernetes,云原生技术在AI领域也大有所为

2023-05-09 00:00:00 模型 技术 部署 应用程序 自动化

近ChatGPT引爆了人工智能,除了人工智能,其他技术好像偃旗息鼓了。那人工智能的时代,云原生扮演什么角色呢?实际上随着人工智能技术的不断发展,云原生技术已经成为AI领域中不可或缺的一部分。云原生技术可以帮助开发人员更高效地构建、部署和管理AI应用程序,从而实现更好的性能和可靠性。本文将探讨云原生技术在AI领域的应用方向、应用案例以及云原生AI开发平台的发展。

一、云原生在AI领域的应用方向

云原生在AI领域其实也有很多的应用方向,突出的是弹性部署、自动化和可维护性、安全和隔离。

1.1、弹性部署

云原生技术提供了一种弹性和可扩展的方式来构建和部署AI应用程序。开发人员可以根据需要添加或删除资源,以适应不同的工作负载。这种灵活性可以确保应用程序在任何情况下都具有佳的性能和可靠性。

我们知道LLM(Large language Model )模型的训练和推理都需要大量的部署训练和推理应用节点,AI的训练是非常消耗资源的,这就更加需要“弹性”,根据实际需要动态调整应用程序的部署,而这明显是云原生的强项。

1.2、自动化和可维护性

云原生技术可以自动化许多与应用程序部署和管理相关的任务。例如,自动化部署、自动化扩展和自动化恢复。这种自动化可以大大减少人工干预,提高应用程序的可维护性和可靠性。

大规模的AI应用程序一般都是分布式部署,协同工作,应用程序部署扩展、失败维护等都是日常稀松平常的操作,但是动辄几千上万的应用,如果没有自动化的能力,靠人工的话,那可就违背“人工智能”的初心了。

1.3安全性和隔离性

AI应用程序通常需要访问敏感数据,因此安全性和隔离性非常重要。云原生技术可以提供一系列安全措施,如访问控制、加密和隔离,以确保数据的保密性和完整性。

二、云原生在AI领域的应用案例

2.1、chatGPT全面使用云原生技术

Openai官方博客介绍了chatGPT使用云原生技术支持模型的训练。官方表示openai已将 Kubernetes 集群扩展到 7500 个节点,为GPT-3、  CLIP和 DALL·E等大型模型提供了可扩展的基础设施 ,同时也为神经语言模型快速小规模迭代研究提供了基础设施。

ChatGPT通过将其代码和依赖项打包成容器来进行部署和管理,容器化技术可以使ChatGPT应用程序在不同的环境中运行,而不会受到环境差异的影,同时Kubernetes提供了强大的容器编排和管理功能,可以自动化部署、扩展和管理应用程序。

ChatGPT的部署和运维是自动化的,可以通过持续集成和持续交付(CI/CD)流水线来实现。这种自动化技术可以使ChatGPT应用程序的部署和管理更加可靠和高效。另外ChatGPT应用的部署可以根据负载的变化自动调整其资源使用量,以实现弹性伸缩。

从官方博客介绍,chatGPT项目的监控也采用了云原生的相关技术,典型的使用 了Prometheus 收集时间序列指标,使用 Grafana 实现了图表、仪表板和警报。

2.2、TensorFlow Serving和k8s及docker的集合

TensorFlow Serving是一个基于云原生技术的开源软件,用于部署机器学习模型。它可以自动化处理模型版本控制、模型部署、模型监控和模型更新等任务。TensorFlow Serving可以自动化实现机器学习模型的部署和管理,使开发人员可以更专注于模型的训练和优化。

使用TensorFlow Serving的好的方法是使用Docker镜像,能够非常简单的使用Docker Swarm和kubernetes部署TensorFlow Serving。

可以不管上层的模型框架如何变化,云原生技术都能够作为一些设施能力让这一切变得更加丝滑。

2.3、AWS SageMaker

AWS SageMaker是一种云原生的机器学习开发平台,可以帮助开发人员快速构建、训练和部署机器学习模型。它可以自动化处理许多与机器学习开发相关的任务,如数据准备、模型训练和模型部署。AWS SageMaker还提供了一系列可视化工具,以帮助开发人员更好地了解和优化模型性能,这一切都是向云而生的。

三、云原生AI开发平台的发展

除了以上的案例之外,有另外一个明显的趋势已经形成,那就是云原生AI开发平台。这一趋势正在加速,国内和国外的技术大佬和资本圈大佬都在往这个方面发力。

云原生AI开发平台指的是把云原生技术和平台与AI 应用相结合通过相应的技术配套和长期工程实践,来满足AI业务场景。

虽然类chatGPT的应用如火如荼,但是很多公司在实际使用大语言模型的时候却面临诸多的困难,例如资源投入太大、模型训练困难、周期长等等。而云原生AI开发平台正是为了解决这个问题。

未来将能够在云上开发AI应用,训练垂直领域的独特模型,有限的资源投入就可以看到一定的效果。例如在云上进行NLP超大模型训练,智能营销以及自动驾驶的应用,AI训练的速度、开发应用的速度都会大幅提升,成本将能够大幅下降。(这直接决定了企业愿不愿意投入研究)

云服务厂商纷纷推出自己的云原生AI平台和解决方案,例如百度的AI-Native架构实现AI一体化云服务,阿里的云原生AI解决方案全面支持GPU和CPU异构调度,腾讯云推出AI Paas服务等等。这些厂商都推出了全方面的解决方案,把云原生平台的能力和AI的能力结合在一起,共同提供服务。

(图片来源于艾瑞咨询报告)

云原生AI开发平台有以下的优势:

  1. 多云支持

    云原生AI开发平台将能够屏蔽实现多云支持,可以使企业更加灵活地管理和部署他们的AI应用程序,并在需要时快速迁移应用程序到其他云平台。

  2. 弹性计算

    能够根据当前的AI应用的工作负载自动弹性调整资源的使用量,优化成本和资源利用率。

  3. 自动化部署和管理

    云平台自动化部署和管理,由平台解决大部分的管理操作,部署简便,节省大量人力。

  4. 模型和训练数据集管理

    AI时代,模型的训练需要大量的数据集,需要有模型的管理和数据集的管理功能,例如目前火爆的hugging face,云原生的AI平台要具备相关的管理功能。

  5. 屏蔽底层异构架构

    云原生AI开发平台底层支持各种基础硬件,例如GPU、NPU、CPU等,支持对应的异构框架如英伟达的cuda、昇腾的CANN,支持多种计算框架和机器学习框架,如tensorflow、pytorch等,尽量屏蔽底层硬件和框架的差异,减少使用困难。

相信随着AI的快速发展,云原生也会迎来属于它新时代的辉煌

相关文章