diff --git a/README.md b/README.md index bb704f948a01207ff149f1c6d62fce3a957ded48..6ec62c7961247bb06f017e770d833a63d4709514 100644 --- a/README.md +++ b/README.md @@ -54,8 +54,8 @@ MindSpeed-Core-MS的依赖配套如下表,安装步骤参考[基础安装指 - DeepSeek V3 - 671B + DeepSeek V3 + 671B 4K 预训练 64x8 @@ -79,11 +79,29 @@ MindSpeed-Core-MS的依赖配套如下表,安装步骤参考[基础安装指 - + + 4K + r1-zero + 52x8 + BF16 + + + + + + + Qwen25 + 7B + 4k + r1-zero + 2x8 + BF16 + + + + ---- - # 使用指南 按照[基础安装指导](./docs/INSTALLATION.md)完成相关基础依赖安装后,用户可试用自然语言模型对应的补丁工具拉取代码并完成相关转换。 @@ -96,28 +114,32 @@ MindSpeed-Core-MS的依赖配套如下表,安装步骤参考[基础安装指 git clone -b feature-0.2 https://gitee.com/ascend/MindSpeed-Core-MS.git ``` -## 一键转换 +## MindSpeed-LLM + +### 一键转换 补丁工具集成了相关代码仓拉取、代码自动转换适配以及模型启动shell脚本自动适配功能,依赖以下配置: - 所部署容器网络可用,python已安装 - git已完成配置,可以正常进行clone操作 -详细介绍请见补丁工具说明。用户执行相应命令即可一键转换。 +详细介绍请见补丁工具说明。用户执行命令即可一键转换。 ```shell cd MindSpeed-Core-MS +#deepseek v3预训练、微调 source test_convert_llm.sh ``` -## 设置环境 +### 设置环境 ```shell +#deepseek v3预训练、微调 MindSpeed_Core_MS_PATH=$(pwd) export PYTHONPATH=${MindSpeed_Core_MS_PATH}/msadapter/mindtorch:${MindSpeed_Core_MS_PATH}/Megatron-LM:${MindSpeed_Core_MS_PATH}/MindSpeed:${MindSpeed_Core_MS_PATH}/MindSpeed-LLM:${MindSpeed_Core_MS_PATH}/transformers/src/:$PYTHONPATH ``` -## 模型训练 +### 模型训练 在进行一键转换安装后,用户即可进行模型训练,提供以下模型任务拉起流程作为参考。 @@ -125,6 +147,43 @@ export PYTHONPATH=${MindSpeed_Core_MS_PATH}/msadapter/mindtorch:${MindSpeed_Core --- +## MindSpeed-RL + +### 一键转换 + +补丁工具集成了相关代码仓拉取、代码自动转换适配以及模型启动shell脚本自动适配功能,依赖以下配置: + +- 所部署容器网络可用,python已安装 +- git已完成配置,可以正常进行clone操作 + +详细介绍请见补丁工具说明。用户执行命令即可一键转换。 + +```shell +cd MindSpeed-Core-MS +#deepseek v3-r1-zero、qwen25-7b-r1-zero +source test_convert_rl.sh +``` + +### 设置环境 + +```shell +#deepseek v3-r1-zero、qwen25-7b-r1-zero +MindSpeed_Core_MS_PATH=$(pwd) +Ascend_PATH=/usr/loacl/Ascend/ascend-toolkit/latest/ +export PYTHONPATH=${MindSpeed_Core_MS_PATH}/msadapter/mindtorch:${MindSpeed_Core_MS_PATH}/MindSpeed-LLM/:${MindSpeed_Core_MS_PATH}/MindSpeed/: \ + ${MindSpeed_Core_MS_PATH}/Megatron-LM/:${MindSpeed_Core_MS_PATH}/vllm/:${MindSpeed_Core_MS_PATH}/vllm-ascend/: \ + ${MindSpeed_Core_MS_PATH}/transformers/src/: \ + ${Ascend_PATH}/python/site-packages:${Ascend_PATH}/opp/built-in/op_impl/ai_core/tbe: +``` + +### 模型训练 + +在进行一键转换安装后,用户即可进行模型训练,提供以下模型任务拉起流程作为参考。 + +- [**DEEPSEEK V3-R1-ZERO/QWEN25-7B-R1-ZERO**](./docs/GRPO.md) + +--- + # 常见问题 FAQ 相关FAQ请参考链接:[FAQ](./docs/FAQ.md) diff --git a/README_RL.md b/README_RL.md deleted file mode 100644 index 8e920374d2a34981df97a3bf9054cc17dfd60d2c..0000000000000000000000000000000000000000 --- a/README_RL.md +++ /dev/null @@ -1,42 +0,0 @@ -# RL使用 - -## 转换脚本 - -test_convert_rl.sh 脚本自动执行以下设置过程: - -1. 克隆所需仓库: - - MindSpeed-LLM(特定提交:36bd5742b51c84ea762dc57f8943b0ee5301ee74) - - MindSpeed(特定提交:0b832e42) - - Megatron-LM(分支:core_r0.8.0) - - msadapter(特定提交:f0ba1ec1c231135e668f502f13d76f1f1a37e6cb) - - vllm(特定提交:ed6e9075d31e32c8548b480a47d1ffb77da1f54c) - - vllm-ascend(特定提交:701a2870469d8849a50378f9450dc3e851c8af20) - - transformers(分支:v4.47.0) - -2. 应用必要的补丁: - - 将 transformers.diff 应用于 Transformers 仓库 - -3. 使用 transfer.py 工具运行代码转换 - -## 使用说明 - -1. 克隆 MindSpeed-Core-MS 仓库: - - ```shell - git clone https://gitee.com/ascend/MindSpeed-Core-MS.git - cd MindSpeed-Core-MS/ - ``` - -2. 使转换脚本可执行并运行: - - ```shell - chmod +x test_convert_rl.sh - ./test_convert_rl.sh - ``` - -启动任务前需要确保运行: - -```bash -source /usr/local/Ascend/nnal/atb/set_env.sh --cxx_abi=0 -source /usr/local/Ascend/ascend-toolkit/latest/env/ascend_env.sh -``` \ No newline at end of file diff --git a/docs/GRPO.md b/docs/GRPO.md new file mode 100644 index 0000000000000000000000000000000000000000..e94d67a59c4b55cdfc8c2fb23aa81d5c9c9ae08a --- /dev/null +++ b/docs/GRPO.md @@ -0,0 +1,81 @@ +# RL使用 + +## 转换脚本 + +test_convert_rl.sh 脚本自动执行以下设置过程: + +1. 克隆所需仓库: + - MindSpeed-LLM(commit id:421ef7bcb83fb31844a1efb688cde71705c0526e) + - MindSpeed(commit id:0dfa0035ec54d9a74b2f6ee2867367df897299df) + - MindSpeed-RL(分支:2.0.0) + - Megatron-LM(分支:core_r0.8.0) + - msadapter(分支:master) + - vllm(分支:v0.7.3) + - vllm-ascend(commit id:0713836e95fe993feefe334945b5b273e4add1f1) + - transformers(分支:v4.47.0) + +2. 使用 transfer.py 工具运行代码转换 + +## 使用说明 + +1. 克隆 MindSpeed-Core-MS 仓库: + + ```shell + git clone -b feature-0.2 https://gitee.com/ascend/MindSpeed-Core-MS.git + cd MindSpeed-Core-MS/ + ``` + +2. 使转换脚本可执行并运行: + + ```shell + chmod +x test_convert_rl.sh + ./test_convert_rl.sh + ``` + +3. 数据集权重准备 + - 参考MindSpeed-RL仓库下[grpo.md](https://gitee.com/ascend/MindSpeed-RL/blob/master/docs/algorithms/grpo.md) + +## 脚本启动 + +1. 启动任务前需要确保运行: + + ```bash + source /usr/local/Ascend/nnal/atb/set_env.sh --cxx_abi=0 + source /usr/local/Ascend/ascend-toolkit/latest/env/ascend_env.sh + ``` + +2. 设置环境变量 + + ```bash + MindSpeed_Core_MS_PATH=$(pwd) + Ascend_PATH=/usr/loacl/Ascend/ascend-toolkit/latest/ + export PYTHONPATH=${MindSpeed_Core_MS_PATH}/msadapter/mindtorch:${MindSpeed_Core_MS_PATH}/MindSpeed-LLM/:${MindSpeed_Core_MS_PATH}/MindSpeed/: \ + ${MindSpeed_Core_MS_PATH}/Megatron-LM/:${MindSpeed_Core_MS_PATH}/vllm/:${MindSpeed_Core_MS_PATH}/vllm-ascend/: \ + ${MindSpeed_Core_MS_PATH}/transformers/src/: \ + ${Ascend_PATH}/python/site-packages:${Ascend_PATH}/opp/built-in/op_impl/ai_core/tbe: + ``` + +3. 在**MindSpeed-RL/configs/XXX.yaml**中,将tokenizer_name_or_path、data_path、load字段内容修改为刚刚准备的分词目录、数据集目录和权重目录,如下: + + ```shell + # e.g: + tokenizer_name_or_path: ./data/models/Qwen2.5-7B + data_path: ./dataset/data + load: ./ckpt + ``` + +## 启动命令 + +1. qwen25-7b-r1-zero + + ```shell + cd MindSpeed-RL + python cli/train_grpo.py --config-name grpo_trainer_qwen25_7b | tee logs/grpo_trainer_qwen25_7b.log + ``` + +2. deepseek v3-r1-zero + + ```shell + cd MindSpeed-RL + python cli/train_grpo.py --config-name r1_zero_deepseekv3_671b | tee logs/r1_zero_deepseekv3_671b.log + ``` \ No newline at end of file