当前位置: 首页 > news >正文

在矩池云使用GLM-4的详细指南(无感连GitHubHuggingFace)

GLM-4-9B 是智谱 AI 推出的最新一代预训练模型 GLM-4 系列中的开源版本,在多项测试中表现出超越已有同等规模开源模型的性能,它能兼顾多轮对话、网页浏览、代码执行、多语言、长文本推理等多种功能,性能更加强大。其多模态语言模型GLM-4V-9B在视觉理解能力中的表现,则显示出堪比几大经典闭源模型的潜能。
在这里插入图片描述

项目地址:https://github.com/THUDM/GLM-4

上传模型和数据

如果租用的亚太区机器可以直接在线下载模型和数据,无需操作以下步骤。

如果租用的机器位于非亚太区,我们需要先上传的模型和数据到矩池云网盘,这样租用机器后就可以直接使用了。

Glm-4-9b-chat 的模型放在Huggingface,租用国内服务器直接运行下载可能很慢,所以我们需要提前本地下载好,然后上传到矩池云网盘再租用机器使用。

https://huggingface.co/THUDM/glm-4-9b-chat

本地下载好后,把相关文件上传到矩池云网盘即可,之后再根据项目需求进行调用。

租用机器

本次复现先使用的是亚太1区 NVIDIA RTX 4090 配置环境,镜像使用的是 CUDA 12.1 ,选择好机器和镜像后,点击高级选项-自定义端口,设置一个8080端口,用于后面访问 GLM-4 服务,配置好点击租用即可。

使用亚太1区的可以无感连 Github 和 HuggingFace,克隆 Github 代码或者下载Huggingface 模型很快。
在这里插入图片描述

租用成功后我们可以在租用页面看到机器的 SSH、Jupyterlab 等链接,矩池云官网有详细的教程介绍了如何使用这些链接连接服务器。

配置环境

clone 代码

经常修改的代码和数据集建议放矩池云网盘,Linux 系统实例中网盘对应机器中的 /mnt目录,永久存储,可以离线上传下载数据。

我们点击 Jupyterlab 链接即可直接访问服务器,新建一个 Terminal,输入以下指令 clone 项目。

# 进入网盘目录,我复现项目代码会归纳在一起 /mnt/example/,你改成自己目录即可
cd /mnt/example/
# clone 代码
git clone https://github.com/THUDM/GLM-4

安装依赖

安装 requirements.txt 里的依赖和 torch,按以下指令输入即可:

# 进入项目目录
cd GLM-4
# 安装依赖
pip install -r requirements.txt 
# 重新从官方源安装 torch
pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu121

看到最后警告信息不用管,意思是不建议你在 root 权限下操作安装,实际是安装成功了的。

运行项目

在程序运行前先修改部分代码,我们打开 basic_demo 下的 trans_web_demo.py 文件,修改以下代码:

  • 注释掉图示3行代码,并加1行 if None:,这个改动是直接让程序从默认路径读取模型,如果没有,就从 huggingface 下载。

  • 修改图示代码,设置 host、port,以及将inbrowser、 share 设置成False,避免不必要安全风险

输入以下指令运行项目:

cd basic_demo
python trans_web_demo.py 

启动成功后,即可访问租用页面 8080 端口链接。

在页面中输入问题,点击Submit即可获得响应。

整体响应速度、回答质量都比GLM3要更好。

glm-4-9b-chat 模型运行大概占用显存18G左右。

保存环境

配置好环境,我点击租用页面-更多-保存到个人环境,如果是团队项目,则保存至团队环境,即可保存我们配置好的环境。

取一个环境名称,然后勾选保存成功后自动释放机器,再点击保存环境即可。

保存成功后下次即可快速从保存环境启动啦。

相关文章:

  • 01背包问题(模板)
  • vue国际化(中英文切换)
  • 数据结构--实验
  • JVM (四)GC过程
  • Linux环境各种软件安装配置
  • 时间轴、流程类时间轴绘制
  • 7-1RT-Thread邮箱
  • LabVIEW在高校中的应用
  • 技术干货分享:初识分布式版本控制系统Git
  • 大学专业选择的岔路口:计算机相关专业的前景与适配性
  • DBSCAN 算法【python,机器学习,算法】
  • Web前端职业描述:编织数字世界的绚丽画卷
  • 360数字安全:2024年4月勒索软件流行态势分析报告
  • MySQL常用命令(Linux环境)
  • 2024年,计算机相关专业还值得选择吗?
  • [译] 怎样写一个基础的编译器
  • 【Linux系统编程】快速查找errno错误码信息
  • EOS是什么
  • If…else
  • JavaScript 一些 DOM 的知识点
  • jquery cookie
  • mysql中InnoDB引擎中页的概念
  • Python3爬取英雄联盟英雄皮肤大图
  • scrapy学习之路4(itemloder的使用)
  • spring cloud gateway 源码解析(4)跨域问题处理
  • Spring声明式事务管理之一:五大属性分析
  • vue-loader 源码解析系列之 selector
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 初识 beanstalkd
  • 反思总结然后整装待发
  • 机器学习学习笔记一
  • 思维导图—你不知道的JavaScript中卷
  • 通过npm或yarn自动生成vue组件
  • 通信类
  • 微服务框架lagom
  • 因为阿里,他们成了“杭漂”
  • 用quicker-worker.js轻松跑一个大数据遍历
  • RDS-Mysql 物理备份恢复到本地数据库上
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (附源码)ssm码农论坛 毕业设计 231126
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (生成器)yield与(迭代器)generator
  • (已解决)vscode如何选择python解释器
  • (译) 函数式 JS #1:简介
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .a文件和.so文件
  • .net core Redis 使用有序集合实现延迟队列
  • .NET DevOps 接入指南 | 1. GitLab 安装
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .Net的DataSet直接与SQL2005交互