打破算力瓶颈,快速部署AI大模型应用

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 打破算力瓶颈,快速部署AI大模型应用

作者:庄宇


大语言模型的问世掀起了新一波的 AI 浪潮,而受限于个人电脑的算力资源,用户通常无法在本地运行一个资源需求庞大的AI应用。同样,由于GPU资源紧张,在本地数据中心运行大模型应用也存在挑战。同时近年来 Kubernetes 技术的兴起,也使得协同调度不同架构的计算资源成为可能。然而本地 Kubernetes 集群在运行诸如 AI 模型等对算力资源要求巨大的应用时,往往会面临资源不足的问题,因此越来越多的企业和用户选择采用混合云架构来部署自己的应用和服务。


在之前的文章 选对方法,K8s多集群管理没那么难 中,我们介绍过阿里云 ACK One 注册集群正是为混合云架构而生。无论是本地自建集群还是其他公共云厂商集群,都能够接入注册集群,在阿里云控制台进行统一操作和管理。本文介绍如何在本地通过 kind 快速创建一个 Kubernetes 集群,接入阿里云注册集群,通过本地kind集群提交一个 AI 聊天机器人服务 FastChat,最终通过云上资源运行。


关于 kind

kind 是一个通过使用 docker 容器来模拟节点,帮助用户快速创建本地 Kubernetes 集群的工具。安装 kind 前需要先安装 docker 环境。macOS 用户可以按照如下命令安装 docker 和 kind:


brew install --cask docker
brew install kind


其余系统下 kind 的安装请参见:kind 官方安装教程。安装完成后,可以快速在本地创建一个 Kubernete 集群:


kind create cluster


关于 onectl

Onectl 是阿里云分布式云容器平台的命令行工具,可以帮助用户快捷管理注册集群和集群组件。其主要功能包括:


  • 集群管理:帮助用户在本地管理云上注册集群,包括注册集群的创建、连接、删除与状态描述。
  • 组件管理:帮助用户在本地管理注册集群中安装的组件,包括组件的安装、升级、卸载等。


image.png


更多关于 onectl 的功能描述、安装方法、使用步骤,请参见如何使用 onectl 管理注册集群


基于注册集群快速部署一个 AI 聊天服务

前提条件

  • 已在本地部署 Kubernetes 集群
  • 已在本地安装并配置 onectl


通过 onectl 创建并连接注册集群

以交互式的方式创建注册集群,根据提示选择地域、VPC 等信息即可:


onectl cluster create -i
onectl cluster describe --cluster-id xxx //获取集群状态,等待状态变为waiting


连接注册集群:


onectl cluster connect --cluster-id ***


更多关于使用 onectl 创建注册集群的信息,请参见如何通过onectl创建注册集群


安装组件

要使注册集群能够使用阿里云的云上资源,并对外提供 LoadBalance 类型的 Service,需要安装 ack-virtual-node 组件和 cloud-controller-manager 组件:


onectl addon install ack-virtual-node --version v2.8.0
onectl addon install cloud-controller-manager


部署 AI 聊天服务 FastChat

FashChat 服务的资源文件 fastchat.yaml:


---
apiVersion: v1
kind: Pod
metadata:
  labels:
    app: fastchat
    alibabacloud.com/eci: "true"
  annotations:
    # 指定云上GPU机型
    k8s.aliyun.com/eci-use-specs: ecs.gn6i-c8g1.2xlarge,ecs.gn5-c8g1.2xlarge,ecs.gn6v-c8g1.8xlarge,ecs.gn6i-c16g1.4xlarge
    # 指定存储空间
    k8s.aliyun.com/eci-extra-ephemeral-storage: 100Gi
  name: fastchat
  namespace: default
spec:
  activeDeadlineSeconds: 3600 # 默认运行1小时,节省成本,避免忘记删除
  schedulerName: eci-scheduler
  dnsPolicy: Default
  containers:
  - command:
    - sh
    - -c
    - "/root/webui.sh"
    image: yunqi-registry.cn-shanghai.cr.aliyuncs.com/lab/fastchat:v1.1.0
    imagePullPolicy: IfNotPresent
    name: fastchat
    ports:
    - containerPort: 7860
      protocol: TCP
    readinessProbe:
      failureThreshold: 3
      initialDelaySeconds: 5
      periodSeconds: 10
      successThreshold: 1
      tcpSocket:
        port: 7860
      timeoutSeconds: 1
    resources:
      requests:
        cpu: "8"
        memory: 16Gi
      limits:
        nvidia.com/gpu: 1
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: internet
    service.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type: PayByCLCU
  name: fastchat-svc
  namespace: default
spec:
  externalTrafficPolicy: Local
  ports:
  - port: 7860
    protocol: TCP
    targetPort: 7860
  selector:
    app: fastchat
  type: LoadBalancer


其中,labels 中的 aibabacloud.com/eci 字段指定使用云上 ECI 资源运行此应用,annotations 中的 k8s.aliyun.com/eci-use-specs 指定 ECI 的资源规格。


检查服务状态:


kubectl get svc fastchat-svc


预期输出:


NAME           TYPE           CLUSTER-IP    EXTERNAL-IP    PORT(S)          AGE
fastchat-svc   LoadBalancer   10.96.119.1   47.xxx.xxx.27   7860:30631/TCP   95s


访问 AI 聊天服务

打开浏览器,访问 http://47.xxx.xxx.27:7860


image.png


可以看到 AI 聊天服务 FastChat 已经部署成功,并已经能正常对外提供服务。至此,我们成功在本地kind集群提交了一个AI大模型应用,并成功使用云上计算资源运行。通过接入云上无限算力,打破了本地计算资源瓶颈。


资源清理

服务使用完成后,清理相应资源:


kubectl delete -f fastchat.yaml


相关链接:

[1] 注册集群概述:

https://help.aliyun.com/document_detail/155208.html

[2] 通过 onectl 管理注册集群

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/user-guide/use-onectl-to-manage-registered-clusters

[3] 通过 onectl 创建注册集群

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/user-guide/create-a-registered-cluster-by-using-onectl

[4] 扩容弹性容器实例ECI

https://help.aliyun.com/zh/ack/distributed-cloud-container-platform-for-kubernetes/user-guide/scale-out-elastic-container-instances


11月21日直播预告:如何基于分布式云容器平台 ACK One 实现跨云协同?


  • 全面上云已成现状,目前行业对云原生容器工程师的需求是什么样?人才缺口有多大?
  • ACP 认证的价值和好处是什么?对整个行业的云原生人才培养有哪些积极影响?
  • 云原生领域新进展?未来我们需要重点关注云原生哪些技术?快来直播间与大咖互动提问吧~


直播时间:2023年11月21日(周二)20:00

直播嘉宾:阿里云高级技术专家,庄宇;极客帮科技联合创始人&CEO 司巧蕾


点击下方链接或扫描海报二维码即刻预约:

https://live.geekbang.org/room/1952?utm_source=aliyun&utm_medium=zhibotuiguang&utm_term=aliyunzhibotuiguang

image.png

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
1天前
|
人工智能 自然语言处理 搜索推荐
AI技术在智能客服系统中的应用与挑战
【9月更文挑战第32天】本文将探讨AI技术在智能客服系统中的应用及其面临的挑战。我们将分析AI技术如何改变传统客服模式,提高服务质量和效率,并讨论在实际应用中可能遇到的问题和解决方案。
89 65
|
3天前
|
机器学习/深度学习 人工智能 供应链
精准农业:AI在农业生产中的应用
【10月更文挑战第1天】随着科技的发展,人工智能(AI)逐渐渗透到农业领域,通过精准监控和管理提升了农业生产效率和质量。AI在精准农业中的应用包括:精准农田管理,如个性化灌溉和施肥;作物病虫害识别与预测,及时发现并预防病虫害;智能农机自动化作业,提高作业效率;农产品质量检测与分类,确保品质;农业供应链优化,预测需求和价格。尽管面临数据收集、技术接受度等挑战,AI在精准农业中的未来前景广阔,有望实现全程自动化作业、数据驱动决策及智能预警系统,推动农业可持续发展。
22 11
|
1天前
|
机器学习/深度学习 人工智能 监控
AI与未来医疗:重塑健康产业的双刃剑随着科技的迅猛发展,人工智能(AI)正以前所未有的速度融入各行各业,其中医疗领域作为关系到人类生命健康的重要行业,自然也成为AI应用的焦点之一。本文将探讨AI在未来医疗中的潜力与挑战,分析其对健康产业可能带来的革命性变化。
在医疗领域,人工智能不仅仅是一种技术革新,更是一场关乎生死存亡的革命。从诊断到治疗,从后台数据分析到前端临床应用,AI正在全方位地改变传统医疗模式。然而,任何技术的发展都有其两面性,AI也不例外。本文通过深入分析,揭示AI在医疗领域的巨大潜力及其潜在风险,帮助读者更好地理解这一前沿技术对未来健康产业的影响。
|
3天前
|
机器学习/深度学习 数据采集 人工智能
探索AI在医疗诊断中的应用
【9月更文挑战第30天】本文将探讨人工智能(AI)如何在医疗诊断中发挥重要作用。我们将从AI的基本概念开始,然后深入到其在医疗领域的应用,特别是如何帮助医生进行更准确的诊断。最后,我们将通过一些实际的代码示例来展示AI是如何工作的。无论你是AI专家还是医疗专业人士,这篇文章都将为你提供有价值的信息。
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
AI在医疗诊断中的应用与未来展望
随着人工智能技术的飞速发展,AI在医疗领域的应用日益广泛。本文探讨了AI在医疗诊断中的具体应用,包括医学影像分析、电子病历分析和辅助诊断等。同时,讨论了AI技术在未来医疗中的潜力和挑战,如数据隐私保护、算法的公平性和透明度等问题。通过分析具体案例和当前研究成果,本文揭示了AI在提高医疗诊断效率和准确性方面的显著优势,并对其未来发展进行了展望。
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
AI在医疗诊断中的应用
【9月更文挑战第29天】随着科技的发展,人工智能(AI)已经在许多领域得到广泛应用,其中包括医疗诊断。AI可以帮助医生更准确、更快速地进行疾病诊断,提高医疗服务的质量和效率。本文将介绍AI在医疗诊断中的应用,包括图像识别、自然语言处理和预测分析等方面。
|
5天前
|
人工智能 算法 数据中心
从“纸面算力”到“好用算力”,超聚变打通AI+“最后一公里”
2024年,《政府工作报告》首提“AI+”行动,推动人工智能成为新质生产力引擎。市场层面,AI+正深刻变革金融、医疗、制造等行业,但AI算力瓶颈依然存在。在2024年中国算力大会上,超聚变等企业探讨了算力的绿色化和效能提升。超聚变推出的FusionPoD for AI全液冷服务器,显著降低能耗并提升算力效能,其FusionOne AI解决方案也加速了AI在各行业的落地。这些创新将重塑算力格局,推动智能革命。
|
7天前
|
机器学习/深度学习 数据采集 人工智能
探索AI技术在文本生成中的应用与挑战
【9月更文挑战第26天】本文深入探讨了AI技术在文本生成领域的应用,并分析了其面临的挑战。通过介绍AI文本生成的基本原理、应用场景以及未来发展趋势,帮助读者全面了解该技术的潜力和局限性。同时,文章还提供了代码示例,展示了如何使用Python和相关库实现简单的文本生成模型。
30 9
|
13天前
|
人工智能 运维 云计算
阿里云无影AI云电脑亮相 体验大幅升级
9月20日,2024云栖大会上阿里云无影AI云电脑全新亮相,基于最新的终端云计算技术和AI大模型能力,无影的综合体验大幅提升,新增了弹性升降配、双网自由切换、多端操作系统知识库问答、编码大师等AI智能体功能,为安全办公、个人娱乐带来全新的云上流畅体验,更可畅玩《黑神话:悟空》等3A游戏大作。同时,无影还宣布向开发者全面开放应用中心生态,开发者可免费入驻。
121 15
|
7天前
|
机器学习/深度学习 人工智能 算法
AI在医疗领域的应用与挑战
【9月更文挑战第25天】AI技术在医疗领域的应用日益广泛,从辅助诊断到药物研发,再到健康管理等方面都取得了显著成果。然而,随着AI技术的深入应用,也面临着数据隐私、算法透明度、法规政策等挑战。本文将探讨AI在医疗领域的应用现状与未来趋势,以及面临的主要挑战和解决方案。
下一篇
无影云桌面