智谱AI大模型ChatGLM3-6B更新,快來部署体验

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-Base-32K。以上所有权重对学术研究完全开放 ,在填写 问卷 进行登记后亦允许免费商业使用

环境安装


pip install protobuf 'transformers>=4.30.2' cpm_kernels 'torch>=2.0' gradio mdtex2html sentencepiece accelerate

模型下载

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

综合 Demo

该模型提供了一个集成以下三种功能的综合 Demo。·Chat: 对话模式,在此模式下可以与模型进行对话。·Tool: 工具模式,模型除了对话外,还可以通过工具进行其他操作。

60e576c1dc9256762a3552468bc322e0.jpeg

·Code Interpreter: 代码解释器模式,模型可以在一个 Jupyter 环境中执行代码并获取结果,以完成复杂任务。

d4e30180de00ea805cc86fa78753009d.jpeg

代码调用

可以通过如下代码调用 ChatGLM 模型来生成对话:>> > from transformers import AutoTokenizer, AutoModel>> > tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True)>> > model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True, device='cuda')>> > model = model.eval()>> > response, history = model.chat(tokenizer, "你好", history=[])>> > print(response)你好���!我是人工智能助手ChatGLM3 - 6B, 很高兴见到你, 欢迎问我任何问题。>> > response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)>> > print(response)晚上睡不着可能会让你感到焦虑或不舒服, 但以下是一些可以帮助你入睡的方法:1.制定规律的睡眠时间表: 保持规律的睡眠时间表可以帮助你建立健康的睡眠习惯, 使你更容易入睡。尽量在每天的相同时间上床, 并在同一时间起床。2.创造一个舒适的睡眠环境: 确保睡眠环境舒适, 安静, 黑暗且温度适宜。可以使用舒适的床上用品, 并保持房间通风。3.放松身心: 在睡前做些放松的活动, 例如泡个热水澡, 听些轻柔的音乐, 阅读一些有趣的书籍等, 有助于缓解紧张和焦虑, 使你更容易入睡。4.避免饮用含有咖啡因的饮料: 咖啡因是一种刺激性物质, 会影响你的睡眠质量。尽量避免在睡前饮用含有咖啡因的饮料, 例如咖啡, 茶和可乐。5.避免在床上做与睡眠无关的事情: 在床上做些与睡眠无关的事情, 例如看电影, 玩游戏或工作等, 可能会干扰你的睡眠。6.尝试呼吸技巧: 深呼吸是一种放松技巧, 可以帮助你缓解紧张和焦虑, 使你更容易入睡。试着慢慢吸气, 保持几秒钟, 然后缓慢呼气。如果这些方法无法帮助你入睡, 你可以考虑咨询医生或睡眠专家, 寻求进一步的建议。

低成本部署

模型量化

默认情况下,模型以 FP16 精度加载,运行上述代码需要大概 13GB 显存。如果你的 GPU 显存有限,可以尝试以量化方式加载模型,使用方法如下:model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True).quantize(4).cuda()模型量化会带来一定的性能损失,经过测试,ChatGLM3-6B 在 4-bit 量化下仍然能够进行自然流畅的生成。

CPU 部署

如果你没有 GPU 硬件的话,也可以在 CPU 上进行推理,但是推理速度会更慢。使用方法如下(需要大概 32GB 内存)model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True).float()

Mac 部署

对于搭载了 Apple Silicon 或者 AMD GPU 的 Mac,可以使用 MPS 后端来在 GPU 上运行 ChatGLM3-6B。需要参考 Apple 官方说明安装 PyTorch-Nightly(正确的版本号应该是2.x.x.dev2023xxxx,而不是 2.x.x)。目前在 MacOS 上只支持从本地加载模型。将代码中的模型加载改为从本地加载,并使用 mps 后端:model = AutoModel.from_pretrained("your local path", trust_remote_code=True).to('mps')加载半精度的 ChatGLM3-6B 模型需要大概 13GB 内存。内存较小的机器(比如 16GB 内存的 MacBook Pro),在空余内存不足的情况下会使用硬盘上的虚拟内存,导致推理速度严重变慢。

多卡部署

如果你有多张 GPU,但是每张 GPU 的显存大小都不足以容纳完整的模型,那么可以将模型切分在多张GPU上。首先安装 accelerate:pip install accelerate然后即可正常加载模型。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

FlinkAPI开发之数据合流

案例用到的测试数据请参考文章: Flink自定义Source模拟数据流 原文链接:https://blog.csdn.net/m0_52606060/article/details/135436048 概述 在实际应用中,我们经常会遇到来源不同的多条流,需要将它们的数据进行联合处理。所以…

JMeter 批量接口测试

一、背景 最近在进行某中台的接口测试准备,发现接口数量非常多,有6、70个,而且每个接口都有大量的参数并且需要进行各种参数验证来测试接口是否能够正确返回响应值。想了几种方案后,决定尝试使用JMeter的csv读取来实现批量的接口…

【Docker项目实战】使用Docker部署nullboard任务管理工具

【Docker项目实战】使用Docker部署nullboard任务管理工具 一、nullboard介绍1.1 nullboard简介1.2 任务看板工具介绍 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍2.3 注意事项 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四…

export default 和exprot

1.默认导入和默认导出 语法: export default {需要输出的内容} 接收: import 成员变量的名字 from 文件夹的路径 案例: a.mjs文件夹下默认导出 export default{a:10,b:20,show(){console.log(123);} } 在b.mjs文件中用成员变量进行接收 import AA from &q…

【昕宝爸爸定制】如何将集合变成线程安全的?

如何将集合变成线程安全的? ✅典型解析🟢拓展知识仓☑️Java中都有哪些线程安全的集合?🟠线程安全集合类的优缺点是什么🟡如何选择合适的线程安全集合类☑️如何解决线程安全集合类并发冲突问题✔️乐观锁实现方式 (具体步骤)。✅…

城堡世界源码

随着数字技术的飞速发展和人们对于娱乐需求的不断提升,城堡世界源码开发逐渐成为了新的热门话题。城堡世界是一个集潮流、艺术、科技于一体的数字娱乐新领域,通过将虚拟现实、增强现实等技术融入传统玩具设计中,为玩家们带来了全新的互动体验…

建站为什么需要服务器?(Web服务器与计算机对比)

​  在部署网站时,底层基础设施在确保最佳性能、可靠性和可扩展性方面发挥着至关重要的作用。虽然大多数人都熟悉个人计算机 (PC) 作为日常工作和个人任务的设备,但 PC 和 Web 服务器之间存在显著差异。在这篇文章中,我们将讨论这些差异是什…

拼多多API的未来:无限可能性和创新空间

拼多多,作为中国电商市场的巨头之一,自成立以来一直保持着高速的发展态势。其API的开放为开发者提供了无限的可能性和创新空间,使得更多的商业逻辑和功能得以实现。本文将深入探讨拼多多API的未来发展,以及它所具备的无限可能性和…

Python基础学习(一)

Python基础语法学习记录 输出 将结果或内容呈现给用户 print("休对故人思故国,且将新火试新茶,诗酒趁年华") # 输出不换行,并且可以指定以什么字符结尾 print("青山依旧在",end ",") print("几度夕阳红…

2024-01-03 无重叠区间

435. 无重叠区间 思路:和最少数量引爆气球的箭的思路基本都是一致了!贪心就是比较左边的值是否大于下一个右边的值 class Solution:def eraseOverlapIntervals(self, points: List[List[int]]) -> int:points.sort(keylambda x: (x[0], x[1]))# 比较…

入驻抖店的费用是多少?最新具体费用详情!

我是电商珠珠 抖店的入驻费用是新手比较关心的问题,网上的说法不一,有说开店要几w的,还有的说不要钱的,什么说法都有。 搞得想要开店的人,心有点慌,害怕超出自己的预算。 接下来我就跟大家详细讲一下&am…

Java中异常处理-详解

异常(Exception) JVM 默认处理方案 把异常的名称,异常的原因,及异常出错的位置等信息输出在控制台程序停止执行 异常类型 编译时异常必须显示处理,否则程序会发生错误,无法通过编译运行时异常无需显示处理…

数据泄密零容忍:揭秘迅软科技文件加密系统的保密奥秘!

企事业单位内部的数据机密性至关重要,但机密数据往往以电子文档形式存储,并借助多样化的传播手段,导致文件泄密事件频发。无论是员工误操作导致的终端泄密,还是黑客入侵窃取机密数据,都可能导致重要文件被非法获取&…

使用echarts制作柱状图、折线图,并且下方带表格

实现效果: 调试地址: https://echarts.apache.org/examples/zh/editor.html?cline-simple 源码: option { title: { left: center, top: 0, text: 2022-05月 制造产量 达成情况(单位: 吨) (图1)\n\n集团目标产量: 106,675吨 集团实际产量: 2,636吨, text…

Springboot+vue的工作流程管理系统(有报告),Javaee项目,springboot vue前后端分离项目

演示视频: Springbootvue的工作流程管理系统(有报告),Javaee项目,springboot vue前后端分离项目 项目介绍: 本文设计了一个基于Springbootvue的前后端分离的工作流程管理系统,采用M(model)V&am…

SENet实现遥感影像场景分类

今天我们分享SENet实现遥感影像场景分类。 数据集 本次实验我们使用的是NWPU-RESISC45 Dataset。NWPU Dataset 是一个遥感影像数据集,其中 NWPU-RESISC45 Dataset 是由西北工业大学创建的遥感图像场景分类可用基准,该数据集包含像素大小为 256*256 共计 …

1. seaborn-可视化统计关系

统计分析是了解数据集中的变量如何相互关联以及这些关系如何依赖于其他变量的过程。可视化是此过程的核心组件,这是因为当数据被恰当地可视化时,人的视觉系统可以看到指示关系的趋势和模式。 这里介绍三个seaborn函数。我们最常用的是relplot()。这是一…

golang实现加密解密文档

golang实现加密解密文档 package mainimport ("bytes""crypto/aes""crypto/cipher""crypto/rand""encoding/base64""flag""fmt""io""io/ioutil" )func main() {encodePtr : flag.…

阿赵UE学习笔记——8、贴图导入设置

阿赵UE学习笔记目录 大家好,我是阿赵。   继续学习虚幻引擎的用法,这次来说一下贴图的导入设置。   在内容浏览器里面可以看到纹理类型的资源,就是贴图了,鼠标悬浮在上面可以看到这个纹理贴图的信息: 双击纹理贴图…

Vue3技术解析(小册子)

随着 Vue 3 正式版本的发布,未来 Vue 3 将会成为前端的主流框架,这个毋庸置疑。Vue 3 在使用方面会兼容部分 Vue 2.x 的特性,比如 options API。 所以,究竟是要先学习 Vue 2 打好基础,还是直接学习 Vue 3 呢&#xff…