【大模型-第一篇】在阿里云上部署ChatGLM3

前言

好久没写博客了,最近大模型盛行,尤其是ChatGLM3上线,所以想部署试验一下。
本篇只是第一篇,仅仅只是部署而已,没有FINETUNE、没有Langchain更没有外挂知识库,所以从申请资源——>开通虚机——>部署GLM3全程只用了18分钟,后面试通其它步骤后,会继续写的。

本篇文章参考了 程序员树先生 的“免费部署一个开源大模型 MOSS”
同时也参考了GLM3的github说明

一、申请阿里云机器学习平台PAI

本来是想在本地部署学习的,但是笔记本电脑只是3060的消费显卡,又搞不到A100甚至A10都搞不到,正好阿里云有3个月免费的GPU资源可以体验,所以正好一试。
只要没有申请过 PAI-DSW 资源的新老用户皆可申请 5000CU 的免费额度,3个月内使用。
免费试用活动页: https://free.aliyun.com/

1、申请资源

在这里插入图片描述
具体申请步骤我就不多做阐述了,大家可以参考上面树先生的文章,虽然有一些小出入,但大体是一样的。

2、创建实例(大概率是容器)

在这里插入图片描述
注1:GPU规格可以选择V100的这个(A10资源很少,即使申请成功了,后面重启经常没资源)。
因为比较贵,如果一直开着的话,15天就用完了。好在阿里云有“闲置关机策略”,系统会不定期对实例进行闲置检测判断,对于闲置实例做自动关机处理。不过为了以防万一,仍然建议及时主动关机
在这里插入图片描述
注2:因为GLM3对pytorch、cuda的版本有要求,所以建议选择官方镜像里的较新的版本,比如:
pytorch2.0.1tensorflow2.13.0-cpu-py38-ubunt,否则后面必定会报错,提示版本老旧等问题。
或者也可以使用镜像URL:dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai/modelscope:1.9.5-pytorch2.0.1tensorflow2.13.0-gpu-py38-cu118-ubuntu20.04
在这里插入图片描述

二、部署GLM3

部署GLM3,包括其它类似的开源大模型,步骤都是差不多的,毕竟这些高校/大厂都帮大家封装好了,所以并没有特别繁琐的步骤。
在我看来,主要就是三步:1、环境搭建;2、git下载GLM3(如果要本地化部署,还要下载模型);3、修改路径并启用

1、环境搭建

因为使用的是阿里云的PAI,默认已经帮我们配置好了环境变量、网络,装好了python甚至pytorch、tensorflow等等,所以这些正常比较麻烦的操作已经不需要我们再搞了。
进入虚机后,默认页面如下:
在这里插入图片描述
点击terminal进入,后面的步骤主要就是参考github上的GLM官方步骤了。

2、git下载GLM3(注:从这开始需要一点点的Linux基础)

2.1 git clone下载GLM3仓库

2.1.1首先git clone下载GLM3仓库,并切换到这个文件夹下
git clone https://github.com/THUDM/ChatGLM3
cd ChatGLM3

在这里插入图片描述

2.1.2 然后使用 pip 安装依赖:
pip install -r requirements.txt

2.2 git 下载本地模型

因为模型很大(总共11.6GB),github上很难下下来,所以曲线救国,从modelscope上git下载
在这里插入图片描述

git lfs install
git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git

这样,就会在ChatGLM3这个文件夹下,新出来一个chatglm3-6b文件夹
在这里插入图片描述

3、修改变量路径并启用

有2个文件需要修改变量路径,一个是ChatGLM3下的“web_demo.py”,另一个是chatgm3-6b下的“config.json”,都是把默认的“THUDM/”修改为“/mnt/workspace/”
这里的修改,可以使用vim,也可以直接左边栏双击打开文件修改(推荐)

3.1ChatGLM3/chatglm3-6b下的config.json

在这里插入图片描述

3.2 ChatGLM3下的web_demo.py

在这里插入图片描述

3.3 启动web_demo.py

在ChatGLM3目录下进行启动

python web_demo.py

在这里插入图片描述
直接点击上图第二个红框url,会跳转打开一个web UI,这样就完成了GLM3的大模型私有化部署
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SPSS曲线回归

前言: 本专栏参考教材为《SPSS22.0从入门到精通》,由于软件版本原因,部分内容有所改变,为适应软件版本的变化,特此创作此专栏便于大家学习。本专栏使用软件为:SPSS25.0 本专栏所有的数据文件请点击此链接下…

error C2143的原因及解决办法

error C2143的原因及解决办法 在C编程中,经常会遇到各种错误。其中之一就是error C2143。本文将讨论error C2143的原因,并给出相应的解决办法。 error C2143通常是由于语法错误引起的。具体而言,C2143错误表示编译器无法识别代码中的某个符…

AD教程 (十二)原理图的编译设置和检查

AD教程 (十二)原理图的编译设置和检查 通过肉眼初步排查,观察一下原理图上有什么错误 工程编译排查错误 选中工程,右键,选择Compile PCB Project对工程进行编译,根据编译报错,定位错误&#…

FM9918R系列-副边同步整流芯片

产品描述: FM9918R 系列是集成了 MOSFET 的同步整流二极管,用于替换反激式转换器的整流二极管,能够显著减少发热,提升系统的转换效率。IC 通过检测集成 MOSFET 的源漏电压来决定其开关状态。 FM9918R 系列能够兼容连续模式、非连续…

使用微信小程序控制蓝牙小车(微信小程序端)

目录 使用接口界面效果界面设计界面逻辑设计 使用接口 微信小程序官方开发文档 接口说明wx.openBluetoothAdapter初始化蓝牙模块wx.closeBluetoothAdapter关闭蓝牙模块(调用该方法将断开所有已建立的连接并释放系统资源)wx.startBluetoothDevicesDiscovery开始搜寻附近的蓝牙…

初识RabbitMQ - 安装 - 搭建基础环境

RabbitMQ 各个名词介绍 Broker:接收和分发消息的应用,RabbitMQ Server 就是 Message Broker Virtual host:出于多租户和安全因素设计的,把 AMQP 的基本组件划分到一个虚拟的分组中,类似于网络中的 namespace 概念。当…

基于超宽带技术的人员定位系统源码,spring boot+ vue+ mysql定位系统源码

​UWB定位技术源码 超宽带技术的人员定位系统源码 UWB人员定位系统是一种基于超宽带技术的人员定位系统,它通过发送和接收超短脉冲信号,在测距方面可以达到微米级精度。这种系统通常需要具备高精度的定位能力,通常需要达到微米级别&#xff0…

整治PPOCRLabel中cv2文件读取问题(更新中)

PPOCRLabel 使用PPOCRLabel对ocr预标注结果进行纠正由于PaddleOCR代码库十分混乱,路径经常乱调pip和代码库的代码(pip库和源码冲突),经常报错,因此paddleocr和ppocrlabel都是使用pip包; 安装 pip install PPOCRLabel2.1.3启动 PPOCRLabel…

Azure 机器学习 - 使用自动化机器学习训练计算机视觉模型的数据架构

目录 一、用于训练的数据架构图像分类(二进制/多类)多标签图像分类对象检测实例分段 二、用于联机评分的数据架构输入格式输出格式图像分类(二进制/多类)多标签图像分类对象检测实例分段 在线评分和可解释性 (XAI) 的数据格式支持…

【算法与数据结构】93、LeetCode复原 IP 地址

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:参照【算法与数据结构】131、LeetCode分割回文串的思路,需要将IP字符串进行分割&#xff0…

Clickhouse学习笔记(4)—— Clickhouse SQL

insert insert操作和mysql一致 标准语法:insert into [table_name] values(…),(….)从表到表的插入:insert into [table_name] select a,b,c from [table_name_2] update 和 delete ClickHouse 提供了 Delete 和 Update 的能力,这类操作…

[LeetCode]-225. 用队列实现栈-232. 用栈实现队列

目录 225. 用队列实现栈 题目 思路 代码 232. 用栈实现队列 题目 思路 代码 225. 用队列实现栈 225. 用队列实现栈 - 力扣(LeetCode)https://leetcode.cn/problems/implement-stack-using-queues/description/ 题目 请你仅使用两个队列实现一个后…

另辟奚径-Android Studio调用Delphi窗体

大家都知道Delphi能调用安卓SDK,比如jar、aar等, 但是反过来,能在Android Studio中调用Delphi开发的窗体吗? 想想不太可能吧, Delphi用的是Pascal,Android Studio用的是Java,这两个怎么能混用…

SFTP远程终端访问

远程终端访问 当服务器部署好以后,除了直接在服务器上操作,还可以通过网络进行远程连接访问CentOS 7默认支持SSH(Secure Shell, 安全Shell 协议),该协议通过高强度的加密算法提高了数据在网络传输中的安全性,可有效防止中间人攻击(Man-in-th…

机器学习算法——线性回归与非线性回归

目录 1. 梯度下降法1.1 一元线性回归1.2 多元线性回归1.3 标准方程法1.4 梯度下降法与标准方程法的优缺点 2. 相关系数与决定系数 1. 梯度下降法 1.1 一元线性回归 定义一元线性方程 y ω x b y\omega xb yωxb 则误差(残差)平方和 C ( ω , b ) …

快速修复因相机断电导致视频文件打不开的问题

3-5 本文主要解决因相机突然断电导致拍摄的视频文件打不开的问题。 在日常工作中,有时候需要使用相机拍摄视频,比如现在有不少短视频拍摄的需求,如果因电池突然断电的原因,导致拍出来的视频播放不了,这时候就容易出大…

Linux系统初步了解

Linux系统由4个主要部分组成:内核、Shell、文件系统和应用程序。 本专题主要是围绕这四个来展开的。 POSIX(可移植操作系统接口)定义了操作系统应该为应用程序提供的标准接口,其意愿是获得源码级别的软件可移植性。所以Linux选择…

ubuntu上如何移植thttpd

thttpd的特点 thttpd 是一个简单、小巧、便携、快速且安全的 HTTP 服务器。 简单: 它只处理实现 HTTP/1.1 所需的最低限度。好吧,也许比最低限度多一点。 小: 请参阅比较图表。它还具有非常小的运行时大小,因为它不会分叉并且非…

Springboot+vue的高校办公室行政事务管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频: Springbootvue的高校办公室行政事务管理系统(有报告)。Javaee项目,springboot vue前后端分离项目 项目介绍: 本文设计了一个基于Springbootvue的高校办公室行政事务管理系统,采用M(m…

5 Paimon数据湖之表数据查询详解

更多Paimon数据湖内容请关注:https://edu.51cto.com/course/35051.html 虽然前面我们已经讲过如何查询Paimon表中的数据了,但是有一些细节的东西还需要详细分析一下。 首先是针对Paimon中系统表的查询,例如snapshots\schemas\options等等这些…