9️⃣学学代码之’docker‘—evo2 部署

因为工作原因所以需要使用到docker, 说起来还是我第一次使用docker 呢。在这里记录一下用到的代码。是在工作电脑上跑的,系统是 Ubuntu 22.04.5 。 电脑上的docker 都是安装好的所以,对于docker 是什么,以及怎么下载,这里不做赘述。有兴趣的朋友可以参考这份手册:
这里仅仅只记录我部署一个最简单的docker 所使用的代码,顺序,以及一些注释:
docker配置的最终目的是有一个打开就能运行部署模型不用额外再去调环境,至于需要被打开的是什么,后续再说。先简单的把使用最简单的docker 分为3 步: 1. 创建一个docker file (推荐使用 VS code) 2. 明确docker 参数们 (不想做这两步的同学可以下载一个dockerfile,从github 上面下载就好)
  1. build 一个镜像
  1. 启动容器
这里以Evo2 的dockerfile 作为例子,这里是它的github 页面:
它的dockerfile 呢长这个样子:
乍得一看很吓人是吧其实这个和你小学语文老师干的事情一样指定了四件事情: 什么人(程序),在哪里,什么时间,干什么
FROM 从哪里 NVIDIA 官方 PyTorch 容器(NGC 仓库) RUN 干什么 比如更新软件包列表apt-get update 或者安装evo 2 模型 pip install evo2 workdir 在哪里 这里指定了之后的程序会在哪里跑

设置镜像

在这过程中遇到的虫,小伙伴也可能遇到: 拉取国外镜像完全timeout! 哭了,真的。这个时候就得启用备用方案,国内最接近nvcr.io/nvidia/pytorch:25.04-py3 的镜像应该是华为云的 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nvcr.io/nvidia/pytorch:25.04-py3 不用和flash-attention 大战300 回合的镜像,高而兴之。
在正式设置docker file 之前,建议pull 一下这个镜像试试
如果docker run通了再进行下一步,配置docker file

配置docker file

Docker file 按推荐应该这么配置
记得将apt pip 都换成清华源,并接入hugging face 的镜像,说起来evo 7b的镜像只有7b真是令人高兴
记得加上# Install flash-attn and evo2 run pip install evo2 pip install flash-attn==2.8.0.post2 --no-build-isolation

安装并运行容器

安装完成后,按一下步骤进入容器
并检查evo2 是否安装完毕

如何退出容器

Ctrl + P, 并快速按 Ctrl + Q
Prev
字节跳动AI4Science全家桶
Next
我,AI, 和 AI的一切
Loading...