文章目录
- 1. 参考
- 2. ChatGLM3 介绍
- 3. 本地运行
- 3.1 硬件配置
- 3.2 下载ChatGLM3代码
- 3.3 下载需要加载的模型
- 3.4 运行大模型
- 3.4.1 ChatGLM3目录介绍
- 3.4.2 安装依赖
- 3.4.2 综合demo演示
- 3.4.3 启动
- 对话模式
- 工具模式
- 代码解释器
- 4. 总结
前面一章节有讲到 基于MacBook Pro M1芯片运行chatglm2-6b大模型,今天给大家带来更为震撼的ChatGLM3大模型在本地Mac上的使用。
1. 参考
- chatglm3-6b模型地址
- ChatGLM3介绍
- conda安装
2. ChatGLM3 介绍
ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的对话预训练模型。ChatGLM3-6B 是 ChatGLM3 系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:
- 更强大的基础模型。
- 更完整的功能支持。
- 更全面的开源序列。
详细介绍参考官方README介绍。
3. 本地运行
3.1 硬件配置
- 芯片:Apple M1 Pro
- 内存:32 GB
3.2 下载ChatGLM3代码
cd /Users/joseph.wang/llm
git clone https://github.com/THUDM/ChatGLM3.git
3.3 下载需要加载的模型
此步骤下载模型需要科学上网,同时需要耐心,因为下载的时间会比较长。
这里我使用的是 ChatGLM3-6B 的模型,模型文件会很大
模型列表
cd /Users/joseph.wang/llm/ChatGLM-6B
mkdir model
cd model
git lfs install
git clone https://huggingface.co/THUDM/chatglm3-6b
3.4 运行大模型
3.4.1 ChatGLM3目录介绍
- basic_demo: 基础demo(cli_demo和web_demo)
- composite_demo : 综合demo(聊天、工具和代码解释器)
- finetune_demo:基础模型微调
- langchain_demo:langchain demo
- model:这个事自己创建的,将模型文件放在此目录下
- openai_api_demo: openapi的api接口demo
- resources: 用到的一些文件
- tensorrt_llm_demo:tensorTR-llm demo
- tools_using_demo:工具调用
3.4.2 安装依赖
cd /Users/joseph.wang/llm/ChatGLM3
conda activate ChatGLM3 #切换python环境
pip install -r requirements.txt
- 为了保证 torch 的版本正确,请严格按照 官方文档 的说明安装。
此外,使用 Code Interpreter 还需要安装 Jupyter 内核:
ipython kernel install --name chatglm3-demo --user
3.4.2 综合demo演示
详见:综合demo
cd /Users/joseph.wang/llm/ChatGLM3/
cd composite_demo
官方说直接运行main.py,但是这个main.py会调用demo_chat.py、demo_ci.py、demo_tool.py三个模块,而这三个模块调用的模型文件其实是通过client.py这个模块来实现的,里面是具体定义了模型的路径。
编辑 client.py文件,修改模型的
...
...
# 修改为通过本地加载大模型,这里改本地下载后大模型的路径即可。
MODEL_PATH = os.environ.get('MODEL_PATH', '/Users/joseph.wang/llm/ChatGLM3/model/chatglm3-6b')
...
...
3.4.3 启动
cd /Users/joseph.wang/llm/ChatGLM3/composite_demo
streamlit run main.py
内存消耗
对话模式
工具模式
查天气 - 失败
代码解释器
画三角形 - 失败
画爱心 - 失败
画爱心 - 成功
4. 总结
整体用下来,感觉还是很震撼的,对话模式确实准确率要高不少;工具模式需要提交通过代码来实现;代码解释器的准确率一般般。但是这个也是仅限于我的mac的资源配置下的使用,相信在高配置的显卡加持线其综合表现会更强。