当前位置: 首页 > article >正文

mac M系列芯片安装chatGLM3-6b模型

1 环境安装

1.1 mac安装conda.

下载miniconda,并安装

curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh
sh Miniconda3-latest-MacOSX-arm64.sh

1.2 创建虚拟环境并激活

创建名为chatglm3的虚拟环境,python版本为3.10.2
激活环境(后续要在这个环境安装pytorch及依赖包)

conda create -n chatglm3 python==3.10.2
conda activate chatglm3

1.3 安装pytorch-nightly

conda install pytorch torchvision torchaudio -c pytorch-nightly

1.4 下载chatglm3 代码

1 下载地址,git地址:https://github.com/THUDM/ChatGLM3
2 进入代码中,安装依赖包

git clone https://github.com/THUDM/ChatGLM3
cd ChatGLM3-main
pip install -r requirement.txt

2 模型下载

推荐使用方式3下载,可以下载任意开源大模型,且速度飞快,没有墙限制

方式1: 直接在huggingface官网下载(国内比较难)

https://huggingface.co/dwdcth/chatglm3-6b-int4

方式2 使用国内镜像

https://hf-mirror.com/dwdcth/chatglm3-6b-int4

方式3

  • 使用modelscope下载
    https://modelscope.cn/models/ZhipuAI/chatglm3-6b/summary

  • 安装魔塔依赖
    pip install modelscope -U

  • 代码中的路径即为要下载的模型,可以自行选择模型下载(mac 16G推荐下载int4)
    model_dir = snapshot_download(‘ZhipuAI/chatglm3-6b’, revision=‘v1.0.1’)

  • 模型默认保存路径为家目录下, ~/.cache/modelscope/hub/ZhipuAI/ChatGLM3-6B/

1 安装依赖
pip install modelscope -U

2 使用代码下载
from modelscope import snapshot_download
model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision = "v1.0.0")

3 模型使用

1 修改web_demo2.py中的device为"mps"
DEVICE = ‘mps’
如果测试cli_demo.py文件,修改如下代码,模型需要时float()类型的,不然会报错。(不过好像还没有用到mps,待测试)
DEVICE = ‘mps’
model = AutoModel.from_pretrained(TOKENIZER_PATH, trust_remote_code=True).float()

# web_demo2.py 运行
streamlit run basic_demo/web_demo2.py 

4 模型web展示

streamlit run basic_demo/web_demo2.py

在这里插入图片描述


http://www.kler.cn/news/161076.html

相关文章:

  • js vue 输入正确手机号/邮箱后,激活“发送验证码”按钮
  • 详解线段树
  • C语言——指针的运算
  • LLM(五)| Gemini:谷歌发布碾压GPT-4最强原生多模态,语言理解能力首次超过人类
  • Java API接口强势对接:构建高效稳定的系统集成方案
  • java-HashMap、TreeMap、LinkedHashMap、ArrayList、LinkedList使用笔记
  • 什么是https 加密协议?https证书安装部署
  • 微信小程序复制功能
  • 如何通过内网穿透实现无公网IP也能远程访问内网的宝塔面板
  • C# WPF上位机开发(抽奖软件)
  • 【云原生系列】Kubernetes知识点
  • Python-字典详解
  • 一个简单的参数帮助框架,c实现
  • Android 架构实战MVI进阶
  • Vue3的watch函数中,第三个参数配置对象详细分析
  • uniapp横向滚动示例
  • JavaSE语法之五:数组的定义与使用(超详解!!!)
  • Android12之MediaCodec硬编解码调试手段(四十九)
  • python基于ModBusTCP服务端的业务实现特定的client
  • 反钓鱼防盗号,共筑校园安全防线!Coremail出席CERNET学术年会
  • 案例054:基于微信的追星小程序
  • 代码随想录算法训练营第四十二天 _ 动态规划_01背包问题、416.分割等和子集。
  • 医院有HIS系统,为什么还要开发预约挂号小程序?数据如何互通?
  • 前端笔记(三)CSS 盒子模型
  • ★538. 把二叉搜索树转换为累加树
  • PHP使用HTTP代码示例模板
  • gpt3、gpt2与gpt1区别
  • 深入理解 Java 虚拟机(JVM)从入门到精通
  • 使用GPT-4V解决Pycharm设置问题
  • 西工大计算机学院计算机系统基础实验一(函数编写11~14)