除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

2024-03-11 10:45:08 8点赞 30收藏 6评论

ChatGPT的风头正劲,从3.5版升级至4.0版,伴随着版本的不断更新,其智能水平也在不断提高。相信大家都很期待尝试这个强大的人工智能助手,然而在我国,由于各种原因,我们无法直接体验它。不过,国内的一些公司已经开发出了类似于ChatGPT的大型语言模型,比如百度推出的文心一言和清华大学推出的ChatGLM。

目前,ChatGLM已经发展到第四代,并且开源的最新版本是ChatGLM-6B,它是基于第三代模型的一款开源产品,可以在个人电脑上进行部署。我也已经在我的带有M1 Pro芯片的MacBookPro上成功部署了ChatGLM,现在我想分享一下整个部署过程,让更多人能够使用上这个强大的AI工具。

部署过程相对简单,但需要一定的编程基础。只要你的电脑已经安装了git和python,同时还需要满足一定的硬件要求,如至少拥有16GB以上的内存,这样才能保证ChatGLM的运行流畅。对于一些Air用户来说,他们也可以部署ChatGLM,但由于内存不足,他们会反映吐字速度特别慢。


当你看到这里,是否感觉到异样?其实开篇的文本是我写的初稿,通过ChatGLM帮我润色后的,下面是我的初稿,两者对比也能看出ChatGLM的能力。

“ChatGPT风头正盛,从3.5到4.0,随着版本迭代,越来越智能。相信大家都想试一试,而国内因为种种原因,国内很难直接体验。当然国内很多公司也提出了类似的大语言模型,例如百度的文心一言,而清华大学也推出了类似ChatGPT的大语言模型,叫ChatGLM。 文章发布时,已经推出到第四代。目前开源的最新的是ChatGLM-6B,是基于第三代模型的开源产品,支持在个人电脑上部署。我已经将ChatGLM部署到我的带M1 Pro芯片的MacBookPro上,也想分享整个部署过程,让更多的人用上ChatGLM。 部署流程 整个部署过程比较简单,但是需要有一定的编码基础,电脑已经安装好git和python。同时也对硬件有要求,必须有16GB以上内存,才能较为流畅得部署ChatGLM,也有Air用户部署ChatGLM,但是反馈吐字速度特别慢,因为内存不够用,只能疯狂占用交换空间。”

ChatGLM介绍

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

更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base 具有在 10B 以下的基础模型中最强的性能。

更完整的功能支持: ChatGLM3-6B 采用了全新设计的 Prompt 格式 ,除正常的多轮对话外。同时原生支持工具调用(Function Call)、代码执行(Code Interpreter)和 Agent 任务等复杂场景。

更全面的开源序列: 除了对话模型 ChatGLM3-6B 外,还开源了基础模型 ChatGLM3-6B-Base 、长文本对话模型 ChatGLM3-6B-32K。以上所有权重对学术研究完全开放 ,在填写 问卷 进行登记后亦允许免费商业使用。

部署流程

整个部署过程比较简单,但是需要有一定的编码基础,电脑已经安装好git和python。同时也对硬件有要求,必须有16GB以上内存,才能较为流畅得部署ChatGLM,也有Air用户部署ChatGLM,但是反馈吐字速度特别慢,因为内存不够用,只能疯狂占用交换空间。

这个链接是官网的部署文档,大家可以参考。

chatGLM介绍和部署文档

下载python源码

新建一个文件夹,名字随意,我创建的文件夹名字叫chatglm。在chatglm文件夹下面执行命令,下载源码:

下图是我下载完源码和大模型后最终的目录结构。

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

下载模型文件

除了源码,最关键的是大模型文件,官网提供了三种不同类型的大模型文件,分别是基础模型 ChatGLM3-6B-Base 、对话模型 ChatGLM3-6B 、长文本对话模型 ChatGLM3-6B-32K,这三种模型文件依次变大,对内存占用也依次变高,大家可以根据自己电脑内存情况等选择,我选择了ChatGLM3-6B模型,运行时内存占用13GB左右。

链接提供了三个下载地址,所有模型的最新更新都会在 Huggingface 率先发布。 ModelScope 和 WiseModel 由于没有与 Huggingface 同步,需要开发人员手动更新,可能会在 Huggingface 更新后一段时间内同步更新,所以Huggingface是首选,但是可能因为网络问题下载比较慢,我提供的下载链接是MdelScope的,下载速度比较快,ChatGLM3-6B模型的文件大小为17GB。

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

因为文件比较大,需要先安装gti-lfs,我是通过homebrew安装:

  • brew install git-lfs

在chatglm文件夹路径执行以下命令,下载大模型:

安装conda和pytorch

为了更好地管理python,还腰安装了conda和pytouch:

下载所需Python依赖

为了防止其他项目依赖影响,需要先创建虚拟环境,我创建的环境名为chatglm:

  • conda create -n chatglm

激活环境:

  • conda activate chatglm3

进入下载的源码所在ChatGLM3文件夹后,下载所需依赖:

  • pip3 install -r requirements.txt

启动网页版chatGLM

在源码文件夹,用vscode或其他工具打开web_demo_gradio.py文件。

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

然后将模型路径参数修改为你下载模型文件的地址,下图是我修好后的。

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

确保激活了chatglm虚拟环境后,启动网页版chatGLM:

  • python3 web_demo_gradio.py

此时,如果提示缺少某个文件,则通过”pip3 install xxx“命令安装,安装完毕再执行“python3 web_demo_gradio.py”,然后就跳转到网页界面,可以愉快得使用ChatGLM了。下图可以看到CPU和GPU占用都比较高。吐字速度也不错,从我输入约5s左右,ChatGLM就已经理解我说的话,并开始响应。

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

最后用ChatGLM给大家发一个龙年祝福:

除了ChatGPT还有清华开源的ChatGLM! 手把手教你在M1 pro版本 MacBook Pro上部署ChatGLM3-6B大语言模型

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
6评论

  • 精彩
  • 最新
  • 由于ChatGLM-6B的规模较小,目前已知其具有相当多的局限性,如事实性/数学逻辑错误,可能生成有害/有偏见内容,较弱的上下文能力,自我认知混乱,以及对英文指示生成与中文指示完全矛盾的内容。请大家在使用前了解这些问题,以免产生误解。

    校验提示文案

    提交
    是的,chatglm只能作为辅助工具,最终成品还是需要人工检查和审核

    校验提示文案

    提交
    收起所有回复
  • 真的很好玩,可惜没有macbook

    校验提示文案

    提交
  • 对内存的要求太高了

    校验提示文案

    提交
  • 学习了,真是个写作的好帮手!

    校验提示文案

    提交
  • 内存只有16G,看来就算玩也只能玩最基础的了。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
30
扫一下,分享更方便,购买更轻松