任务1 部署ChatGLM3-6B大模型并进行对话测试

部署ChatGLM3-6B大模型并进行对话测试

  • 0 介绍:
  • 1 趋动云项目创建与环境配置
    • 1.1 创建项目:
    • 1.2 配置环境
      • 1.2.1 进入终端
      • 1.2.2 设置镜像源
      • 1.2.3 克隆项目,并安装依赖
  • 2 修改代码,改路径以及启动代码
  • 3 运行代码
    • 3.1 运行gradio界面:
    • 3.2 运行streamlit界面:

0 介绍:

本项目是根据datawhale 与 趋动云平台联合 联合的项目,本文主要在于学习和了解使用大模型。
使用的大模型是 ChatGLM3-6B, 这是智谱AI和清华大学KEG实验室联合发布的新一代对话预训
练模型。
整体平台感觉还是非常好用的,方便模型的部署。
项目地址: https://github.com/THUDM/ChatGLM3
image.png

1 趋动云项目创建与环境配置

1.1 创建项目:

创建好账号之后,进入自己的空间,点击右上角的创建项目
image.png
给自己项目命名,选择本地代码:
image.png
镜像选择pytorch2.0.1,python3.9
image.png
选择预训练模型,点击公开,选择不要葱姜蒜上传的这个ChtaGLM3-6B模型。
image.png

都选完之后,点击右下角的创建,代码选择暂不上传。待会直接clone代码。
点击运行代码
image.png
资源配置选择:B1.large,24G的显存足够加载模型了。其他的不需要设置,然
后点击右下角的开始运行。
image.png

1.2 配置环境

1.2.1 进入终端

等右边两个工具全部加载完毕之后,再点击JupyterLabi进入开发环境
image.png
进入界面之后会有一个环境界面,可以简单运行一下环境界面:可以看到每个部分的文件都有自己固定的位置。
image.png

然后点击 小加号,新建一个终端。
image.png
点击 terminal 进入终端:
image.png

image.png

1.2.2 设置镜像源

首先在终端输入tmux,进入一个新的会话窗口。使用tux可以保持终端的稳定性。

tmux

升级apt,安装unzip:

apt-get update &apt-get install unzip

image.png

设置镜像源,升级pip:

git config --global url."https://gitclone.com/".insteadof https:/
pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple
python3 -m pip install --upgrade pip

注:如果存在一些连接错误,你可以在23行中间添加

pip config set global.trusted-host mirrors.ustc.edu.cn

image.png

1.2.3 克隆项目,并安装依赖

克隆项目:并进入项目目录:

git clone https://github.com/THUDM/ChatGLM3.git
cd ChatGLM3

image.png
我觉得应该在里面搞一个虚拟环境,然后在虚拟环境里面安装,而不是在base里面安装。

返回终端,安装依赖:
修改requirements:
双击左侧的requirements.txt文件,把其中的torch删掉,因为我们的环境中已经有
torch了,避免重复下载浪费时间。
image.png

pip install -r requirements.txt

image.png

2 修改代码,改路径以及启动代码

修改web_demo2.py ** 将加载模型的路径**修改为: …/…/pretrain 如下图所示:
image.png

修改web_demo.py文件,先修改路径代码,然后修改启动代码。
image.png

将下方的启动代码,修改为 下方代码:
demo.queue().launch(share=False,server_name=“0.0.0.0”,server_port=7000)
image.png

于此同时,在界面的右边,添加外部端口:7000
image.png

3 运行代码

3.1 运行gradio界面:

python web_demo.py

image.png
加载完毕之后,复制外部访问的连接,到浏览器打开:
image.png
direct.virtaicloud.com:43779

使用谷歌打开可能会存在一些问题,可以换成ie浏览器:
image.png
这里的A,B这些错乱的字符,是我鼠标滚轮上下移动导致的,可以忽略,不影响的。
image.png

3.2 运行streamlit界面:

如果你已经运行了gradio, 需要先杀掉这个进程,否则内存不够用。
使用 **ctrl + c **杀掉进行。
杀掉进程之后,显存不会立刻释放,可以观察右边的GPU内存占用, 查看显存释放情况。
image.png

上面已经直接修改过 web_demo2.py ,所以可以直接使用streamlit 运行:

streamlit run web_demo2.py

运行 streamlit 之后,终端会打印两个地址。在右边添加一个和终端上显示的一样的端口号
image.png
image.png

添加端口:
image.png
image.png

等待加载完毕之后,再复制到浏览器里面打开:
image.png

然后打开浏览器: 可以进行对话。
image.png

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

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

相关文章

雷池WAF社区版的使用教程

最近听说了一款免费又好用的WAF软件,雷池社区版,体验了一下虽然还有很多改进的空间 但是总体来说很适合小站长使用,和学习使用 也建议所有想学防火墙和红队(攻击队)练习使用,听说给官网提交绕过还有额外的…

ZKP Introduction of Nova (Yu Guo) 手写笔记

ZKP学习笔记 郭宇老师Nova课程手写笔记

你知道Python、Pycharm、Anaconda 三者之间的关系吗?

哈喽~大家好呀 Python作为深度学习和人工智能学习的热门语言,你知道Python、Pycharm、Anaconda 三者之间的关系吗?学习一门语言,除了学会其简单的语法之外还需要对其进行运行和实现,才能实现和发挥其功能和作用。下面来介绍运行P…

机器学习(深度学习)轴承故障诊断分类(提供故障数据和python代码实现)

机器学习(深度学习)故障诊断分类(提供故障数据和python代码实现) 轴承故障数据集和python代码自取:https://mbd.pub/o/bread/ZZWTm5hw 摘要:机器学习广泛的应用于机械故障诊断和故障分类问题,本…

时间复杂度的计算技巧-算法模型中的时间复杂度如何计算,有哪些技巧呢

大家好,我是微学AI,今天给大家介绍一下时间复杂度的计算技巧-算法模型中的时间复杂度如何计算,有哪些技巧呢,算法的时间复杂度是评估算法性能和效率的一种方式,它表示算法需要执行多少次基本操作才能完成其任务&#x…

Linux文本编辑器vim使用和配置详解

vim介绍 ​ vim是Linux的一款文本编辑器,可以用来编辑代码,而且支持语法高亮,还可以进行一系列配置使vim更多样化。也可以运行于windows,mac os上。 ​ vim有多种模式,但目前我们只介绍绝大多数场景用的到的模式&…

树结构及其算法-二叉树节点的插入

目录 树结构及其算法-二叉树节点的插入 C代码 树结构及其算法-二叉树节点的插入 二叉树节点插入的情况和查找相似,重点是插入后仍要保持二叉查找树的特性。如果插入的节点已经在二叉树中,就没有插入的必要了,如果插入的值不在二叉树中&…

集线器、交换机、网桥、路由器、网关

目录 集线器(HUB)交换机(SWITCH)网桥(BRIDGE)路由器(ROUTER)网关(GATEWAY)交换机和路由器的区别参考 集线器(HUB) 功能 集线器对数据的传输起到同步、放大和整形的作用 属于物理层设备 工作机制 使用集线器互连而成的以太网被称为共享式以太网。当某个主机要给另一个主机发送单…

轻量封装WebGPU渲染系统示例<13>- 屏幕空间后处理效果(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/main/src/voxgpu/sample/ScreenPostEffect.ts 此示例渲染系统实现的特性: 1. 用户态与系统态隔离。 细节请见:引擎系统设计思路 - 用户态与系统态隔离-CSDN博客 2. 高频调用与低频调用隔离。…

【Unity实战】最全面的库存系统(五)

文章目录 先来看看最终效果前言配置商店系统数据创建另一个NPC绘制商店UI控制商店开关列出商品添加和删除物品功能添加商品到购物车购买商品购物车删除物品商店预览效果购买和出售切换出售功能保存商店数据快捷栏物品切换和使用完结 先来看看最终效果 前言 本期也是最好一期&a…

数字孪生技术与VR:创造数字未来

在当今数字化浪潮中,数字孪生和虚拟现实(VR)技术是两大亮点,它们以独特的方式相互结合,为各个领域带来了创新和无限可能。本篇文章将探讨数字孪生与VR之间的关系,以及它们如何共同开辟未来的新前景。 数字…

FreeRTOS_事件标志组

目录 1. 事件标志组简介 2. 创建事件标志组 2.1 函数 xEventGroupCreate() 2.2 函数 xEventGroupCreateStatic() 3. 设置事件位 3.1 函数 xEventGroupClearBits() 3.2 函数 xEventGroupClearBitsFromISR() 3.3 函数 xEventGroupSetBits() 3.4 函数 xEventGroupSetB…

项目实战:分页功能实战

1、在index.html添加点击事件 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><link rel"stylesheet" href"style/index.css"><script src"scr…

点大商城V2版 2.5.2.1 全开源独立版 多小程序端+unipp安装教程

点大商城V2是一款采用全新界面设计支持多端覆盖的小程序应用&#xff0c;支持H5、微信公众号、微信小程序、头条小程序、支付宝小程序、百度小程序&#xff0c;本程序是点大商城V2独立版&#xff0c;包含全部插件&#xff0c;代码全开源&#xff0c;并且有VUE全端代码。分销&am…

万岳讲堂:抖音小程序开发入门指南

抖音小程序可以将开发者的创意带入这个热门的应用中。本文将带您深入了解抖音小程序的开发入门指南&#xff0c;帮助您开始在这一平台上构建自己的应用。 一、什么是抖音小程序&#xff1f; 抖音小程序是一种轻量级的应用程序&#xff0c;它可以在抖音中直接运行&#xff0c;无…

Java8 Stream API全面解析——高效流式编程的秘诀

文章目录 什么是 Stream Api?快速入门流的操作创建流中间操作filter 过滤map 数据转换flatMap 合并流distinct 去重sorted 排序limit 限流skip 跳过peek 操作 终结操作forEach 遍历forEachOrdered 有序遍历count 统计数量min 最小值max 最大值reduce 聚合collect 收集anyMatch…

python 成绩统计,输出及格率和优

题目描述&#xff1a; 小蓝给学生们组织了一场考试&#xff0c;卷面总分为100分&#xff0c;每个学生的得分都是一个0到100的整数。 如果得分至少是60分&#xff0c;则称为及格。如果得分至少为85分&#xff0c;则称为优秀。 请计算及格率和优秀率&#xff0c;用百分数表示&am…

虚拟机保护工具:Zerto Virtual Replication 10.0 U1 Crack

Zerto虚拟复制是为需要保护虚拟机和应用程序的企业设计的产品。通过通过连接到广域网或云到远程站点的复制来保护虚拟机。Zerto VR 2.0还可以与vCloud Director一起将虚拟机或虚拟机组复制到云端&#xff08;或从云端&#xff09;。 事实上&#xff0c;Zerto与33家云提供商合作…

Unity在Project右键点击物体之后获取到点击物体的名称

Unity在Project右键点击物体之后获取到点击物体的名称 描述&#xff1a; 在Unity的Project右键点击物体之后选择对应的菜单选项点击之后打印出物体的名称 注意事项 如果获取到文件或者预制体需要传递objcet类型&#xff0c;然后使用 GameObject.Instantiate((GameObject)se…

WiFi模块在智能家居中的应用与优化

智能家居技术的迅速发展已经改变了我们对家庭的定义。WiFi模块作为智能设备连接的核心&#xff0c;扮演着连接和控制智能家居生态系统的关键角色。本文将深入研究WiFi模块在智能家居中的应用&#xff0c;同时探讨如何通过优化来提升其性能和用户体验。 1. 智能家居中WiFi模块的…