# docker buildx build --platform linux/x86_64 -t "verlai/verl:$TAG" -f docker/$FILE . # the one in docker.io is an alias for the one veturbo # FROM vemlp-cn-beijing.cr.volces.com/veturbo/pytorch:2.4-cu124 FROM docker.io/haibinlin/verl:v0.0.5-th2.4.0-cu124-base # only config pip index with https://pypi.tuna.tsinghua.edu.cn/simple if needed # unset for now RUN pip3 config unset global.index-url # transformers 4.47.0 contains the following bug: # AttributeError: 'Gemma2Attention' object has no attribute '_flash_attn_uses_top_left_mask' RUN pip3 install --no-cache-dir \ torch==2.4.0 \ accelerate \ codetiming \ dill \ hydra-core \ numpy \ pybind11 \ tensordict \ "transformers <= 4.46.0" RUN pip3 install --no-cache-dir flash-attn==2.7.0.post2 --no-build-isolation # vllm depends on ray, and veRL does not support ray > 2.37 RUN pip3 install --no-cache-dir vllm==0.6.3 ray==2.10 # install apex RUN MAX_JOBS=4 pip3 install -v --disable-pip-version-check --no-cache-dir --no-build-isolation \ --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" \ git+https://github.com/NVIDIA/apex # install Transformer Engine # - flash-attn pinned to 2.5.3 by TransformerEngine, switch to eric-haibin-lin/TransformerEngine.git@v1.7.0 to relax version req # - install with: MAX_JOBS=1 NINJA_FLAGS="-j1" TE_BUILD_WITH_NINJA=0 to avoid OOM # - cudnn is required by TransformerEngine # RUN CUDNN_PATH=/opt/conda/lib/python3.11/site-packages/nvidia/cudnn \ # pip3 install git+https://github.com/eric-haibin-lin/TransformerEngine.git@v1.7.0 RUN MAX_JOBS=1 NINJA_FLAGS="-j1" pip3 install flash-attn==2.5.3 --no-cache-dir --no-build-isolation RUN MAX_JOBS=1 NINJA_FLAGS="-j1" pip3 install git+https://github.com/NVIDIA/TransformerEngine.git@v1.7