DeepSeek-R1-Distill-Llama-8B
Usage
Using the reasoning data generated by DeepSeek-R1, DeepSeek AI fine-tuned several dense models that are widely used in the research community, slightly changing their configs and tokenizers. DeepSeek-R1-Distill-Llama-8B is one of them.
权重
权重下载
加载镜像
前往昇腾社区/开发资源下载适配DeepSeek-R1-Distill-Llama-8B的镜像包:1.0.0-800I-A2-py311-openeuler24.03-lts或1.0.0-300I-Duo-py311-openeuler24.03-lts
完成之后,请使用docker images
命令确认查找具体镜像名称与标签。
镜像中各组件版本配套如下:
组件 | 版本 |
---|---|
MindIE | 1.0.0 |
CANN | 8.0.0 |
PTA | 6.0.0 |
MindStudio | 7.0.0 |
HDK | 24.1.0 |
约束条件
- 部署DeepSeek-R1-Distill-Llama-8B模型至少需要
1台Atlas 800I A2服务器
或者1台插1张Atlas 300I DUO卡的服务器
- 在使用Atlas 300I DUO推理卡部署模型时,需要修改权重目录下的config.json文件,"torch_dtype"字段改为"float16"
- 支持TP=1/2/4/8推理
新建容器
目前提供的MindIE镜像预置了DeepSeek-R1-Distill-Llama-8B模型推理脚本,无需再额外下载模型适配代码,直接新建容器即可。
如果您使用的是root用户镜像(例如从Ascend Hub上取得),并且可以使用特权容器,请使用以下命令启动容器:
[object Object]
如果您希望使用自行构建的普通用户镜像,并且规避容器相关权限风险,可以使用以下命令指定用户与设备:
[object Object]
更多镜像使用信息请参考官方镜像仓库文档。
进入容器
[object Object]
量化权重生成
Atlas 800I A2 w8a8量化
生成量化权重依赖msModelSlim工具,安装方式见此README
量化权重统一使用${ATB_SPEED_HOME_PATH}/examples/convert/model_slim/quantifier.py脚本生成,以下提供Llama模型量化权重生成快速启动命令
W8A8量化权重请使用以下指令生成
- 注意该量化方式仅支持在Atlas 800I A2服务器上运行
[object Object]
Atlas 300I DUO稀疏量化
Step 1 生成W8A8S量化权重
- 注意该量化方式仅支持在Atlas 300I DUO卡上运行
- 修改模型权重config.json中
torch_dtype
字段为float16
- 生成量化权重依赖msModelSlim工具,安装方式见此README
- 进入到{msModelSlim工具路径}/msit/msmodelslim/example/Llama的目录
cd msit/msmodelslim/example/Llama
;
[object Object]
Step 2 量化权重切分及压缩
- 该步骤需要在Atlas 300I DUO卡上运行
[object Object]
[object Object]
- TP数为tensor parallel并行个数
- 注意:若权重生成时以TP=2进行切分,则运行时也需以TP=2运行
- 示例
[object Object]
纯模型推理
对话测试
进入llm_model路径
[object Object]
执行对话测试
[object Object]
性能测试
进入ModelTest路径
[object Object]
运行测试脚本
[object Object]
具体执行batch=1, 输入长度256, 输出长度256用例的4卡并行性能测试命令如下,
Atlas 800I A2:
[object Object]
Atlas 300I Duo:
[object Object]
注:ModelTest为大模型的性能和精度提供测试功能。使用文档请参考
${ATB_SPEED_HOME_PATH}/tests/modeltest/README.md
服务化推理
- 打开配置文件
[object Object]
- 更改配置文件
[object Object]
- 拉起服务化
[object Object]
- 新建窗口测试(VLLM接口)
[object Object]
注: 服务化推理的更多信息请参考MindIE Service用户指南
常见问题
- ImportError: cannot import name 'shard_checkpoint' from 'transformers.modeling_utils'. 降低transformers版本可解决。
[object Object]
声明
- 本代码仓提到的数据集和模型仅作为示例,这些数据集和模型仅供您用于非商业目的,如您使用这些数据集和模型来完成示例,请您特别注意应遵守对应数据集和模型的License,如您因使用数据集或模型而产生侵权纠纷,华为不承担任何责任。
- 如您在使用本代码仓的过程中,发现任何问题(包括但不限于功能问题、合规问题),请在本代码仓提交issue,我们将及时审视并解答。