本地部署GLM-4-9B清华智谱开源大模型方法和对话效果体验

GLM-4-9B是清华大学和智谱AI推出的最新一代预训练模型GLM-4系列中的开源版本。在语义、数学、推理、代码和知识等多方面的数据集测评中,GLM-4-9B及其人类偏好对齐的版本GLM-4-9B-Chat均表现出较高的性能,其通用能力评测结果甚至超越了Llama-3-8B开源大模型,多模态版本也与GPT-4版本齐平。

除了能进行多轮对话,GLM-4-9B-Chat还具备网页浏览、代码执行、自定义工具调用和长文本推理等高级功能。 GLM-4模型增加了多语言支持,支持包括日语,韩语,德语在内的 26 种语言。GLM-4-9B还推出了支持 1M 上下文长度(约 200 万中文字符)的模型。

根据GLM-4大模型评测结果,在通用能力方面超越Llama3大模型,在多模态能力比肩GPT-4大模型系列版本,评测结果和调用方法详情:https://github.com/THUDM/GLM-4

本文介绍GLM-4大模型部署和使用方法,需要注意的是,GLM-4虽然开源了,但GLM-4大模型的权重的使用则需要遵循协议:https://huggingface.co/THUDM/glm-4-9b/blob/main/LICENSE

第一步:下载模型文件

老牛同学在前面文章中,介绍了通过单一的GGUF文件在本地部署Llama-3-8BLlama3-Chinese-Chat)大模型:基于Llama 3搭建中文版(Llama3-Chinese-Chat)大模型对话聊天机器人

GLM-4-9B模板目前还没有GGUF文件,因此老牛同学通过Git下载PyTorch张量参数文件在本地部署GLM-4-9B-Chat-1M大模型。

由于模型参数文件比较大,使用Git无法直接下载到本地,需要通过git-lfs工具包下载:

brew install git-lfs

通过Git复制模型文件到笔记本电脑:

git lfs install
git clone https://www.modelscope.cn/ZhipuAI/glm-4-9b-chat-1m.git GLM-4-9B-Chat-1M

总共有10个模型参数文件,平均每个文件1.8GB大小,总计18GB左右,因此在Git下载过程中,容易中断失败,可以通过以下命令多次尝试下载:

git lfs pull

GLM4模型参数文件列表

第二步:下线GLM4代码库

GLM-4的官方GitHub代码库中有很多使用样例和微调等Python代码,我们可直接进行调整和使用:

https://github.com/THUDM/GLM-4.git

第三步:启动GLM4客户端

打开GLM-4代码库中basic_demo/trans_cli_demo.py文件,修改第18行模型路径MODEL_PATH参数,内容为我们通过Git复制到本地的路径,如老牛同学的路径如下:

#MODEL_PATH = os.environ.get('MODEL_PATH', 'THUDM/glm-4-9b-chat')
MODEL_PATH = os.environ.get('MODEL_PATH', '/Users/shizihu/JupyterLab/GLM-4-9B-Chat-1M')

在启动之前,我们还需要安装几个Python工具包(当然也可以跳过,后面启动失败时在进行安装也是可以的):

pip install tiktoken
pip install accelerate

启动大模型客户端:python trans_cli_demo.py

% python trans_cli_demo.py
Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.
Loading checkpoint shards: 100%|██████████████████████████████████████████████| 10/10 [00:09<00:00,  1.04it/s]
WARNING:root:Some parameters are on the meta device device because they were offloaded to the disk.
Welcome to the GLM-4-9B CLI chat. Type your messages below.

You: 介绍一下你自己。
GLM-4:
我是一个人工智能助手,我的名字是 ChatGLM,是基于清华大学 KEG 实验室和智谱 AI 公司

GLM4模型对话

总结:GLM-4-9B比Llama-3-8B慢太多了

根据官方的评测报告,GLM-4-9B在对话、多模态等方面要比Llama-3-8B强不少,根据老牛同学本地部署对话的验证结果来看,对话的输出速度实在太慢了,简直就是在挤牙膏,一个字一个字的往外输出。

至于GLM-4-9B的多模态、工具调用、代码解释等能力,老牛同学本次就不一一演示了,GLM-4官方的GitHub代码库有很多Demo代码,大家可以对代码调整后尝试体验一下~


关注本公众号,我们共同学习进步👇🏻👇🏻👇🏻

微信公众号:老牛同学


我的本博客原地址:https://mp.weixin.qq.com/s/g7lDfnRRGdrHqN7WGMSkAg


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MPC控制简化版

MPC控制算法简化版 模型预测控制&#xff08;Model Predictive Control&#xff0c;MPC&#xff09;是一种先进的控制策略&#xff0c;广泛应用于人形机器人的运动控制。具体实现过程中&#xff0c;还需结合机器人的实际动力学模型和更多的物理约束条件。以下是一个人形机器人…

银河麒麟操作系统通过首批软件供应链安全能力认证

麒麟软件产品供应链安全能力获双重肯定&#xff01;5月30日&#xff0c;经北京赛迪认证中心评估&#xff0c;银河麒麟高级服务器操作系统V10和银河麒麟桌面操作系统V10成为首批获得软件供应链安全能力认证产品&#xff0c;并在操作系统类产品中名列前茅。 软件供应链安全能力评…

2024年【R2移动式压力容器充装】考试技巧及R2移动式压力容器充装复审考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 R2移动式压力容器充装考试技巧参考答案及R2移动式压力容器充装考试试题解析是安全生产模拟考试一点通题库老师及R2移动式压力容器充装操作证已考过的学员汇总&#xff0c;相对有效帮助R2移动式压力容器充装复审考试学…

什么是助听器呢?

助听器是一种用于改善听力障碍患者听觉能力的装置。它通过放大声音&#xff0c;使原本听不到或听不清的声音能够被听力受损者感知&#xff0c;从而提高其交流能力和生活质量。 助听器的基本工作原理是&#xff0c;将声音转化为电信号&#xff0c;经过内部电路处理后&#xff0c…

FPGA SPI采集ADC7606数据

一,SPI总线的构成及信号类型 SPI总线只需四条线(如图1所示)就可以完成MCU与各种外围器件的通讯: 1)MOSI – Master数据输出,Slave数据输入 2)MISO – Master数据输入,Slave数据输出 3)SCK – 时钟信号,由Master产生 4)/CS – Slave使能信号,由Master控制。 在一个SPI时…

C# 异步方法async / await 任务超时处理

一、需求 如果调用一个异步方法后&#xff0c;一直不给返回值结果怎么办呢&#xff1f;这就涉及到怎么取消任务了。 二、Task取消任务 static CancellationTokenSource source new CancellationTokenSource();static void Main(string[] args){Task.Run(() >{for (int i …

C++ | Leetcode C++题解之第132题分割回文串II

题目&#xff1a; 题解&#xff1a; class Solution { public:int minCut(string s) {int n s.size();vector<vector<int>> g(n, vector<int>(n, true));for (int i n - 1; i > 0; --i) {for (int j i 1; j < n; j) {g[i][j] (s[i] s[j]) &…

Android Ble低功耗蓝牙开发

一、新建项目 在Android Studio中新建一个项目&#xff0c;如下图所示&#xff1a; 选择No Activity&#xff0c;然后点击Next 点击Finish&#xff0c;完成项目创建。 1、配置build.gradle 在android{}闭包中添加viewBinding&#xff0c;用于获取控件 buildFeatures {viewB…

配置二级域名,局域网可以访问

location / { if (!-e KaTeX parse error: Expected }, got EOF at end of input: … rewrite ^(.*) /index.php?s/$1 last; } }

老师必备!一文教你如何高效收集志愿填报信息

高考志愿填报季&#xff0c;对于每一位老师来说&#xff0c;无疑是一场信息收集与管理的硬仗。如何在众多的志愿信息中&#xff0c;高效、准确地掌握每位学生的志愿意向&#xff1f; 高考志愿填报的重要性。不仅是学生人生的一个重要转折点&#xff0c;也是老师教育生涯中的一次…

24年江苏省教资认定报名照片要求

24年江苏省教资认定报名照片要求&#xff0c;速速查收&#xff01;

群晖上Docker下载的几种方式

前言 去年大概也是这个时候&#xff0c;有不少人在问 docker 查询注册表失败的问题 文章传送门&#xff1a;开源URL短链接服务Shlink 这次似乎问题更严重一些&#xff0c;不仅仅是不能查询注册表&#xff0c;而是连 docker pull 都不行了 # 镜像拉取测试 docker pull alpine:…

图文详解Windows系统下搭建mysql开发环境——mysql Community 8 和 navicat Premium 17 的安装和使用

在正式开始学习使用MySQL之前&#xff0c;我们有必要先搭建一个良好的开发环境&#xff0c;让我们的学习和工作效率事半功倍。 本文涉及到的软件百度云盘&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1jj_YajEv8adeEjMrXLhOTQ?pwd1023 提取码&#xff1a;1023 目录 …

力扣hot100:394. 字符串解码(递归)

LeetCode&#xff1a;394. 字符串解码 本题容易想到用递归处理&#xff0c;在写递归时主要是需要明确自己的递归函数的定义。 不过我们也可以利用括号匹配的方式使用栈进行处理。 1、递归 定义递归函数string GetString(string & s,int & i); 表示处理处理整个numbe…

【设计模式深度剖析】【5】【行为型】【迭代器模式】

&#x1f448;️上一篇:策略模式 设计模式-专栏&#x1f448;️ 文章目录 迭代器模式定义英文原话直译如何理解呢&#xff1f; 迭代器模式的角色1. Iterator&#xff08;迭代器&#xff09;2. ConcreteIterator&#xff08;具体迭代器&#xff09;3. Aggregate&#xff08;聚…

【Javascript系统学习】(二)

函数 定义函数 函数提升仅适用于函数声明&#xff0c;而不适用于函数表达式 函数声明 函数表达式 //例子1 const factorial function fac(n) {return n < 2 ? 1 : n * fac(n - 1); };console.log(factorial(3)); // 6 //factorial(n)、fac(n)、arguments.callee() ----…

SpringBoot发邮件服务如何配置?怎么使用?

SpringBoot发邮件需要的参数&#xff1f;邮件发送性能如何优化&#xff1f; 在SpringBoot项目中配置发邮件服务是一个常见的需求&#xff0c;它允许我们通过应用程序发送通知、验证邮件或其他类型的邮件。AokSend将详细介绍如何在SpringBoot中配置发邮件服务。 SpringBoot发邮…

PDF分页处理:技术与实践

引言 在数字化办公和学习中&#xff0c;PDF文件因其便携性和格式稳定性而广受欢迎。然而&#xff0c;处理大型PDF文件时&#xff0c;我们经常需要将其拆分成单独的页面&#xff0c;以便于管理和分享。本文将探讨如何使用Python编程语言和一些流行的库来实现PDF文件的分页处理。…

[word] word文字间隙怎么调整? #媒体#职场发展

word文字间隙怎么调整&#xff1f; 在文档中的数据包含英文、数字、中文等&#xff0c;会有间隙&#xff0c;有时候误以为是空格&#xff0c;但是根本删除不了&#xff0c;其实这是默认的间隙&#xff0c;是可以调整的&#xff0c;下面教大家word文字间隙怎么调整的操作&#…

路由器作为网络扩展器——设置桥接、路由模式

下面提到的路由器都是家用路由器 一、有线桥接(交换模式) 1.连接示意图 (副路由器只看交换模式部分) 副路由器充当交换机的角色 二、无线桥接(与有线类似) &#xff08;副路由器的无线信号 连接 主路由器的无线信号&#xff09; 三、路由模式 1.连接示意图 (副路由器只看…