ChatGLM3在windows上部署

news2024/10/3 4:33:30

1 项目地址

https://github.com/THUDM/ChatGLM3
简介:ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的新一代对话预训练模型。

2 本机配置

台式机:
CPU:    Intel(R) Core(TM) i7-10700F
RAM:    32G
GPU:    NVIDIA RTX3060(显存12G)
OS:    Windows 10 企业版

3 部署环境

3.1 使用anaconda3进行虚拟环境管理

3.1.1  安装和配置anaconda3

a.下载地址
anaconda3下载(推荐使用镜像源)
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

b.安装
双击安装。我的安装路径:D:\worksoft\anaconda3

c. 配置环境变量
path 中添加环境变量:
D:\worksoft\anaconda3
D:\worksoft\anaconda3\Scripts
D:\worksoft\anaconda3\Library\mingw-w64\bin

3.1.2 操作虚拟环境:

在powershell的命令行中操作(当然也pycharm的terminal中操作,下文有讲解)
打开powershell的命令行窗口

a.创建虚拟环境

conda create -n ChatGML3 python=3.11
注:这里指定了python的版本,你也可以不指定。如:conda create -n ChatGML3 这样的话,就使用anaconda自带的python版本

b.激活
conda activate ChatGML3

c.退出虚拟环境
conda deactivate

d.删除虚拟环境
conda remove -n ChatGML3 

3.2 配置git命令运行环境

无论是GitHub还是Hugging Face,都是使用git进行克隆比较方便。 另外一个非常重要一点的,在windows运行一些命令行,需要用git中的sh.exe组件的。所以这里需要安装git

git下载,
https://git-scm.com/
自行下载和安装。这里就不在详解了;

3.3 安装显卡驱动,以及CUDA计算工具

a.显卡信息查看
pytorch安装和显卡驱动版本有关,所以需要先检查显卡驱动版本,可以用命令查看
nvidia-smi

b.查看驱动
可以到网址https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html查看支持的CUDA版本

c.安装数据处理工具pytorch
pytorch安装,直接到官网https://pytorch.org/选择conda或者pip,并复制代码安装即可

我这里是anaconda环境的。cuda的版本是11.8
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

d.检查cuda驱动是否安装成功
conda activate ChatGML3  # 已经在虚拟环境下就不用运行这行
python  # 进入python
import torch  # 引入库
torch.cuda.is_available()  # 查看cuda是否可用。如果为TRUE为驱动正常
exit()  # 退出python

4 项目部署

4.1 下载ChatGLM3项目并安装依赖

cd F:\ai\
git clone https://github.com/THUDM/ChatGLM3  # 从GitHub仓库克隆
cd ChatGLM3  # 转到已经下载好的文件目录中
pip install -r requirements.txt  # 安装依赖

4.2 下载模型

git lfs install  # 验证一下lfs是否安装正确
git clone https://huggingface.co/THUDM/chatglm3-6b  # 下载模型

注:如果下载的慢的话,可以去魔塔社区去下载(https://modelscope.cn/)


5 项目运行

管理员模式运行Anaconda Powershell,激活env,转到ChatGLM3中,运行basic_demo文件夹内的cli_demo.py(需要终止时可以用Ctrl+C中断python)

conda activate ChatGLM3
cd F:\ai\ChatGLM3
python .\basic_demo\cli_demo.py  # 运行当前文件夹下的basic_demo\cli_demo.py

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

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

相关文章

pytorch学习笔记(七 )

池化类似压缩 最大池化-上采样 例如给一个3的话就会生成一个33的窗口(生成相同的高和宽),给一个tuple就会给出一个相同的池化核。stride默认值就是核的大小 dilation 在卷积dialation设置之后每一个会和另外的差一个,空洞卷积 …

大模型在广告ctr预估中的应用

背景 预训练大模型在ctr预估方面取得了不错的效果,但是应用大模型方面还主要停留在提取离线预训练,然后使用大模型的打分结果或者中间的embedding向量,这种级联的应用方式相对灵活方便。但是这种使用大模型提取特征的方式存在自身的问题&…

使用知行之桥EDI系统的HTTP签名身份验证

本文简要概述了如何在知行之桥EDI系统中使用 HTTP 签名身份验证,并将使用 CyberSource 作为该集成的示例。 API 概述 API 是”应用编程接口”的缩写。这听起来可能很复杂,但它的真正含义是一种允许两个不同实体相互通信的软件。自开发以来,…

x-cmd pkg | tsx - Node.js 的直接替代品

目录 简介首次用户功能特点竞品和相关作品进一步探索 简介 tsx 代表 “TypeScript execute”,由 TypeScript 编写,内部使用由 Go 语言编写的 esbuild 核心二进制实现超快的 TypeScript 编译,旨在增强 Node.js 以无缝运行 TypeScript / ESM /…

利用Wireshark分析IP协议

实验.利用Wireshark分析IP协议 一.实验目的 1.掌握Wireshark软件简单的过滤语法 2.掌握IP数据报的组成格式 3.掌握IP分片的计算方法 4.学会利用Wireshark抓包分析IP协议 二.实验环境 1.Wireshark软件 2.Windows 计算机 三.实验预备知识 1.IP…

便捷好用的iOS文件管理App

便捷好用的iOS文件管理App 摘要 本文介绍了一款功能强大、免费的iOS文件管理App——克魔助手。通过使用克魔助手,用户可以轻松管理手机存储空间,清理垃圾文件,整理文件,并进行文件传输和截图操作。本文将详细介绍克魔助手的各项…

html+css实现子元素完全居中常见方案

详细过程 查看公众号文章 htmlcss实现子元素完全居中常见方案 获取更多内容,请关注微信公众号。搜索“码圈小橙子”,或扫描下方二维码获取关注

轻量化的yolov8部署到安卓Android手机端

一、pytorch环境配置和yolov8源码安装 首先在电脑上需要配置好pytorch环境,和yolov8源码的下载 然后针对yolov8做自己的轻量化改进 二、下载Android Studio和ncnn-android-yolov8 1. Android Studio官网链接: 下载 Android Studio 和应用工具 - And…

预训练中文GPT2(包括重新训练tokenizer)

训练数据 1.json后缀的文件 2.数据是json line格式,一行一条json 3. json结构如下 {"content": "①北京和上海户籍的游客可获得韩国多次签证;②“整容客”可以不经由韩国使领馆、直接在网上申请签证;③中泰免签的实施日期…

屏幕截图编辑工具Snagit中文

Snagit是一款优秀的屏幕、文本和视频捕获与转换程序。它能够捕获屏幕、窗口、客户区窗口、最后一个激活的窗口或用鼠标定义的区域,并支持BMP、PCX、TIF、GIF或JPEG格式的保存。Snagit还具有自动缩放、颜色减少、单色转换、抖动等功能,并能将捕获的图像转…

【Linux】:Linux中的Git分支管理

本章开始介绍 Git 的杀⼿级功能之⼀(注意是之⼀,也就是后⾯还有之⼆,之三……):分⽀。分⽀就是科幻电影⾥⾯的平⾏宇宙,当你正在电脑前努⼒学习 C 的时候,另⼀个你正在另⼀个平⾏宇宙⾥努⼒学习…

x3daudio1_7.dll如何恢复,这6个方法都能修复x3daudio1_7.dll丢失问题

x3daudio1_7.dll文件缺失”。那么,什么是x3daudio17.dll文件?它的作用和影响又是什么呢?本文将详细介绍x3daudio17.dll文件的定义、作用和影响,并提供6个修复方法来解决这个问题。 一、x3daudio1_7.dll是什么? x3dau…

高级分布式系统-第6讲 分布式系统的容错性--可靠的组通信

可靠的组通信 组内通信最好是每个进程之间都建立点到点的通信, 但实际中这样的组织结构不是有效的, 因为会浪费很大的通信带宽。 在平等组中, 多播是主要的组织结构。 但多播是具有同步性质的容错结构, 并不适用拜占庭模型。 多…

OpenGl L6坐标系统

一.标准化设备坐标 我们在L5谈到了对顶点着色器中的点进行变换,而变换的范围必须在 -1.0到1.0 之间,否者将不可见。只有将所有的点转换为标准化设备坐标后,才能全部传入光栅器,再转换为屏幕上的像素。 将坐标变换为标准化设备坐标…

【MySQL】C语言连接MySQL

文章目录 一、引入库下载库文件验证是否引入成功 二、MySQL C API相关接口三、总结 一、引入库 mysql的基础,我们之前已经学过,后面我们只关心使用要 使用C语言连接mysql ,需要使用mysql官网提供的库,大家可以去MySQL官网下载。 …

随机漫步【scatter的使用】

去掉scatter的坐标轴(未成功版) import matplotlib.pyplot as plt from random import choice class RandomWalk():def __init__(self,num_points 5000):self.num_points num_pointsself.x_values [0]self.y_values [0]def fill_walk(self):while l…

父组件中 arr.push改变数组,但是子组件监听不到 arr 的变化

目录 一、问题 二、解决方法 三、总结 tiips:如嫌繁琐,直接移步总结即可! 一、问题 1.真是奇怪呀,一般来说通过 push方法改变 数组,是一定会有响应式的,那就可以监听到变化。但是我今天却遇到了一件奇怪的事情。在…

多模态推荐系统综述:四、模型优化

四、模型优化 由于多模态信息的存在,当多模态编码器和推荐模型一起训练时,模型训练的计算要求大大增加。因此,多模态推荐模型在训练过程中可以分为两类:端到端训练和两步训练。 端到端训练可以利用反向传播获得的每个梯度来更新模…

2024.1.11 关于 Jedis 库操作 Redis 基本演示

目录 引言 通用命令 SET & GET EXISTS & DEL KEYS EXPIRE & TTL TYPE String 类型命令 MGET & MSET GETRANGE & SETRANGE APPEND INCR & DECR List 类型命令 LPUSH & LRANG LPOP & LPOP BLPOP & BRPOP LLEN Set 类型命…

Shutter Encoder多媒体转换v17.8

软件介绍 多媒体包含种类繁多的各种文件格式,每种格式都有其不同的特征和所谓的“怪癖”。 因此,如果使用多种图像、视频或音频格式,找到一个集中的软件来从一个地方处理所有这些格式可能会非常棘手。 这就是 Shutter Encoder 基本上允许做的…