更新时间:2024-10-30 GMT+08:00
分享

镜像制作(训练)

Octopus平台依赖算子镜像内的/bin/bash、stdbuf、tee软件,请确保基础镜像内包含上述软件且能通过PATH找到。

一般情况下,训练与评测定义为同一个引擎,主要包括算法或评测脚本运行所需要的基本依赖环境。用户可使用命令行模式或Dockerfile模式进行构建。以训练、评测镜像为例,一般的镜像制作Dockerfile示例如下(xxx替换为实际路径):

# 载入基础镜像,训练或评测引擎一般需包含cuda/cudnn等算法基础环境。用户可手动制作或拉取官方镜像 
FROM xxx/cuda:11.0.3-devel-ubuntu18.04
 
# 设置工作目录【可选】默认为ROOT,用户可修改USER及PATH
WORKDIR /root/workspace
 
# 安装用户APT环境。如果需要修改/etc/apt/sources.list可替换
COPY /path/to/sources.list /etc/apt/sources.list
RUN apt-get install vim
 
# 安装用户算法环境。如果需要修改~/.pip/pip.conf可替换。用户也可安装miniconda进行包管理
COPY /path/to/pip.conf /root/.pip/pip.conf
COPY /path/to/requirements.txt /root
RUN pip install –r /root/requirements.txt
 
# 设置环境变量【可选】
ENV PYTHONUNBUFFERED 1

编译镜像类似上述训练、评测镜像制作方式,但一般不包含cuda/cudnn库,需替换为用户的编译环境。

对于Dockerfile的统一构建方式如下:

docker build –f [DockerfileName] –t [ImageName:ImageVersion] .

镜像运行时,会向运行环境注入部分默认文件配置:

表1 环境变量说明

任务名称

文件名

环境变量

训练任务

增量模型目录

MODEL_PATH="/tmp/data/model"

训练产物目录

TMP_RESULT_PATH= "/tmp/result"

数据集目录

DATASET_PATH=" ['/tmp/data/dataset/dataset-0']"

评测任务

评测结果目录

TMP_RESULT_PATH= "/tmp/result"

模型版本文件目录

MODEL_PATH="/tmp/data/model"

数据集目录

DATASET_PATH= "/tmp/data/dataset/dataset-0"

编译任务

模型版本文件目录

MODEL_PATH="/tmp/data/model"

编译产物目录

TMP_RESULT_PATH= "/tmp/result"

预标注任务

数据集目录

OCTPS_DATASET_DIR="/tmp/…/data"

模型版本文件目录

OCTPS_MODEL_DIR="/tmp/…/model"

模型版本关联标注物文件路径

OCTPS_META_PATH="/tmp/…/meta/label_meta_infos.json"

预标注结果数据目录

TARGET_RESULT_DIR="/tmp/…/result/data"

预标注日志文件目录

TARGET_LOG_DIR="/tmp/…/result/log"

推理服务

模型版本文件目录

OCTOPUS_MODEL="/home/mind/model"

相关文档