昇腾910b部署Chatglm3-6b进行流式输出【pytorch框架】NPU推理

文章目录

准备阶段

避坑阶段

  • 每个人的服务器都不一样,在ChatGLM3/issues中别人只需要修改指定驱动,但是我的不行
  • 删除模型文件包中的model.safetensors.index.json,否则加载模型时会自动加载safetensors文件,而不加载bin文件
bash 复制代码
/home/anaconda3/envs/sakura/lib/python3.9/site-packages/torch_npu/contrib/transfer_to_npu.py:124: RuntimeWarning: torch.jit.script will be disabled by transfer_to_npu, which currently does not support it, if you need to enable torch.jit.script, please do not use transfer_to_npu.
  warnings.warn(msg, RuntimeWarning)
Loading checkpoint shards:   0%|                                                                                                                                     | 0/7 [00:00<?, ?it/s]
Traceback (most recent call last):
  File "/home/HwHiAiUser/work/ChatGLM3/basic_demo/cli_demo.py", line 22, in <module>
    model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).npu().eval()
  File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/transformers/models/auto/auto_factory.py", line 558, in from_pretrained
    return model_class.from_pretrained(
  File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/transformers/modeling_utils.py", line 3187, in from_pretrained
    ) = cls._load_pretrained_model(
  File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/transformers/modeling_utils.py", line 3560, in _load_pretrained_model
    state_dict = load_state_dict(shard_file)
  File "/home/anaconda3/envs/sakura/lib/python3.9/site-packages/transformers/modeling_utils.py", line 467, in load_state_dict
    with safe_open(checkpoint_file, framework="pt") as f:
FileNotFoundError: No such file or directory: "/home/HwHiAiUser/models/chatglm3-6b/model-00001-of-00007.safetensors"
/home/anaconda3/envs/sakura/lib/python3.9/tempfile.py:817: ResourceWarning: Implicitly cleaning up <TemporaryDirectory '/tmp/tmp1ygjyx3i'>
  _warnings.warn(warn_message, ResourceWarning)

添加代码

找到ChatGLM3/basic_demo/cli_demo.py

添加以下代码:

python 复制代码
import torch
import torch_npu
import torchvision 
import torchvision_npu
from torch_npu.contrib import transfer_to_npu
import os
import platform
import time
torch_device = "npu:3" # 0~7
torch.npu.set_device(torch.device(torch_device))
torch.npu.set_compile_mode(jit_compile=False)
option = {}
option["NPU_FUZZY_COMPILE_BLACKLIST"] = "Tril"
torch.npu.set_option(option)
print("torch && torch_npu import successfully")

模型加载部分修改为:

python 复制代码
model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).npu().eval()

结果展示

相关推荐
新智元2 分钟前
全球十大AI杀入美股!最新战况曝光,第一名太意外
人工智能·openai
CodeLongBear4 分钟前
从Java后端到Python大模型:我的学习转型与规划
java·python·学习
新智元11 分钟前
ICML 2026史上最严新规:LLM不得列为作者,滥用AI直接退稿
人工智能·openai
ada7_16 分钟前
LeetCode(python)——49.字母异位词分组
java·python·leetcode
后端小肥肠18 分钟前
10W+育儿漫画是怎么做的?我用n8n搭建了自动化工作流,3分钟生成到本地磁盘
人工智能·aigc·agent
我的xiaodoujiao23 分钟前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 23--数据驱动--参数化处理 Yaml 文件
python·学习·测试工具·pytest
电化学仪器白超30 分钟前
④使用 PPTSYNC.exe 与华为手机拍照制作 GIF 动画
服务器·华为·智能手机
晨尘光31 分钟前
【pycharm 创建一个线程,在线程函数中增加的日志打印,日志打印了,但是打断点进不去】
ide·python·pycharm
CN-cheng33 分钟前
Flutter项目在HarmonyOS(鸿蒙)运行报错问题总结
flutter·华为·harmonyos·flutter运行到鸿蒙
钛投标免费AI标书工具43 分钟前
【官方认证】2025年AI标书工具:免费、零废标、安全
大数据·人工智能·安全