ChatGLM2-6B

约 450 字大约 2 分钟

公司想训练自己的模型,服务于某个领域的,算是垂直领域的LLM专属模型,为产品赋能。

如果自己从头搞一套LLM,这个项目投入的资就太大了。所以站在巨人的肩膀上,选择了ChatGLM-6B

作为运维岗,或许我不需要深入了解这里面的算法,但需要简单的搞清楚,它的研发和部署逻辑。所以部署了下,做个记录

ChatGLM-6B

模型的介绍,跳转官网查看open in new window

相关部署,里面也都有

声明

此文档,仅用于记录自己在MacOS下的部署,如有需要, 建议看官方文档为主。所有安装部署过程,官方README内都有

环境的安装

下载项目

git clone https://github.com/THUDM/ChatGLM-6B

环境初始化

创建隔离环境

mkdir ChatGLM-6B
virtualenv -p python3.9.16  venv

安装依赖

cd ChatGLM-6B
pip install -r requirements.txt

模型下载

将下载后的模型存放在某个目录下,使用时,指定此目录即可

服务启动

macos

安装 PyTorch-Nightlyopen in new window

pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu

修改启动文件

MODEL_PATH = "/xxxxx/offline-model/chatglm2-6b"
model = AutoModel.from_pretrained(MODEL_PATH, trust_remote_code=True).to('mps')

python web_demo.py 启动服务, 其他启动方式均需要调整与加载的模型

模型微调

P-tuiningopen in new window

目前看来,需要注意的有:

  1. ChatGLM2-6B离线模型的管理和维护
  2. 模型微调-数据集的管理和维护
  3. 模型推理-机器资源的运维
  4. 模型推理-训练后模型管理与维护

借此机会,之后可能需要了解下 MLOps