要配置 PyCharm 以使用包含多個參數的 shell 腳本(如 run.sh
)來調試 Python 程序,您可以按照以下步驟操作:
- 創建一個新的運行/調試配置:
- 在 PyCharm 中,點擊“運行”菜單旁邊的齒輪圖標,選擇“編輯配置”(或使用快捷鍵
Ctrl+Shift+Alt+S
)。 - 點擊左上角的“+”號,選擇“Python”。
- 在 PyCharm 中,點擊“運行”菜單旁邊的齒輪圖標,選擇“編輯配置”(或使用快捷鍵
- 配置腳本參數:
- 在新創建的配置中,您需要設置“腳本路徑”為您的 Python 腳本路徑(在這個例子中是
inference_pangu_vllm.py
)。 - 在“參數”字段中,您需要輸入所有傳遞給 Python 腳本的參數。這些參數可以從
run.sh
腳本中的command
變量獲得。您可以將這些參數復制并粘貼到 PyCharm 的參數字段中,確保格式正確。
- 在新創建的配置中,您需要設置“腳本路徑”為您的 Python 腳本路徑(在這個例子中是
- 設置環境變量:
- 在 PyCharm 的運行/調試配置中,有一個“環境變量”部分。在這里,您需要添加
run.sh
腳本中設置的所有環境變量,例如PRECHECKPOINT_PATH
,VOCAB_PATH
,MICRO_BATCH_SIZE
等。
- 在 PyCharm 的運行/調試配置中,有一個“環境變量”部分。在這里,您需要添加
- 配置工作目錄:
- 在“工作目錄”字段中,設置為您項目的工作目錄,通常是
PROJECT_DIR
指定的路徑。
以下是一個示例配置:
- 在“工作目錄”字段中,設置為您項目的工作目錄,通常是
- 腳本路徑:
./pangu/torch/streaming_decode/inference_pangu_vllm.py
- 參數:
--num-layers 62 --hidden-size 6144 --ffn-hidden-size 27648 --num-attention-heads 48 --group-query-attention --num-query-groups 8 --swiglu --untie-embeddings-and-output-weights --disable-bias-linear --position-embedding-type rope --rotary-base 1000000 --rope-cache --use-rope-fp32 --use-fused-rotary-pos-emb --use-rotary-position-embeddings --shape-format BSH --use-flash-attn --sparse-mode 2 --tokenizer-type PretrainedFromHF --tokenizer-not-use-fast --padded-vocab-size 165664 --fp16 --tokenizer-name-or-path ${VOCAB_PATH} --use_prefix_txt_for_prompt --eos_id 165569 --actual-vocab-size 165664 --attention-softmax-in-fp32 --normalization RMSNorm --norm-epsilon 1e-5 --use-fused-rmsnorm --use-gemma-post-norm --max-position-embeddings 32768 --no-top-query-layer --make-vocab-size-divisible-by 16 --language ${LANGUAGE} --nlp-only --use-act-seq-len --use_FIA --inner_precise 0 --kvselect_mode topk
- 環境變量:
SCRIPT_DIR=/path/to/script_dir PROJECT_DIR=/path/to/project_dir PRECHECKPOINT_PATH=/data/models/Pangu_38B_3.1.34.B101_32K/Deploy/Checkpoint VOCAB_PATH=/path/to/resource/vocab/pangu_tokenizer_llama3_expand_13b_v2_deleted MICRO_BATCH_SIZE=1 EN_SEQ_LEN=32000 DE_SEQ_LEN=40 RUN_SCRIPT=./pangu/torch/streaming_decode/inference_pangu_vllm.py DISTRIBUTED_ARGS=... INFERENCE_ARGS=... OUTPUT_TEXT_DIR=... LANGUAGE=...
- 啟動調試:
- 配置完成后,點擊 PyCharm 中的 debug 按鈕(通常是綠色甲蟲圖標)。
請注意,您可能需要根據實際情況調整路徑和環境變量。如果DISTRIBUTED_ARGS
和INFERENCE_ARGS
在其他地方定義,您也需要將它們添加到環境變量或參數中。
- 配置完成后,點擊 PyCharm 中的 debug 按鈕(通常是綠色甲蟲圖標)。