【ChatGLM】记录一次Windows部署ChatGLM-6B流程及遇到的问题

news/2024/12/5 4:29:30/

文章目录

  • 部署环境
  • 文件下载
    • 项目文件
    • 模型配置文件
    • 模型文件
  • 运行demo
  • 遇到的问题

部署环境

系统版本:Windows 10 企业版
版本号:20H2
系统类型:64 位操作系统, 基于 x64 的处理器
处理器:Intel® Core™ i7-8700 CPU @ 3.20GHz 3.19 GHz
机带 RAM:16.0 GB
显卡:NVIDIA RTX 2070(8G)
Python版本:3.10.11

文件下载

文件分为两个部分:

  • github上开源的训练、推理、以及运行demo、api的一些代码文件
  • huggingface上的语言模型相关文件,主要包含官方训练好的大语言模型文件,以及模型文件对应的一些配置文件,其中模型文件会很大,可以使用GIT LFS下载,或者直接上清华的网盘上下载,本文使用的是从网盘下载,配置文件直接clone即可,clone前设置GIT_LFS_SKIP_SMUDGE=1,可跳过大文件的下载,只下载模型文件之外的配置文件。

项目文件

git clone https://github.com/THUDM/ChatGLM-6B.git

安装依赖:

cd ChatGLM-6Bpip install -r requirements.txt

模型配置文件

GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm-6b

模型文件

chatglm-6b:(只有chatglm-6b)

https://cloud.tsinghua.edu.cn/d/fb9f16d6dc8f482596c2/

其他:(包含chatglm-6b-int4、chatglm-6b-int8…)

https://cloud.tsinghua.edu.cn/d/fb9f16d6dc8f482596c2/

按需下载,下载后替换至上一步中下载的chatglm-6b目录下。

注:下载之后,需要对比每个文件大小,如果有文件不完整,将运行失败

模型文件必须要和配置文件配套下载,否则运行不成功

文件保存位置:

D:\ChatGLM-6B\ChatGLM-6B\THUDM\chatglm-6b

下载完成之后,修改第5、6行:将参数文件路径换为本地的

运行demo

python web_demo.py

遇到的问题

  1. RuntimeError: Internal: D:\a\sentencepiece\sentencepiece\src\sentencepiece_processor.cc(1102) [model_proto->ParseFromArray(serialized.data(), serialized.size())]
Traceback (most recent call last):File "D:\ChatGLM-6B\ChatGLM-6B\web_demo.py", line 5, in <module>tokenizer = AutoTokenizer.from_pretrained("D:\\ChatGLM-6B\\ChatGLM-6B\\THUDM\\chatglm-6b", trust_remote_code=True, revision="")File "D:\python3.10\lib\site-packages\transformers\models\auto\tokenization_auto.py", line 679, in from_pretrainedreturn tokenizer_class.from_pretrained(pretrained_model_name_or_path, *inputs, **kwargs)File "D:\python3.10\lib\site-packages\transformers\tokenization_utils_base.py", line 1804, in from_pretrainedreturn cls._from_pretrained(File "D:\python3.10\lib\site-packages\transformers\tokenization_utils_base.py", line 1958, in _from_pretrainedtokenizer = cls(*init_inputs, **init_kwargs)File "C:\Users\liliang22/.cache\huggingface\modules\transformers_modules\chatglm-6b\tokenization_chatglm.py", line 221, in __init__self.sp_tokenizer = SPTokenizer(vocab_file, num_image_tokens=num_image_tokens)File "C:\Users\liliang22/.cache\huggingface\modules\transformers_modules\chatglm-6b\tokenization_chatglm.py", line 64, in __init__self.text_tokenizer = TextTokenizer(vocab_file)File "C:\Users\liliang22/.cache\huggingface\modules\transformers_modules\chatglm-6b\tokenization_chatglm.py", line 22, in __init__self.sp.Load(model_path)File "D:\python3.10\lib\site-packages\sentencepiece\__init__.py", line 905, in Loadreturn self.LoadFromFile(model_file)File "D:\python3.10\lib\site-packages\sentencepiece\__init__.py", line 310, in LoadFromFilereturn _sentencepiece.SentencePieceProcessor_LoadFromFile(self, arg)RuntimeError: Internal: D:\a\sentencepiece\sentencepiece\src\sentencepiece_processor.cc(1102) [model_proto->ParseFromArray(serialized.data(), serialized.size())]

解决:对比下载的所有配置文件,是否有不完整的文件,执行命令:GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm-6b 时,有个2mb左右的文件,没有成功下载:ice_text.model

  1. AssertionError: Torch not compiled with CUDA enabled

    原因是你试图用GPU跑,但是你安装的 Torch 不支持CUDA,是仅支持CPU的版本,执行命令:

    python -c "import torch; print(torch.cuda.is_available())"
    

    如果返回False,说明安装的PyTorch不支持CUDA。

    1. 更新显卡驱动为最新的(官方驱动 | NVIDIA)

    2. 下载安装cuda_toolkit(https://developer.nvidia.com/cuda-toolkit)<这一步尚未验证是否必须>

    3. 重启电脑

    4. 执行命令安装torch:

      pip install torch==2.0.1+cu118 -f https://download.pytorch.org/whl/torch_stable.html
      

    (第一次没有操作2、3步,没有成功,第二次安装了toolkit后重启好了,但不能确定这两步是否有效,可以先忽略这两步,不行再尝试)

​ 需要下载一个2.6G的文件,安装完成后,print(torch.cuda.is_available())为True,大功告成。

​ 可以在Previous PyTorch Versions | PyTorch 查看自己的显卡CUDA版本对应的torch版本,如果没找到,可以尝试一个最接近的比实际小的版本。

查看CUDA版本:

或者直接执行命令:nvidia-smi 查看

  1. 这个配置运行非量化的chatglm-6b,响应很慢很慢,重新下载chatglm-6b-Int4的模型文件和配置文件部署后,速度正常了。

http://www.ppmy.cn/news/292432.html

相关文章

CAXA 2020电子图板设计从入门到精通视频教程

CAXA 2013电子图板设计从入门到精通视频教程 链接&#xff1a;https://pan.baidu.com/s/1bGzmzhtUtBQt-prGxvbtUQ 提取码&#xff1a;02qd

CAXA电子图版二次开发20190803

本人有多年的CAXA电子图版二次开发经验&#xff0c;参与过国家电网南瑞集团、中石油、龙记集团、欧姆龙集团、港日集团、中集集团、中国五矿、方圆塑机、大连锅炉、金蝶PDM集成CAXA,TEAMCENTER集成CAXA、大连锅炉机械、中国中车、楼梯围栏、CAXA根据图纸出NC代码、CAXA电子与各…

CAXA 电子图板 二次开发 功能定制

本人有多年的CAXA电子图版二次开发经验&#xff0c;参与过国家电网南瑞集团、中石油、龙记集团、欧姆龙集团、港日集团、中集集团、中国五矿、方圆塑机、大连锅炉、金蝶PDM集成CAXA,TEAMCENTER集成CAXA、大连锅炉机械、中国中车、楼梯围栏、CAXA根据图纸出NC代码、CAXA电子与各…

在电子图版CAXA中定义自己的标题栏和图框

用户自定义的标题栏和图框都存放在文件夹&#xff1a;CAXA/Support/CHS下&#xff0c;此文件在安装文件内。 1、 首先打开CAXA 2、 设置幅面为A4&#xff0c;1&#xff1a;1 3、 拷贝一个现有的标题栏&#xff08;也可自绘一个&#xff09; 4、 块打散&#xff08;保证…

掌握未来设计趋势,CAXA CAD 电子图板 2023让你的创意无限发挥!

CAXA CAD电子图板是一款高效便捷的CAD绘图软件&#xff0c;更是许多设计工程师的首选。该软件以其全面的功能和强大的绘图能力已经成为了国内最为流行的设计软件之一。近期&#xff0c;CAXA CAD电子图板2023版在全新升级上线&#xff0c;更加深入的满足了用户多项需求。 首先&a…

绘图板应用讲解计算机,计算机绘图应用教程——caxa电子图板xp.pptx

计算机绘图应用教程——caxa电子图板xp 2.1 CAXA 电子图板系统 ;3&#xff0e;待安装向导初始化完成后&#xff0c;将出现如图2-2所示的安装向导对话框。 ;4&#xff0e;按安装向导提供的信息进行安装。单击图2-2所示的安装向导对话框中的下一步&#xff0c;出现如图2-3所示的软…

太开放计算机软件快上课,[计算机软件及应用]CAXA电子图版上课.ppt

[计算机软件及应用]CAXA电子图版上课 第四章 图形编辑与显示控制 四、打断 命令方式 下拉菜单&#xff1a;修改—打断 工具按钮&#xff1a; 命令&#xff1a;break或br 启动打断命令后&#xff0c;按提示操作即可。该功能是将一条曲线打断为几条曲线。 绘制方法 启动打断命令—…

中望软件ZW3D,数码大方CAXA实体设计,华云三维CrownCAD,建议开设 春/夏/秋/冬四季CAD学校,助力软件普及

个人建议&#xff1a; 中望软件ZW3D&#xff0c;数码大方CAXA实体设计&#xff0c;华云三维CrownCAD&#xff0c;建议开设春/夏/秋/冬四季CAD学校&#xff0c;助力软件普及&#xff0c;可以邀请想要参加免费大师班以使用中望3D/CAXA实体设计/CrownCAD设计系统的用户。 课…