【Linux】环境ChatGLM-4-9B 模型部署

news2024/11/24 13:32:08

一、模型介绍

GLM-4-9B 是智谱 AI 推出的最新一代预训练模型 GLM-4 系列中的开源版本。 在语义、数学、推理、代码和知识等多方面的数据集测评中, GLM-4-9B 及其人类偏好对齐的版本 GLM-4-9B-Chat 均表现出超越 Llama-3-8B 的卓越性能。除了能进行多轮对话,GLM-4-9B-Chat 还具备网页浏览、代码执行、自定义工具调用(Function Call)和长文本推理(支持最大 128K 上下文)等高级功能。本代模型增加了多语言支持,支持包括日语,韩语,德语在内的 26 种语言。我们还推出了支持 1M 上下文长度(约 200 万中文字符)的 GLM-4-9B-Chat-1M 模型和基于 GLM-4-9B 的多模态模型 GLM-4V-9B。GLM-4V-9B 具备 1120 * 1120 高分辨率下的中英双语多轮对话能力,在中英文综合能力、感知推理、文字识别、图表理解等多方面多模态评测中,GLM-4V-9B 表现出超越 GPT-4-turbo-2024-04-09、Gemini 1.0 Pro、Qwen-VL-Max 和 Claude 3 Opus 的卓越性能。

接下来我们试试部署ChatGLM4-9B基础版模型。

二、项目地址

Github地址:https://github.com/THUDM/GLM-4/tree/main

模型地址:https://huggingface.co/THUDM/glm-4-9b/tree/main

模型有很多,如下图:可以在 hugging face 选择不同的模型下载。

三、硬件条件

服务器环境:Linux

操作系统:ubuntu 22.04

架构:x86_64

实例规格:GPU A10 24G显存

四、ChatGLM4-9B部署

1.准备工作

(1)安装Anaconda软件

注意:Anaconda无版本要求,主要和Linux的架构保持一致。

可参考博客:Linux环境安装Anaconda(详细图文)_linux安装anaconda-CSDN博客

(2)创建GLM4需要的python环境并激活

        ① 创建GLM4环境

conda create -n glm4 python=3.10.12

        ② 激活环境

conda activate glm4 

2.拉取GLM4项目代码 

(1)切换到磁盘挂载目录

cd /data/

(2)拉取代码并切换到对应目录

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

cd GLM-4/basic_demo

(3)下载依赖

pip install -r requirements.txt --upgrade

 3.下载GLM4模型

说明:如果不能直接通过服务器上下载,可以通过windows上挂载代理软件访问抱脸地址:https://huggingface.co/THUDM/glm-4-9b/tree/main 把Files and versions 下文件全部下载,模型下载时间比较长,耐心等待。

下载完成后并将下载好模型传到服务器上(上传的位置是刚刚克隆下github的目录 basic_demo 下新建一个model目录,再在model下创建一个glm-4-9b目录存放模型) 如下所示:

4. 运行GLM4模型

(1)编辑trans_web_demo.py

修改模型加载目录,由于我新建了一个model目录就修改如下图所示:

在文件底部还需要修改下服务器IP,由于之前写的是127.0.0.1,只能本地访问,需要修改为0.0.0.0 所有IP都可以访问。 

 修改完成之后保存并退出。

(2)运行ChatGLM4的web

在 basic_demo 目录下运行命令:python trans_web_demo.py

报错1:找不到peft库

 解决方案:下载peft库命令:pip install peft

报错2:

解决方案:下载穿透工具,按照上面步骤下载穿透工具并移动到对应目录,第三步骤根据自己的位置,移动到对应为止即可。下载这个frpc_linux_amd64 需要关闭防火墙不然下载不成功。

报错3:不能创建分享链接

解决方案:给下载好的frpc_linux_amd64设置可执行权限即可 命令:chmod +x  /xx/xx/frpc_linux_amd64_vo.3

运行成功后的截图:

说明:如果想尝试 trans_cli_demo.py 也是修改文件的模型路径即可。

5.成果展示

 浏览器访问:公网IP+8000端口 注意开放8000端口。

GPU显存为24G的推理速度很快,GPU显存占用18G左右。到此ChatGLM4-9B部署完成,大家感兴趣可以试试。

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

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

相关文章

深入理解Java 线程并发编排工具: 概述和应用场景

目录 前言概述1. CountDownLatch2. CyclicBarrier3. Semaphore(信号量)4. Condition 案例CountDownLatch-马拉松场景CyclicBarrier-马拉松场景Semaphore-公交车占座场景Condition-线程等待唤醒场景 前言 在 Java 的 java.util.concurrent (JUC) 包中,提…

C++初阶(八)--内存管理

目录 引入: 一、C中的内存布局 1.内存区域 2.示例变量存储位置说明 二、C语言中动态内存管理 三、C内存管理方式 1.new/delete操作内置类型 2.new和delete操作自定义类型 四、operator new与operator delete函数(重要点进行讲解) …

架构的本质之 MVC 架构

前言 程序员习惯的编程方式就是三步曲。 所以,为了不至于让一个类撑到爆💥,需要把黄色的对象、绿色的方法、红色的接口,都分配到不同的包结构下。这就是你编码人生中所接触到的第一个解耦操作。 分层框架 MVC 是一种非常常见且常…

Node学习记录-child_process 子进程

来自:https://juejin.cn/post/7277045020422930488 child_process用于处理CPU密集型应用,Nodejs创建子进程有7个API,其中带Async的是同步API,不带的是异步API child_process.exec(command[, options][, callback]) command:要运行的命令&am…

NVR批量管理软件/平台EasyNVR多个NVR同时管理支持对接阿里云、腾讯云、天翼云、亚马逊S3云存储

随着云计算技术的日益成熟,越来越多的企业开始将其业务迁移到云端,以享受更为灵活、高效且经济的服务模式。在视频监控领域,云存储因其强大的数据处理能力和弹性扩展性,成为视频数据存储的理想选择。NVR批量管理软件/平台EasyNVR&…

2024年编程语言排行榜:技术世界的新星与常青树

随着技术的不断进步,编程语言的流行度也在不断变化。今天,就让我们一起来看看2024年的编程语言排行榜,探索哪些语言在技术世界中占据了主导地位。 1. Python:稳居榜首 Python以其在人工智能、数据科学、网络开发等多个领域的广泛…

MFC工控项目实例二十八模拟量信号每秒采集100次

采用两个多媒体定时器,一个0.1秒计时,另一个用来对模拟量信号采集每秒100次.。 1、在SEAL_PRESSUREDlg.h中添加代码 class CSEAL_PRESSUREDlg : public CDialog { public:CSEAL_PRESSUREDlg(CWnd* pParent NULL); // standard constructor.&#xff0e…

基于MoviNet检测视频中危险暴力行为

项目源码获取方式见文章末尾! 600多个深度学习项目资料,快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【Faster & Mask R-CNN模型实现啤酒瓶瑕疵检测】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生…

ArcGIS003:ArcMap常用操作0-50例动图演示

摘要:本文以动图形式介绍了ArcMap软件的基本操作,包括快捷方式创建、管理许可服务、操作界面元素(如内容列表、目录树、搜索窗口、工具箱、Python窗口、模型构建器窗口等)的打开与关闭、位置调整及合并,设置默认工作目…

NVR批量管理软件/平台EasyNVR多个NVR同时管理支持视频投放在电视墙上

在当今智能化、数字化的时代,视频监控已经成为各行各业不可或缺的一部分,无论是公共安全、交通管理、企业监控还是智慧城市建设,都离不开高效、稳定的视频监控系统的支持。而在这些应用场景中,将监控视频实时投放到大屏幕电视墙上…

asp.net core 跨域配置不起作用的原因

1、中间件配置跨域的顺序不对 中间件顺序配置对了基本上就能解决大部分问题中间件顺序配置对了基本上就能解决大部分问题 附上官网简单的启用跨域的代码 var MyAllowSpecificOrigins "_myAllowSpecificOrigins";var builder WebApplication.CreateBuilder(args);…

Linux 命令解释器-shell

概念 shell :壳,命令解释器,负责解析用户输入的命令 分类: 内置命令 (shell 内置 ) , shell 为了完成自我管理和基本的管理,不同的 shell 内置不同的命令,但是大 部分都差不多 外置命令&…

【开源免费】基于SpringBoot+Vue.JS网上超市系统(JAVA毕业设计)

本文项目编号 T 037 ,文末自助获取源码 \color{red}{T037,文末自助获取源码} T037,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

apisix高性能网关实现一机一密

基于 APISIX 的一机一密实现方案 概述 基于 Apache APISIX 网关的一机一密实现方案,通过自主开发的自定义插件实现设备级别的密钥管理和加密通信。本方案通过扩展 APISIX 的插件机制,实现高可用、可扩展的 API 安全防护。 本方案的主要特点: …

嵌入式Linux的AXI平台(platform)驱动教程

本文以JFMQL100的Linux系统的AXI接口的平台驱动为例,介绍嵌入式Linux的平台驱动编写、测试软件编写以及验证方式。本文的方法适用于任意嵌入式芯片Linux的物理地址映射的平台(platform)驱动的编写、测试与应用。 本文中AXI的开始地址为0x8000…

Visual Studio Code(VSCode)中编写 TypeScript 代码

在 Visual Studio Code(VSCode)中编写 TypeScript 代码通常需要以下配置: 一、安装必要的扩展 TypeScript 插件:由微软官方提供,提供了语法高亮、错误检查、代码补全等功能。 二、配置 tsconfig.json 文件(…

视频设备一体化监控运维方案

随着平安城市、雪亮工程等项目建设的号召,视频监控系统的建设如火如荼地开展。无论在公共场所、企业单位、住宅小区、矿山工地还是交通枢纽,视频监控系统已成为保障安全、维护秩序和提升管理效率的重要工具。但由于对视频监控系统中的前端设备&#xff0…

第十八章 Vue组件样式范围配置之scoped

目录 一、引言 二、案例演示 2.1. 工程结构图 2.2. 核心代码 2.2.1. main.js 2.2.2. App.vue 2.2.3. BaseOne.vue 2.2.4. BaseTwo.vue 2.3. 运行效果 2.4. 调整代码 2.4.1. BaseTwo.vue 2.4.2. 运行效果 三、scoped原理 一、引言 前面的几个章节在介绍组件的时…

可口可乐三季报 | 数字化助力,营收超预期 | ​eBest

可口可乐公司近日公布了2024年第三季度业绩报告。报告特别强调了数字技术,尤其是AI人工智能对推动增长的重要作用。 第三季度,可口可乐公司交出了一份亮眼的成绩单,营收和每股收益均超出市场预期,显示出公司业务的强大韧性和长期…

书生大模型实战营 L0 入门岛

书生大模型训练营入门岛任务——训练营链接 1. Linux前置知识 任务:端口转发 当使用vscode远程连接服务器时,在服务器运行的任务,vscode会自动帮忙进行端口映射,方便本地进行访问。 2. Python前置知识 任务1:Leec…