智谱ChatGLM3本地私有化部署(Linux)

简介: 智谱ChatGLM3本地私有化部署(Linux)


智谱ChatGLM3本地私有化部署

1环境配置和检查

要进行智谱ChatGLM3本地私有化部署,你需要进行以下环境配置和检查:


  1. 硬件要求: 确保你的服务器或计算机满足智谱ChatGLM3的硬件要求,包括处理器、内存和存储等方面。


  1. 操作系统: 智谱ChatGLM3支持多种操作系统,如Linux、Windows和macOS等。选择适合你的操作系统,并确保它符合智谱ChatGLM3的要求。


  1. Python环境: 安装Python并配置相关环境。智谱ChatGLM3通常需要Python 3.10或更高版本。


  1. GPU支持: 如果你计划使用GPU进行模型训练和推理,你需要安装相应的GPU驱动和CUDA工具包,并确保你的GPU与智谱ChatGLM3兼容。


  1. 依赖库安装: 智谱ChatGLM3依赖于一些Python库,如TensorFlow、NumPy等。使用pip或conda等包管理工具,安装所需的依赖库。


  1. 模型下载: 下载智谱ChatGLM3的模型文件,这些文件包含了预训练好的模型参数和配置信息。


  1. 配置文件: 根据你的需求,修改智谱ChatGLM3的配置文件,包括模型路径、输入输出设置等。


  1. 测试和验证: 确保你的环境配置正确无误后,进行简单的测试和验证,确保智谱ChatGLM3可以正常运行。


请注意,智谱ChatGLM3的部署和配置可能会因个人需求和环境而有所差异。建议参考智谱ChatGLM3的官方文档或开发者指南,获取详细的部署步骤和配置说明。


1.1操作系统

ChatGLM3-6B理论上可以在任何主流的操作系统中运行。ChatGLM开发组已经为主流操作系统做了一定的适配。

但是,我们更推荐开发者在 Linux环境下运行我们的代码,以下说明也主要针对Linux系统。

1.2硬件环境

最低要求:

为了能够流畅运行 Int4 版本的 ChatGLM3-6B,我们在这里给出了最低的配置要求:

内存:>= 8GB

显存: >= 5GB(1060 6GB,2060 6GB)

为了能够流畅运行 FP16 版本的,ChatGLM3-6B,我们在这里给出了最低的配置要求:


内存:>= 16GB


显存: >= 13GB(4080 16GB)


Mac开发者无需关注GPU的限制。对于搭载了 Apple Silicon 或者 AMD GPU 的 Mac,可以使用 MPS 后端来在 GPU 上运行 ChatGLM3-6B。需要参考 Apple 的 官方说明 安装 PyTorch-Nightly(正确的版本号应该是2.x.x.dev2023xxxx,而不是 2.x.x)。


如果使用CPU加载,可以忽略显存的要求,但是速度非常慢

1.3软件环境

1.3.1Python环境&检查环境命令

请开发者按照仓库中的requirements.txt来安装对应的依赖,并需要注意:

python 版本推荐3.10.12

transformers 库版本推荐为 4.30.2

torch 推荐使用 2.0 及以上的版本,以获得最佳的推理性能

例如检查python环境:

  1. Python:python3.10 --version 或者 python3.10 -V

  1. Pip:pip3.10 --version 或者pip3.10 -V

  1. python与pip版本一致:python3.10 -m pip --version

正确如图:

错误如图:

2快速使用(推理部署)

2.1源码安装与运行

上述两种方案的目的是让更多的用户能够体验到我们的模型,但无法进行二次开发,如果您准备深度使用我们的模型,我们建议按照以下方式安装。


2.2克隆代码和模型

下载源码

模型基础运行代码已经上传到 github 和 SwanHub 两个平台,两个平台的信息同步。开发者通过以下方式下载模型代码。

从 github 下载源码

git clone https://github.com/THUDM/ChatGLM3.git

从 SwanHub 下载源码

git clone https://swanhub.co/ZhipuAI/ChatGLM3.git

开发者可以通过以下方式下载模型文件


下载模型

下载模型文件前请先确保`git lfs`命令已安装,安装教程请参考这里。


模型文件已上传至 Huggingface, Modelsope , SwanHub 三个平台,用户可以快速安装模型。


若使用 Huggingface 下载模型


(1)windows安装命令:git lfs install


(2)Linux安装命令:


为您的系统配置 packagecloud 存储库后,您可以安装 Git LFS:

apt/deb:sudo apt-get install git-lfs

百胜/转数:sudo yum install git-lfs

查看版本:git lfs version

若使用 Modelscope 下载模型

git lfs install
 
git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git

若使用 SwanHub 下载模型

git lfs install
 
git clone https://swanhub.co/ZhipuAI/chatglm3-6b.git

2.3检查文件的完整性

  1. 用户在下载完模型后请检查每个文件的完整性,以下是模型文件的sha256校验码。

# sha256 checksums for chatglm3-6b

4d5567466e89625dbd10e51c69a02982f233a10108cf232a379defdbb065ae0b pytorch_model-00001-of-00007.bin


4ad41534016ac4a2431fa2d4b08efbe28f963744135ec52b2ea13cc86730fa2a pytorch_model-00002-of-00007.bin


a2be9b17c332a8345e787953d4879caee4747ad4b263f013aa3c4654c94c3d24 pytorch_model-00003-of-00007.bin


b5526891e1b4c8edd2e3688df5156aa107e2140fe7e3f9d0d54f9cbe3b6ee3b5 pytorch_model-00004-of-00007.bin


84bb18a476f74beaf4d941733bd1c475791eba799b228f78d0165de989cb7a40 pytorch_model-00005-of-00007.bin


1181875a2dc30fba968d72d0fc4628b9a60d3866bf680eb14b9822b5b504830f pytorch_model-00006-of-00007.bin


1271b638dc0a88206d1c7a51bcaa862410eb56f3e59fd0068a96e96cb5e3f4f0 pytorch_model-00007-of-00007.bin


e7dc4c393423b76e4373e5157ddc34803a0189ba96b21ddbb40269d31468a6f2 tokenizer.model


# sha256 checksums for chatglm3-6b-32k


39aeddd81596b2d66d657687a7328ebc7f8850e8ea83fa74080da59f7d2f7afc pytorch_model-00001-of-00007.bin


2525475ea2d483ecc15a15ad4e016ee0155e628ac66f15cd54daa6c811193e92 pytorch_model-00002-of-00007.bin


faa1d884168a125af5105c4ee4c59fdac79f847b35a7389e0122a562995d34db pytorch_model-00003-of-00007.bin


66492c02ed13189202c7e46a121e308cf0ebbcf8141ecf3d551141aecfac7120 pytorch_model-00004-of-00007.bin


870bb2bb4a289b8ab37cce88f56e93381ff428063b3d0065994a3dd2e830cb32 pytorch_model-00005-of-00007.bin


a5f39ca17ba89e47e484d3b20d4ff78f4fb9b1b24bd3dfb314eff91ff6e37230 pytorch_model-00006-of-00007.bin


7c8a8f3e881202ac3a9ab2638ce30147f67d4bd799624c24af66406a6ba22db2 pytorch_model-00007-of-00007.bin


e7dc4c393423b76e4373e5157ddc34803a0189ba96b21ddbb40269d31468a6f2 tokenizer.model


# sha256 checksums for chatglm3-6b-base


b6a6388dae55b598efe76c704e7f017bd84e6f6213466b7686a8f8326f78ab05 pytorch_model-00001-of-00007.bin


2f96bef324acb5c3fe06b7a80f84272fe064d0327cbf14eddfae7af0d665a6ac pytorch_model-00002-of-00007.bin


2400101255213250d9df716f778b7d2325f2fa4a8acaedee788338fceee5b27e pytorch_model-00003-of-00007.bin


472567c1b0e448a19171fbb5b3dab5670426d0a5dfdfd2c3a87a60bb1f96037d pytorch_model-00004-of-00007.bin


ef2aea78fa386168958e5ba42ecf09cbb567ed3e77ce2be990d556b84081e2b9 pytorch_model-00005-of-00007.bin


35191adf21a1ab632c2b175fcbb6c27601150026cb1ed5d602938d825954526f pytorch_model-00006-of-00007.bin


b7cdaa9b8ed183284905c49d19bf42360037fdf2f95acb3093039d3c3a459261 pytorch_model-00007-of-00007.bin


e7dc4c393423b76e4373e5157ddc34803a0189ba96b21ddbb40269d31468a6f2 tokenizer.model

2.4安装依赖

pip 安装基本依赖
1. cd ChatGLM3
2. 
3. pip install -r requirements.txt

如果你担心你的配置不满足最低配置,你可以访问环境配置和检查获取更多信息。

Linux 环境安装cuda

问题描述:显卡的驱动环境没有

问题分析:购买GPU实例及安装驱动_GPU云服务器(EGS)-阿里云帮助中心

解决方案:升级gpu版本(已安装就卸载掉重新安装)

安装方法:

安装Tesla驱动(Linux)_GPU云服务器(EGS)-阿里云帮助中心

2.5运行openai_api_demo目录

启动API接口

(1)激活环境:conda activate xnenv


(2)进入目录:cd /home/chatglm/ChatGLM3/openai_api_demo


(3)启动应用:nohup python api_server.py > openai_api_demo.out &

主要有4个接口能用:


接口1-检查服务健康状态(get):http://127.0.0.1:8000/health


接口2-列出可用模型列表(get):http://127.0.0.1:8000/v1/models/


接口3-处理聊天完整请求(post):http://127.0.0.1:8000/v1/chat/completions


接口4-处理文本输入列表嵌入请求(get):http://192.168.0.129:8000/v1/chat/embeddings


总结:上面只是个人搭建的过程,更多请查看官方文档( )

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
1月前
|
Ubuntu Linux 测试技术
Linux系统之部署轻量级Markdown文本编辑器
【10月更文挑战第6天】Linux系统之部署轻量级Markdown文本编辑器
85 1
Linux系统之部署轻量级Markdown文本编辑器
|
3月前
|
资源调度 JavaScript Linux
【Azure 应用服务】本地Node.js部署上云(Azure App Service for Linux)遇到的三个问题解决之道
【Azure 应用服务】本地Node.js部署上云(Azure App Service for Linux)遇到的三个问题解决之道
|
1月前
|
搜索推荐 Linux 测试技术
Linux系统之部署homer静态主页
【10月更文挑战第11天】Linux系统之部署homer静态主页
78 41
Linux系统之部署homer静态主页
|
23天前
|
运维 监控 Linux
Linux系统之部署Linux管理面板1Panel
【10月更文挑战第20天】Linux系统之部署Linux管理面板1Panel
72 3
Linux系统之部署Linux管理面板1Panel
|
1月前
|
Web App开发 资源调度 网络协议
Linux系统之部署IP工具箱MyIP
【10月更文挑战第5天】使用Docker部署Radicale日历和联系人应用Linux系统之部署IP工具箱MyIP
82 1
Linux系统之部署IP工具箱MyIP
|
1月前
|
Linux Shell 异构计算
在linux上部署yolov5和安装miniconda3
这篇文章介绍了在Linux系统上部署YOLOv5并安装Miniconda3的步骤,包括使用wget命令下载Miniconda安装脚本、安装Miniconda、初始化Conda环境、添加镜像源等。
76 3
在linux上部署yolov5和安装miniconda3
|
20天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
48 2
|
21天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
31 3
|
22天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
38 2
|
1月前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
424 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!