清华 ChatGLM2-6B 模型又开始刷圈了!新版本在推理能力上提升了 42%,最高支持 32k 上下文。
ChatGLM-6B 自 3 月发布以来,在 AI 社区爆火,GitHub 上已斩获 29.8k 星。
如今,第二代 ChatGLM 来了!
清华 KEG 和数据挖掘小组(THUDM)发布了中英双语对话模型 ChatGLM2-6B。
项目地址:https://github.com/THUDM / ChatGLM2-6B
HuggingFace:https://huggingface.co/THUDM/chatglm2-6b
最新版本 ChatGLM2-6B 增加了许多特性:
- 基座模型升级,性能更强大
- 支持 8K-32k 的上下文
- 推理性能提升了 42%
- 对学术研究完全开放,允许申请商用授权
值得一提的是,在中文 C-Eval 榜单中,ChatGLM2 以 71.1 分位居榜首,碾压 GPT-4。而最新版本 ChatGLM2-6B 以 51.7 分位列第 6。
ChatGLM-6B 的第二代版本,在保留了初代模型对话流畅、部署门槛较低等众多优秀特性的基础之上,又增加许多新特性:
基于 ChatGLM 初代模型的开发经验,全面升级了 ChatGLM2-6B 的基座模型。
ChatGLM2-6B 使用了 GLM 的混合目标函数,经过了 1.4T 中英标识符的预训练与人类偏好对齐训练.
评测结果显示,与初代模型相比,ChatGLM2-6B 在 MMLU(+23%)、CEval(+33%)、GSM8K(+571%) 、BBH(+60%)等数据集上的性能取得了大幅度的提升,在同尺寸开源模型中具有较强的竞争力。
基于 FlashAttention 技术,研究人员将基座模型的上下文长度由 ChatGLM-6B 的 2K 扩展到了 32K,并在对话阶段使用 8K 的上下文长度训练,允许更多轮次的对话。
但当前版本的 ChatGLM2-6B 对单轮超长文档的理解能力有限,会在后续迭代升级中着重进行优化。
基于 Multi-Query Attention 技术,ChatGLM2-6B 有更高效的推理速度和更低的显存占用.
在官方的模型实现下,推理速度相比初代提升了 42%,INT4 量化下,6G 显存支持的对话长度由 1K 提升到了 8K。
ChatGLM2-6B 权重对学术研究完全开放,在获得官方的书面许可后,亦允许商业使用。
相比于初代模型,ChatGLM2-6B 在多个维度的能力上,都取得了巨大的提升。
研究团队选取了部分中英文典型数据集进行了评测,以下为 ChatGLM2-6B 模型在 MMLU(英文)、C-Eval(中文)、GSM8K(数学)、BBH(英文) 上的测评结果。
ChatGLM2-6B 使用 Multi-Query Attention,提高了生成速度。生成 2000 个字符的平均速度对比如下:
Multi-Query Attention 同时也降低了生成过程中 KV Cache 的显存占用。
此外,ChatGLM2-6B 采用 Causal Mask 进行对话训练,连续对话时可复用前面轮次的 KV Cache,进一步优化了显存占用。
因此,使用 6GB 显存的显卡进行 INT4 量化的推理时,初代的 ChatGLM-6B 模型最多能够生成 1119 个字符就会提示显存耗尽,而 ChatGLM2-6B 能够生成至少 8192 个字符。
研究团队也测试了量化对模型性能的影响。结果表明,量化对模型性能的影响在可接受范围内。
环境安装
首先需要下载本仓库:
git clone https://github.com/THUDM/ChatGLM2-6Bcd ChatGLM2-6B
然后使用 pip 安装依赖:pip install -rrequirements.txt,其中 transformers 库版本推荐为 4.30.2,torch 推荐使用 2.0 以上的版本,以获得最佳的推理性能。
可以通过如下代码调用 ChatGLM2-6B 模型来生成对话:
> from transformers import AutoTokenizer, AutoModel>1. 制定规律的睡眠时间表保持规律的睡眠时间表可以帮助你建立健康的睡眠习惯使你更容易入睡。尽量在每天的相同时间上床并在同一时间起床。2. 创造一个舒适的睡眠环境确保睡眠环境舒适安静黑暗且温度适宜。可以使用舒适的床上用品并保持房间通风。3. 放松身心在睡前做些放松的活动例如泡个热水澡听些轻柔的音乐阅读一些有趣的书籍等有助于缓解紧张和焦虑使你更容易入睡。4. 避免饮用含有咖啡因的饮料咖啡因是一种刺激性物质会影响你的睡眠质量。尽量避免在睡前饮用含有咖啡因的饮料例如咖啡茶和可乐。5. 避免在床上做与睡眠无关的事情在床上做些与睡眠无关的事情例如看电影玩游戏或工作等可能会干扰你的睡眠。6. 尝试呼吸技巧深呼吸是一种放松技巧可以帮助你缓解紧张和焦虑使你更容易入睡。试着慢慢吸气保持几秒钟然后缓慢呼气。如果这些方法无法帮助你入睡你可以考虑咨询医生或睡眠专家寻求进一步的建议。从本地加载模型
在从 Hugging Face Hub 下载模型之前,需要先安装 Git LFS,然后运行:
git clone https://huggingface.co/THUDM/chatglm2-6b
如果 checkpoint 的下载速度较慢,可以只下载模型实现:
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm2-6b
然后,手动下载模型参数文件,并将文件替换到本地的 chatglm2-6b 目录下。
地址:https://cloud.tsinghua.edu.cn/d/674208019e314311ab5c/
模型下载到本地之后,将以上代码中的 THUDM / chatglm2-6b 替换为本地的 chatglm2-6b 文件夹的路径,即可从本地加载模型。
参考资料:
https://github.com/THUDM/ChatGLM2-6B
https://huggingface.co/THUDM/chatglm2-6b
本文来自微信公众号:新智元 (ID:AI_era)
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。