ModelLink使用llama2推理时pipeline_model_parallel_size始终为1,和转换后的模型数量对不上,修改sh文件中的配置也没用
收藏回复举报
ModelLink使用llama2推理时pipeline_model_parallel_size始终为1,和转换后的模型数量对不上,修改sh文件中的配置也没用
t('forum.solved') 已解决
发表于2024-11-06 10:47:08
0 查看

1、generate_llama2_7b_ptd.sh如下:

 

#!/bin/bash 

 

export CUDA_DEVICE_MAX_CONNECTIONS=1 

 

# please fill these path configurations 

CHECKPOINT="/home/ctdi/ModelLink/model_weights/Llama2-mcore/" 

TOKENIZER_PATH="/home/ctdi/ModelLink/model_from_hf/llama-2-7b-hf/" 

TOKENIZER_MODEL="/home/ctdi/ModelLink/model_from_hf/llama-2-7b-hf/tokenizer.model" 

 

# Change for multinode config 

MASTER_ADDR=localhost 

MASTER_PORT=6001 

NNODES=1 

NODE_RANK=0 

NPUS_PER_NODE=1 

WORLD_SIZE=$(($NPUS_PER_NODE*$NNODES)) 

 

DISTRIBUTED_ARGS="--nproc_per_node $NPUS_PER_NODE --nnodes $NNODES --node_rank $NODE_RANK --master_addr $MASTER_ADDR --master_port $MASTER_PORT" 

 

python -m torch.distributed.launch $DISTRIBUTED_ARGS /home/ctdi/ModelLink/inference.py \ 

       --tensor-model-parallel-size 1  \ 

       --pipeline-model-parallel-size 2  \ 

       --use-mcore-models \ 

       --use-kv-cache \ 

       --use-flash-attn \ 

       --use-fused-swiglu \ 

       --use-fused-rmsnorm \ 

       --use-fused-rotary-pos-emb \ 

       --num-layers 32 \ 

       --hidden-size 4096  \ 

       --ffn-hidden-size 11008 \ 

       --position-embedding-type rope \ 

       --seq-length 4096 \ 

       --max-new-tokens 256 \ 

       --micro-batch-size 4 \ 

       --global-batch-size 16 \ 

       --num-attention-heads 32  \ 

       --max-position-embeddings 4096 \ 

       --swiglu \ 

       --load "${CHECKPOINT}"  \ 

       --tokenizer-type PretrainedFromHF  \ 

       --tokenizer-name-or-path "${TOKENIZER_PATH}" \ 

       --tokenizer-model "${TOKENIZER_MODEL}"  \ 

       --tokenizer-not-use-fast \ 

       --fp16 \ 

       --normalization RMSNorm \ 

       --untie-embeddings-and-output-weights \ 

       --disable-bias-linear \ 

       --attention-softmax-in-fp32 \ 

       --no-load-optim \ 

       --no-load-rng \ 

       --no-masked-softmax-fusion \ 

       --no-gradient-accumulation-fusion \ 

       --exit-on-missing-checkpoint \ 

       --make-vocab-size-divisible-by 1 \ 

       | tee logs/generate_mcore_llama2_7b.log 

 2、llama2模型hf格式权重如下:

cke_36676.png

通过hf转换为mcore格式后权重如下:

cke_25529.png

3、运行generate_llama2_7b_ptd.sh后报错:

cke_50463.png

其中pipeline_model_parallel_size始终为1,与转换后的模型对不上

我要发帖子