【ChatGLM-6B】清华开源的消费级显卡大语言模型,本地部署与测试

news2024/11/24 2:02:09

在这里插入图片描述

  • chatGLM-6B 官方代码:https://github.com/THUDM/ChatGLM-6B
  • 官方博客:https://chatglm.cn/blog
  • 论文:
    • 2210.GLM-130B: An Open Bilingual Pre-trained Model (开源的双语预训练模型)
    • 2103.GLM: General Language Model Pretraining with Autoregressive Blank Infilling(带自回归遮盖填充的通用语言模型预训练)
  • 秋叶版本UI,模型有可能滞后:
    • b站视频教程【ChatGLM】本地版ChatGPT?6G显存可用!】
    • 代码:https://github.com/Akegarasu/ChatGLM-webui

ChatGLM-6B,结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。经过约 1T 标识符的中英双语训练,辅以监督微调、 反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 虽然规模不及千亿模型,但大大降低了用户部署的门槛,并且已经能生成相当符合人类偏好的回答。

环境安装

主要是结合官方代码和秋叶github相互看

创建虚拟环境

conda create -n chatglm python=3.10 -y

添加国内源

conda activate chatglm

pip config set global.index-url  https://mirror.baidu.com/pypi/simple
pip config set global.trusted-host mirror.baidu.com
python -m pip install --upgrade pip
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117 

requirementsam安排依赖

建议删除官方依赖里的 torch>=1.10,否则会自动安装torch2.0 ,导致环境安装不成功

官方

git clone https://github.com/THUDM/ChatGLM-6B
cd ChatGLM-6B
pip install -r requirements.txt

秋叶

git clonehttps://github.com/Akegarasu/ChatGLM-webui
cd ChatGLM-webui
pip install -r requirements.txt

在这里插入图片描述

启动 (默认12G显存的)

官网代码直接启动 (默认只能本机打开)

https://github.com/THUDM/ChatGLM-6B/blob/main/web_demo.py

python web_demo.py # 可自动模型

大概50多分钟就下载好了,
在这里插入图片描述

修改代码,可以任意ip访问

在这里插入图片描述
上图右边为源码

demo.queue().launch(
                    server_name="0.0.0.0",
                    share=False,
                    inbrowser=True)

查找模型自动下载位置

linux命令,第一个参数是查找路径, -name 后面跟了后缀。

find ~/.cache/huggingface  -name  pytorch_model-00001-of-00008.bin

找到模型位置,方便后续管理

~/.cache/huggingface/hub/models–THUDM–chatglm-6b/snapshots/cde457b39fe0670b10dd293909aab17387ea2c80/pytorch_model-00001-of-00008.bin

秋叶启动 (ui可能更好,但是模型会老一点,需要自己更新)

精度可以改为 int8 、
int4 int8 有时会报错
–listen 表示可以非本机访问,输入服务器ip

python webui.py --precision fp16 --model-path "./model/chatglm-6b"  --listen

会卡一点,没有chatgpt打字机效果,也许更新了会有

在这里插入图片描述

使用

以下是几个不同领域的可以向我提问的问题:1. 人工智能:请问答人工智能有哪些应用领域?它如何改变我们的生活和工作?
2. 健康和健身:如何保持健康的生活方式?有哪些健身技巧可以帮助我们更好地应对压力和保持身体健康?
3. 计算机科学:如何编写高效的代码?机器学习和深度学习在哪些领域中应用最为广泛?
4. 商业和市场营销:如何在竞争激烈的市场中取得成功?有哪些营销策略可以帮助我们吸引更多的客户?
5. 历史和文化:如何理解不同文化的历史和传统?有哪些历史事件和文化遗产值得我们深入了解和欣赏?

请写一个介绍chatglm的博客提纲

输出结果
在这里插入图片描述

附录: LLM诸神黄昏

from : A Survey of Large Language Models
在这里插入图片描述

在这里插入图片描述

显存大小

在这里插入图片描述

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

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

相关文章

【iOS开发-响应者链Responder Chain】

文章目录0.0 前言1 响应者链(Responder Chain1.1 响应者1.2 响应链事件1.3 响应者对象1.3.1 常见的响应者对象1.3.3 UIResponder1.3 UITouch1.3.1 UITouch的属性1.3.2 UITouch的方法1.4 UIEvent1.4.2 获取touch1.5 完整的响应者链1.5.1寻找响应者的hitTest方法1.5.2…

【深度学习】rnn是什么?循环神经网络是什么?RNN前向传播。

文章目录循环神经网络1.循环神经网络原理2.使用Numpy实现RNN层的前向传播3.RNN存在的问题4.小结循环神经网络 通常卷积神经网络 适合处理图像问题,然而通常适合处理自然语言的网络是循环神经网络。rnn是所有基本网络,就像cnn 是很多复杂网络的基本原型。…

项目管理知识点学习

项目管理,验收需要做的事情,验收汇报ppt 验收汇报PPT包含内容: 项目背景(金额,招投标时间)项目功能完成情况验收内容专家评审 竣工验收材料:详细设计和测试报告 项目风险管理,外来…

Betaflight BN880 GPS 简单测试

Betaflight BN880 GPS 简单测试1. 源由2. 窗台对比测试3. 开阔区域测试3.1 GPS安装位置3.1.1 BN880 GPS 机尾打印支架 安装位置3.1.2 BN880 GPS 机头固定 安装位置3.1.3 M8N GPS 机尾打印支架 安装位置3.2 M8N模块历史记录3.3 BN880模块第一次(机尾安装)…

Golang 哈希表详解

哈希表介绍 ​ 一个映射,也成为关联数组,其实是一个由唯一键组成的集合,而每个键必然关联一个特定的值。这种键到值的关联关系称为映射,若在键到值的关联使用hash计算,就是哈希表,映射至少支持三个操作&am…

每日做题总结——day01

目录 选择题 for循环 指针数组 位段 getchar 大小端存储 进制与格式控制符 位运算 数组指针 二维数组的存储 计算二进制中1的个数 斐波那契数列求递归次数 编程题 删除公共字符 排序子序列 倒置字符串 选择题 for循环 解析:该题主要看for…

react face to face

React面试题 创建一个react项目 1.全局安装create-react-app npm install -g create-react-app 2.创建项目 create-react-app myapp 3.局部安装,可以直接用npx npx create-react-app myapp 4.进入文件夹 cd myapp 5.启用项目 npm start(开发模式下运行&…

浅谈DNS-rebinding

为啥突然要总结一下这个很老的知识点,我也不知道,可能太菜了,闲下来总得学点什么~ DNS Rebinding 0x01 攻击简介 DNS Rebinding也叫做DNS重绑定攻击或者DNS重定向攻击。在这种攻击中,恶意网页会导致访问者运行客户端脚本&#xff…

springboot-参数校验

SpringBoot 中使用 Valid 注解 Exception 全局处理器优雅处理参数验证 注解Valid的主要作用是用于数据效验,可以在定义的实体中的属性上,添加不同的注解来完成不同的校验规则。Controller类中在参数中添加Valid注解来开启效验功能Valid配合 Spring 会抛…

2023年4月10日下午总结和近日感悟

技术和钱 人生,活到现阶段,已于一月前,深感技术就是这么回事,不再像以前那样为学习某样东西而不问来由,闷头去学(也许是因为即将步入下一个人生阶段)。虽然,乐于也想去接受新技术&a…

centos7下基于nginx+uwsgi部署Django项目

文章目录一:基础环境介绍:二:部署环境安装配置:1.基础依赖环境安装2.安装wegt,vim,unzip等必须命令3.安装python与pip(或者python多版本管理工具pyenv等)4.安装nginx5.安装uwsgi三&a…

json和CMake简单入门

Json 介绍 Json是一种轻量级的数据交换格式(也叫数据序列化方式)。Json采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 Json 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成&#xff…

Binder基本知识

1:IPC 原理 从进程角度来看 IPC 机制 每个 Android 的进程,只能运行在自己进程所拥有的虚拟地址空间。对应一个4GB 的虚拟地址空间,其中 3GB 是用户空间,1GB 是内核空间,当然内核空间的大小是可以通过参数配置调整的…

网络安全之密码学

目录 密码学 定义 密码的分类 对称加密 非对称加密 对称算法与非对称算法的优缺点 最佳解决办法 --- 用非对称加密算法加密对称加密算法的密钥 非对称加密如何解决对称加密的困境 密钥传输风险 密码管理难 常见算法 对称算法 非对称算法 完整性与身份认证最佳解决…

优维低代码:定制构件的打包及部署

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。 连载…

用Python写一个BMI计算代码

有粉丝问我怎么写一个BMI算法,安排 height float(input("请输入身高(米): ")) weight float(input("请输入体重(千克): ")) 计算BMI bmi weight / (height ** 2) 显示结果 print("您的…

MySQL8.0.32安装以及环境配置

文章目录一、安装MySQL二、错误集1. 如果操作失误,可以重新安装一、安装MySQL 下载MySQL的社区版的压缩包:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.32-winx64.zip 将压缩包解压到你要安装的目录中 将对应的安装路径添加到环境变量中…

Java面试核心知识点梳理(二)——Java集合

文章目录前言1. List1.1 ArrayList(数组)1.2 Vector(数组、线程安全)1.3 LinkedList(链表)2. Set2.1 HashSet(Hash表)2.2 TreeSet(二叉树)2.3 LinkHashSet&am…

3分钟通过日志定位bug,这个技能测试人必须会

♥ 前 言 软件开发中通过日志记录程序的运行情况是一个开发的好习惯,对于错误排查和系统运维都有很大帮助。 Python 标准库自带了强大的 logging 日志模块,在各种 python 模块中得到广泛应用。 一、简单使用 1. 入门小案例 import logging logging.ba…

国内Google翻译失效的解决方法(MAC/WIN)

Google宣布停止在中国大陆的翻译服务,原因是:使用率低??,这导致Chrome浏览器网页翻译失效。对于一些使用Chrome,经常鼠标下一秒就在大洋彼岸扒拉资料,且英语不太好的同学来说变得非常难受。为此…