幻方 AI 发布了其沉淀多年的深度学习套件 hfai ,吸引了众多同行研究员和开发者们咨询试用。整个套件的功能较多,而熟悉掌握了这套规则,是能够轻松地调用起平台的算力资源,从而高效完成训练任务的。为此,我们专门创建了 “hfai 使用心法” 系列专辑,陆续为大家介绍 hfai 一些功能的设计思路和原理,帮助大家更快上手 hfai,游刃有余的应对深度学习作业的各项挑战。
之前的文章为大家介绍了使用 haienv
构建运行环境和执行任务,然而对于一些特殊的场景,如强化学习、物理仿真等,单单通过安装 Python 依赖已不足以满足需求。研究者往往会构建项目特有镜像。如何将这类需求在萤火集群上支持是幻方 AI 研发者们在思考研究的问题。
最近,hfai images
功能面世,为研究者和开发者们提供了一套解决此类方法的绝招。本期文章将为大家详细介绍。
使用场景
如上一期文章所介绍的,haienv 为萤火集群的用户提供了自建 Python 运行环境的能力,其支持 pip, conda 两种方式满足大部分用户环境构建的需求。
而 hfai images
解决的是一些非 Python 环境安装的问题,比如物理仿真里要安装模拟器,分子计算工具等。
幻方 AI 对集群中的镜像进行了深度优化和封装,以满足萤火集群高性能的深度学习训练要求。因此 hfai 虽支持用户的自有镜像构建,但需要符合 hfai 的规范和流程,其过程需要幻方管理员的参与和支持。
在确定使用 hfai images
之前,请您审视自己的环境安装需求,确定只有自有镜像这一条路比较方便后,可以和管理员联系。
使用流程
hfai images
的使用流程包含如下几步:
-
获取集群中的 base 镜像的 tar 包。我们提供了
cuda_111
和cuda_113
两个版本,基于Ubuntu 20.04
; -
在本地加载上述 tar 包,比如
registry.high-flyer.cn/platform/hf_training:ubuntu2004-cu113-20221019
; -
基于上述 base 镜像构建自己的镜像(比如
python:3.8-alpine
); -
docker save
自己的镜像,保存成 tar 包(比如python-alpine.tar
),通过hfai workspace
上传到萤火集群; -
打开 Studio 进入 workspace 目录,使用
hfai images load
命令(比如hfai images load python-alpine.tar
); -
等待完成,可以通过
hfai images list
命令查看。这里镜像加载完成后返回如下结果: -
等状态变成
loaded
之后,您才可以通过hfai python test.py -- -n 1 --image registry.high-flyer.cn/hfai/python:3.8-alpine
来使用您所构建的镜像。