快速在WIN11中本地部署chatGLM3

news2024/9/21 18:47:57

具体请看智谱仓库github:GitHub - THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型

或者Huggingface:https://huggingface.co/THUDM/chatglm3-6b

1. 利用Anaconda建立一个虚拟环境:

conda create -n chatglm3 python=3.11 (版本太低安装streamlit会出问题)
conda activate chatglm3

2. 安装torch的GPU版:

根据自己本地计算机显卡和系统选择官方上相应的指令:

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

这块安装时间较长,耐心等待,反复尝试,直到安装成功为止。其中,需要测试一下GPU的CUDA功能是否可以正常使用:

print(torch.version.cuda)	#查看cuda版本
print(torch.cuda.is_available())  # 查看cuda是否可用
print(torch.cuda.device_count())  # 查看可行的cuda数目

如果以上指令运行没问题,显示True,说明可以GPU可以正常使用。

3.开始安装ChatGLM3,根据以上官网地址的说明进行如下操作:

     选择D盘或者其他盘建立一个本地文件,利用管理员权限打开一个cmd窗口运行如下命令:

git clone https://github.com/THUDM/ChatGLM3
cd ChatGLM3

然后使用 pip 安装依赖:

pip install -r requirements.txt

此外,使用 Code Interpreter 还需要安装 Jupyter 内核:

ipython kernel install --name chatglm3-demo --user

然后,进入basic_demo目录下,实现三种新的样例测试

    1)案例1——指令窗口

运行如下指令:

python cli_demo.py

指令对话窗口案例2:

    2) 案例2——Gradio

       运行如下命令:

python web_demo.py

注意:如果不输出结果,是由于Gradio的版本过高,建议安装pip install gradio==3.40版本。太低会报错,比如3.39版本。

   3) 案例3——streamlit

       运行如下命令:

streamlit run web_demo2.py

其中,需要修改一下路径,将下载好的模型放到本目录下,将第6行程序改为

将MODEL_PATH = os.environ.get('MODEL_PATH', 'THUDM/chatglm3-6b')改为
MODEL_PATH = os.environ.get('MODEL_PATH', '../chatglm3-6b')

这样所有的程序和模型都在一起,方便管理。

程序启动之后,浏览器显示如下:

安装过程中一些注意事项:

  • 遇到“RuntimeError: nvrtc: error: failed to open nvrtc-builtins64_121.dll.
      Make sure that nvrtc-builtins64_121.dll is installed correctly.”

需要将虚拟环境下的“nvrtc-builtins64_121.dll”文件拷贝到C:\Windows\System32目录下,即可解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1245244.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

U盘启动制作工具Rufus

U盘启动制作工具Rufus 下载U盘启动制作工具Rufus,进入Rufus官网:http://rufus.ie/en/,打开之后往后滑动,找到download即可点击下载。 需要插入U盘 首先需要插入U盘,如果U盘有重要文件一定要备份,然后右键…

DB2中实现数据字段的拼接(LISTAGG() 与 xml2clob、xmlagg)

DB2中实现数据字段拼接(LISTAGG 与 xml2clob、xmlagg) 1. 使用函数LISTAGG()1.1 同oracle实现方式1.2 DB2中使用LISTAGG()1.2.1 关于DB2版本1.2.2 数据准备1.2.3 代码实现 2 解决DB2中关于 LISTAGG() 超长问题2.1 使用xmlagg xmlelement2.2 将xml标签去…

【论文阅读笔记】Smil: Multimodal learning with severely missing modality

Ma M, Ren J, Zhao L, et al. Smil: Multimodal learning with severely missing modality[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2021, 35(3): 2302-2310.[开源] 本文的核心思想是探讨和解决多模态学习中的一个重要问题:在训练和测…

SpringBoot整合Redis,redis连接池和RedisTemplate序列化

SpringBoot整合Redis 1、SpringBoot整合redis1.1 pom.xml1.2 application.yml1.3 配置类RedisConfig,实现RedisTemplate序列化1.4 代码测试 2、SpringBoot整合redis几个疑问?2.1、Redis 连接池讲解2.2、RedisTemplate和StringRedisTemplate 3、RedisTemp…

DALSA.SaperaLT.SapClassBasic无法加载,试图加载格式不正确的程序,c#

情景:用c#wpf写DALSA线扫相机的项目,生成时不报错,运行到DALSA相关的代码就报错找不到dll(DALSA的技术支持没给到任何支持 ) 一.根据框架选择dll 如果是.net framework框架(比如说.net480)&am…

【LeetCode刷题-链表】--61.旋转链表

61.旋转链表 方法: 记给定的链表的长度为n,注意当向右移动的次数k>n时,仅需要向右移动k mod n次即可,因为每n次移动都会让链表变为原状 将给定的链表连接成环,然后将指定位置断开 /*** Definition for singly-linked list.*…

【OJ比赛日历】快周末了,不来一场比赛吗? #11.25-12.01 #17场

CompHub[1] 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…)比赛。本账号会推送最新的比赛消息,欢迎关注! 以下信息仅供参考,以比赛官网为准 目录 2023-11-25(周六) #9场比赛2023-11-26…

Linux(Centos)上使用crontab实现定时任务(定时执行脚本)

场景 Windows中通过bat定时执行命令和mysqldump实现数据库备份: Windows中通过bat定时执行命令和mysqldump实现数据库备份_mysqldump bat-CSDN博客 上面讲windows中使用bat实现定时任务的方式,如果是在linux上可以通过crontab实现。 cron是服务名称。…

案例018:基于微信小程序的实习记录系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

Java核心知识点整理大全10-笔记

往期快速传送门: Java核心知识点整理大全-笔记_希斯奎的博客-CSDN博客文章浏览阅读9w次,点赞7次,收藏7次。Java核心知识点整理大全https://blog.csdn.net/lzy302810/article/details/132202699?spm1001.2014.3001.5501 Java核心知识点整理…

服务器流量包扣减规则

服务器买的流量包,一般指的是上行带宽,下行通常是不限的 上行和下行是针对服务器而言的 客户端上传文件给服务器,对服务器而言它是在下载,所以对服务器而言他是用的下行带宽(下行流量) 客户端从服务器下载文件,对服务器而言它是在上传,所以对服务器而言他是用的上行带宽(上行…

HTB Napper WriteUp

Napper 2023年11月12日 14:58:35User Nmap ➜ Napper nmap -sCV -A -p- 10.10.11.240 --min-rate 10000 Starting Nmap 7.80 ( https://nmap.org ) at 2023-11-12 13:58 CST Nmap scan report for app.napper.htb (10.10.11.240) Host is up (0.15s latency). Not shown: …

Linux文件查看命令

1.cat加上文件名 (因为所有文件内容都会打印到屏幕上,所以内容少时使用这个,总不能用cat来定义一本小说) 3.往文件中写入数据——cat加上>(重定向符)加上文件名,写完之后,按键 cat原本是把…

设计模式——行为型模式(一)

行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行…

Java基层卫生健康云综合管理(云his)系统源码

云HIS(Cloud-Based Healthcare Information System)是基于云计算的医院健康卫生信息系统。它运用云计算、大数据、物联网等新兴信息技术,按照现代医疗卫生管理要求,在一定区域范围内以数字化形式提供医疗卫生行业数据收集、存储、…

对tensor的处理函数:expand_as(尺寸扩展),nonzero(获取非零元素索引)

Tensor.expand_as(other) 扩展tensor到与other相同的尺寸 torch.nonzero(input, as_tupleFalse) 或 Tensor.nonzero() 返回input中非零元素的索引 indices 1)as_tuple False:返回的结果是tensor,z \times n,z为input中非零元素个…

一款专为POS机设计的芯片解决方案

一、基本概述 HCM8003设计用于磁条读卡器系统。它会从F/2F恢复时钟和数据信号磁产生的数据流头HCM8003将用于数据速率从200到15000比特每秒。 二、典型电路 内部数据的采集和跟踪这个范围是自动的。可以应用于POS机终端设备、磁卡门禁系统、身份识别等场合。 三、引脚定义 四…

HOOPS Web平台助力开发3D应用,实现超大规模3D web轻量化渲染与数据格式转换!

一、包含的软件开发工具包 HOOPS Web平台帮助开发人员构建基于Web的工程应用程序,提供高级3D Web可视化、准确快速的CAD数据访问和3D数据发布。 HOOPS Web平台包括三个集成软件开发工具包 (SDK): (1)Web端3D可视化引擎 HOOPSCom…

案例015:Java+SSM+uniapp基于微信小程序的校园防疫系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

基于JavaWeb+SpringBoot+Vue医院管理系统小程序的设计和实现

基于JavaWebSpringBootVue医院管理系统小程序的设计和实现 源码获取入口Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏[Java 源码获取 源码获取入口 Lun文目录 目录 1系统概述 1 1.1 研究背景 1 1.2研究目的 1 1.3系统设计思想 1 2相关技术 2 2.1微信小程序 2 2.2 …