Gemma2适配昇腾开源验证任务心得
Gemma2适配昇腾开源验证任务心得
首先看了一下任务计划书:https://bbs.huaweicloud.com/blogs/441415,主要目的是将 Gemma2 项目适配至华为的 Ascend(昇腾)和 Kunpeng(鲲鹏)处理器,确保其在这些硬件平台上的高效运行,也就是说验证Gemma2能不能在 Ascend(昇腾)上运行。
开发过程
明确目的后开始熟悉模型,Gemma2的github网址:https://github.com/google/gemma_pytorch 。为了方便后续使用,我把代码库中的代码文件fork到了我自己的代码仓库,代码仓库的README文件有模型的镜像使用方法,不过我为了方便后续让模型使用npu进行推理选择了用代码运行模型。模型文件可以去常用的模型仓库网站寻找模型然后下载,比如huggingface和魔塔社区。
我是在魔塔社区下载的模型,版本为:gemma-2-2b-it。
模型下载步骤:先使用:
pip install modelscope
安装modelscope,然后使用:
modelscope download --model LLM-Research/gemma-2-2b-it --local_dir ./
把模型下载到当前文件夹。
编写推理代码在NPU推理模型
官方并没有直接提供gemma2的推理代码,需要自己编写,可以参考:https://gitcode.com/huyanbo/gemma2/overview ,将该代码仓库的文件下载到你本地模型所在文件夹,安装readme文件使用。
创建python虚拟环境并且安装numpy库(注:numpy版本建议安装1.23左右的,不要安装2.0及以上的,会有兼容问题。)
使用NPU推理模型需要安装pytorch、CANN和torch_npu,
先安装CANN,参考:https://www.hiascend.com/zh/developer/download/community/result?module=cann。
安装pytorch 和torch_npu参考:https://github.com/Ascend/pytorch/blob/master/README.zh.md 。
其他的代码依赖包可以运行
pip install -r requirement.txt
,把我的代码库里requirement.txt文件中写出的依赖包安装到你的环境之中。
1 验收材料
1.1 交付件清单
(1)验证DEMO地址:https://gitcode.com/huyanbo/gemma2/overview
(2)验证DEMO修改记录(可以有多个修改记录,只包含和本任务验证强相关的提交记录,比如添加依赖、增加配置文件、演示开源软件功能使用的代码等):https://gitcode.com/huyanbo/gemma2/commits/detail/b40df57cb019a7defe35e2fcba72e0463734ca1f?ref=ascend_npu
(3)博客地址:https://bbs.huaweicloud.com/blogs/442405
2 资源清单
产品名称 |
NPU架构 |
CPU架构 |
操作系统 |
云堡垒机 |
Ascend 910B3 |
鲲鹏计算Kunpeng-920 |
Huawei Cloud EulerOS 2.0 (aarch64) |
3 测试结果
Npu推理
运行程序前
运行程序后
我编辑npu时指定了npu编号为3,可以看到npu:3多了一个程序在运行。
推理结果
此模型是对话模型,我输入问题并提交给模型后,模型正确反馈了答案。
- 点赞
- 收藏
- 关注作者
评论(0)