【记录】ChatGLM3-6B大模型部署、微调(一):部署

ChatGLM3介绍

        源码连接:

        ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的对话预训练模型。ChatGLM3-6B 是 ChatGLM3 系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:

  1. 更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,* ChatGLM3-6B-Base 具有在 10B 以下的基础模型中最强的性能*。
  2. 更完整的功能支持: ChatGLM3-6B 采用了全新设计的 Prompt 格式 ,除正常的多轮对话外。同时原生支持工具调用(Function Call)、代码执行(Code Interpreter)和 Agent 任务等复杂场景。
  3. 更全面的开源序列: 除了对话模型 ChatGLM3-6B 外,还开源了基础模型 ChatGLM3-6B-Base 、长文本对话模型 ChatGLM3-6B-32K 和进一步强化了对于长文本理解能力的 ChatGLM3-6B-128K。以上所有权重对学术研究完全开放 ,在填写 问卷 进行登记后亦允许免费商业使用

ChatGLM3-6B对话模型部署

推荐服务器环境

软件

  • pytorch2.1.2
  • tensorflow2.14.0
  • python310

硬件

  • 内存32G以上
  • GPU 1*NVIDIA V100
  • 显存16G以上(最低)

案例使用Notebook限免GPU环境

拉取github项目源码

#下载项目源码  建议在终端执行
#git clone https://github.com/THUDM/ChatGLM3.git
#若因为网络问题无法连接,建议使用gitee或者下载后上传

下载模型到本地

官网有多个下载地址,考虑网络原因使用modelscope

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


安装依赖

#安装python依赖 建议在终端执行  
pip install -r /mnt/workspace/ChatGLM3/requirements.txt

#如果报错 执行下面内容 隔离环境 如果无错误跳过环境隔离部分

此处python依赖包版本有问题,可能是安装的包与原环境中的包存在版本冲突。后续运行时会出现报错:“ImportError: cannot import name 'MultiModalData' from 'vllm.sequence' (/usr/local/lib/python3.10/dist-packages/vllm/sequence.py)” 

逐一解决比较麻烦,此处是测试直接进行环境隔离(也可以使用conda等方式)

# 环境隔离 终端执行
pip install virtualenv
virtualenv myenv
source myenv/bin/activate

再执行pip install -r /mnt/workspace/ChatGLM3/requirements.txt

修改模型路径

使用下载的本地模型路径

将THUDM/chatglm3-6b改为之前下载到本地的模型路径

启动对话程序测试

# 网页端启动
treamlit run /mnt/workspace/ChatGLM3/basic_demo/web_demo_streamlit.py

# 其他启动方式也在basic_demo中,可自行选择

总结

以上完成了ChatGLM3-6B本地模型的部署和简单测试。

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

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

相关文章

算法:模拟题目练习

目录 题目一:替换所有的问号 题目二:提莫攻击 题目三:N字形变换 题目四:外观数列 题目五:数青蛙 首先先解释一下模拟算法是什么,其实模拟算法就是题目让我们干什么我们就干什么,思路比较简…

noVNC 小记

1. 怎么查看Ubuntu版本

汽车行驶中是怎么保障轴瓦安全的?

汽车轴瓦是一种用于减少摩擦和支撑转动部件的关键零部件,通常用于发动机的曲轴、凸轮轴等转动部件上。主要作用是减少转动部件之间的摩擦,支撑和保护曲轴、凸轮轴等旋转部件,确保它们在高速旋转时的稳定性和耐用性。 在汽车轴瓦加工过程中&am…

PHP简约轻型聊天室留言源码

无名轻聊是一款phptxt的轻型聊天室。 无名轻聊特点: 自适应电脑/手机 数据使用txt存放,默认显示近50条聊天记录 采用jqueryajax轮询方式,适合小型聊天环境。 访问地址加?zhi进入管理模式,发送 clear 清空聊天记录。 修改在…

RuoYi: 企业级快速开发平台

目录 前言1 项目介绍1.1 简介1.2 特性 2 技术选型3 功能方面4 代码解释4.1 控制器层示例4.2 服务层示例4.3 数据访问层示例 4 推荐理由4.1 高效开发4.2 灵活性和扩展性4.3 完善的功能和安全性4.4 活跃的开源社区 结语 前言 在现代企业级应用开发中,高效、稳定、安全…

使用脚手架创建vue2项目(关闭eslint语法检查 、运行项目时自动打开网址、src文件夹简写方法)

使用脚手架创建vue2项目会默认安装的插件(eslint) 这个插件是检查语法的。 假设我们在main.js中定义了一个变量,没有使用 eslint 就会检测出错误 (事实是我们并没有写错而是eslint 给我们判断是错的,所以这样会很麻烦&#xff…

第19篇 Intel FPGA Monitor Program的使用<二>

Q:Intel FPGA Monitor Program里集成的Computer System是什么架构的呢? A:我们以DE2-115的DE2-115_Computer System为例介绍,简单说DE2-115_Computer System就是一个Qsys系统,该系统包含Nios II处理器以及DE2-115开发…

风控中的文本相似方法之余弦定理

一、 余弦相似概述 余弦相似性通过测量两个向量的夹角的余弦值来度量它们之间的相似性。0度角的余弦值是1,而其他任何角度的余弦值都不大于1;并且其最小值是-1。 从而两个向量之间的角度的余弦值确定两个向量是否大致指向相同的方向。结果是与向量的长…

Java 编程语言的核心知识点与特性

Java 是一种广泛使用的编程语言,自 1995 年发布以来,它已经成为了企业级应用开发、移动应用开发、大数据处理和云计算等领域的主流技术。本文将介绍 Java 编程语言的一些核心知识点和特性,帮助读者更好地理解和使用 Java。 面向对象编程&…

redis未授权getshell整合利用

一、redis环境搭建 Redis下载地址:http://download.redis.io/releases/redis-4.0.2.tar.gz 1.靶机安装redis-centos7 第一步:下载wget yum -y install wget 第二步:下载redis wget http://download.redis.io/redis-stable.tar.gz 第三步&a…

Google Chrome谷歌浏览器怎么立刻更新书签

在地址栏输入: chrome://sync 点击Trigger GetUpdates按钮,即可看见更新书签 如果不行,请重启chrome浏览器,再重试即可

智能座舱软件性能与可靠性的评估和改进

随着智能汽车的不断发展,智能座舱在性能与可靠性上暴露出体验不佳、投诉渐多的问题,本文从工程化的角度简述了如何构建智能座舱软件的评估框架,以及如何持续改进其性能和可靠性。 1. 智能座舱软件性能和可靠性表现不佳 据毕马威发布的《2023…

Python写UI自动化--playwright(元素定位)

本篇详细分享playwright如何进行打断点、元素定位、填写输入框、点击等操作 目录 一、PyCharm打断点进行调试 二、浏览器开发者模式检查元素 三、通过CSS或XPath进行定位 四、输入框输入文本操作 五、点击操作 总结 一、PyCharm打断点进行调试 如图所示,我们…

RK3568技术笔记 Ubuntu 安装VMware Tools

安装 VMware Tools 后可以直接使用复制粘贴功能拷贝 Ubuntu 系统和 windows 主机内的文件,非常方便。 开启虚拟机,必须要进入ubuntu系统后才能进行下面的步骤。 单击 VMware 软件中的标签“虚拟机”,在下拉的菜单中单击“安装VMware Tools &…

用Python绘制yolo训练结果比较图-论文需要

代码内容来自于网络用博客记录 利用训练生成的result.csv中数据,形成多模型的比较图。 代码中演示的是map50、map50-95、losss的比较图 import matplotlib.pyplot as plt import pandas as pd import numpy as npif __name__ __main__:# 列出待获取数据内容的…

如何通过逆向分析法挖掘真实需求?

逆向分析法从现有问题或现象出发,反向追溯其根本原因,以揭示隐藏需求和潜在问题。此方法有助于深入理解用户的真实需求,提高需求分析质量和效率,优化用户体验,提高用户满意度和忠诚度。如果缺乏逆行分析法,…

MCK主机加固系统——您的数字堡垒

在这个数字化的时代,信息安全如同企业的生命线,而MCK主机加固系统,就是守护这条生命线的坚固堡垒。让我为您揭开这款产品的神秘面纱,带您领略它如何成为企业信息安全的坚强后盾。 主机加固系统——您的数字堡垒 在网络攻击日益猖…

界面控件DevExpress WinForms垂直属性网格组件 - 拥有更灵活的UI选择(一)

DevExpress WinForms垂直&属性网格组件旨在提供UI灵活性,它允许用户显示数据集中的单个行或在其90度倒置网格容器中显示多行数据集。另外,用户可以把它用作一个属性网格,就像在Visual Studio IDE中那样。 P.S:DevExpress Win…

调度系统揭秘(上):调度系统设计思想

前言 在互联网领域中,几乎所有企业需要调度系统,主要原因是企业需要处理大量的数据,并且这些数据需要在不同的系统之间进行传输和处理。一部分是为了满足业务的需要,例如BI决策分析、图表展示、机器学习、数据挖掘;一…

前端项目打包部署

打包 vue-cli脚手架的前端项目,点击npm脚本中的第二条编译命令,即可将项目编译,生成一个dist的文件夹,里面存放的就是编译好的前端项目文件,没有脚手架就在终端敲击npm run build命令编译前端项目 部署 Nginx 介绍:…