日前,Alibaba Cloud Linux 3 为使 AI 开发体验更高效,提供了一些优化升级,本文为“Alibaba Cloud Linux 3 AI 能力介绍”系列文章预告篇,以 GPU 实例为例,为大家演示 Alibaba Cloud Linux 3 对 AI 生态的支持。接下来还将陆续发布 2 篇系列文章,主要介绍基于 Alinux 的云市场镜像为用户提供开箱即用的 AI 基础软件环境,以及基于 AMD 介绍 AI 能力差异化。敬请期待。更多 Alibaba Cloud Linux 3 信息可前往官网查看。
1. 挑战
当在 Linux 操作系统上开发人工智能(AI)应用程序时,研发人员可能会遇到一些挑战,这些挑战包括但不限于:
1.1 GPU 驱动程序
为了在 Linux 系统上使用 NVIDIA GPU 进行训练或推理,需要安装和配置正确的 NVIDIA GPU 驱动程序。由于不同的操作系统和 GPU 型号可能需要不同的驱动程序,因此可能需要一些额外的工作。
1.2 AI 框架编译
在 Linux 系统上使用 AI 框架进行编程时,需要安装和配置适当的编译器和其他依赖项。这些框架通常需要进行编译,因此需要确保正确安装了编译器和其他依赖项,并正确配置编译器。
1.3 软件兼容性
Linux 操作系统支持许多不同的软件和工具,但不同版本和发行版之间可能存在兼容性问题。这可能会导致某些程序无法正常运行或者在某些操作系统上不可用。因此,研发人员需要了解其工作环境的软件兼容性,并进行必要的配置和修改。
1.4 性能问题
AI 软件栈是一个异常复杂的系统,通常需要对不同型号的 CPU 和 GPU 进行专业的优化,才能发挥其最佳性能。软硬件协同的性能优化对于 AI 软件栈来说是一个具有挑战性的任务,需要拥有高超的技术水平和专业知识。
阿里云第三代云服务器操作系统 Alibaba Cloud Linux 3(以下简称“Alinux 3”)是基于龙蜥操作系统 Anolis OS 研发的商业版操作系统,为开发人员提供了强大的 AI 开发平台,通过支持龙蜥生态 repo(epao),Alinux 3 实现了对主流的 nvidia GPU 和 CUDA 生态的全面支持,使得 AI 开发更加便捷高效。此外,Alinux 3 还支持主流的 AI 框架 TensorFlow/PyTorch,intel/amd 等不同 CPU 平台对 AI 的优化,还将引入了 modelscope、huggingface 等大模型 SDK 的原生支持,为开发人员提供了丰富的资源和工具。这些支持,使得 Alinux 3 成为了一个完善的 AI 开发平台,解决 AI 开发人员的痛点问题,不用一直折腾环境,让 AI 开发体验更容易更高效。
2. 优化升级
Alinux 3 为开发人员提供了强大的 AI 开发平台。为了解决以上研发人员可能遇到的挑战,Alinux 3 提供了以下几点优化升级:
2.1 Alinux 3 通过引入龙蜥生态软件仓库(epao)
支持开发者一键安装主流 NVIDIA GPU 驱动以及 CUDA 加速库,节省了开发者需要匹配驱动版本以及手动安装的时间。
2.2 epao 仓库中还提供了对主流 AI 框架 Tensorflow/PyTorch 的版本支持,同时安装过程中会自动解决 AI 框架的依赖问题,开发者无需进行额外编译,即可搭配系统 Python 环境进行快速开发。
2.3 Alinux 3 的 AI 能力在提供给开发者之前,所有组件均经过兼容性测试,开发者可以一键安装对应的 AI 能力,免去了环境配置中可能出现的对系统依赖项的修改,提高了使用过程中的稳定性。
2.4 Alinux 3 针对 Intel/AMD 等不同平台的 CPU 进行了 AI 专门优化,更好地释放硬件的全部性能。
2.5 为了更快的适应 AIGC 产业的快速迭代,Alinux 3 还将引入对 ModelScope、HuggingFace 等大模型 SDK 的原生支持,为开发人员提供了丰富的资源和工具。
在多维度的优化加持下,使得 Alinux 3 成为一个完善的 AI 开发平台,解决了 AI 开发人员的痛点问题,让 AI 开发体验更容易更高效。
3. 实例演示
以下以阿里云 GPU 实例为例子,演示 Alinux 3 对 AI 生态的支持:
3.1 购买 GPU 实例
3.2 选择 Alinux 3 镜像
3.3 安装 epao repo 配置
dnf install -y anolis-epao-release
3.4 安装nvidia GPU driver
安装 nvidia driver 之前先保证 kernel-devel 已安装,确保 nvidia driver 安装成功。
dnf install -y kernel-devel-$(uname-r)
安装 nvidia driver:
dnf install -y nvidia-driver nvidia-driver-cuda
安装完成后可以通过 nvidia-smi 命令查看 GPU 设备状态。
3.5 安装 cuda 生态库
dnf install -y cuda
3.6 安装 AI 框架 tensorflow/pytorch
当前提供 CPU 版的 tensorflow/pytorch,未来将支持 GPU 版的 AI 框架。
dnf install tensorflow -y dnf install pytorch -y
安装完成后可通过简单的命令查看是否安装成功:
3.7 部署模型
使用 Alinux 3 对 AI 的生态支持,可以部署 GPT-2 Large 模型来进行本文续写任务。
安装 Git 以及 Git LFS 方便后续下载模型。
dnf install -y git git-lfs wget
更新 pip,便于后续部署 Python 环境。
python -m pip install --upgrade pip
启用 Git LFS 的支持。
git lfs install
下载 write-with-transformer 项目源码,以及预训练模型。write-with-transformer 项目是一个网页写作 APP,可以使用 GPT-2 大模型对写作内容进行续写。
git clone https://huggingface.co/spaces/merve/write-with-transformer GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/gpt2-large wget https://huggingface.co/gpt2-large/resolve/main/pytorch_model.bin -O gpt2-large/pytorch_model.bin
安装 write-with-transformer 所需要的依赖环境。
cd ~/write-with-transformer pip install --ignore-installed pyyaml==5.1 pip install -r requirements.txt
环境部署完毕后,就可以运行网页版 APP,来体验 GPT-2 帮助完成写作的乐趣。目前 GPT-2 只支持使用英文进行文本生成。
cd ~/write-with-transformer sed -i 's?"gpt2-large"?"../gpt2-large"?g' app.py sed -i '34s/10/32/;34s/30/120/' app.py streamlit run app.py --server.port 7860
回显信息出现 External URL: http://:7860 表明网页版 APP 运行成功。
4. 关于龙蜥
龙蜥社区是立足云计算打造面向国际的 Linux 服务器操作系统开源根社区及创新平台。龙蜥操作系统(Anolis OS)是龙蜥社区推出的 Linux 发行版,拥有三大核心能力:提效降本、更加稳定、更加安全。
目前,Anolis OS 23 已发布,全面支持智能计算,兼容主流 AI 框架,支持一键安装 nvidia GPU 驱动、CUDA 库等,完善适配 Intel、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。