最近业务上需要用到大模型相关的知识,所以准备简单的搭建一个环境,详细的细节后面慢慢研究,现记录下搭建过程。至于为什么选择ChatGLM-6B,主要原因是它支持中英双语,同时支持离线部署,可以方便的构建本地化的问答知识库。
由于ChatGLM-6B对python版本有一定要求,目前要求3.7+版本,为了减少python版本冲突的影响,可以通过使用conda来管理python环境。
安装Anaconda3
1、下载地址:https://www.anaconda.com/download/,选择自己机器对应的版本下载,我这里以Linux环境
2、安装:执行脚本 bash Anaconda3-2022.5-Linux-x86_64.sh
创建python虚拟环境
1、创建虚拟环境:conda create --name xxx_name pyhton=3.8 # xxx_name 为创建的虚拟环境的名称 通过python指定相应的版本,这里需要>=3.7即可
2、激活虚拟环境:source activate xxx_name
部署ChatGLM-6B
1、下载ChatGLM-6B代码
git clone https://github.com/THUDM/ChatGLM-6B.git
进入到ChatGLM-6B中,执行相应的安装命令
pip install gradio # 用于启动图形化界面
pip install -r requrement.txt
2、下载模型代码(ChatGLM-6B的模型代码在huggingface上托管:https://huggingface.co/THUDM/chatglm-6b)
下载模型代码不是必须的,可以启动后在线下载,不过受限于网络速度,这里提前下载好放在本地,并修改代码指向本地模型。
git clone https://huggingface.co/THUDM/chatglm-6b
3、修改web_demo.py的模型应用路径如下图:
4、启动
python web_demo.py
实现效果
通过启动完成后的链接访问,如下:
参数解释:
Maximum length:限制输入序列的最大长度
Top P:指在生成文本等任务中,选择可能性最高的前P个词的概率累加和(值越高,准确性更高,但是多样性可能降低)
Temperature:增加或减少模型对不同类别的置信度(值越小,会使得模型更加自信)
常见问题/报错:
1、RuntimeError
解决办法:
a、检查下载的模型文件是否完整(8个文件每个都在1G以上,痛殴对比文件大小可以看出来是否正确)
b、检查模型文件中的其他文件是否和huggingface仓库文件一致,如果不一致可以手动下载
2、CUDA OOM问题
解决办法:
标签:6B,python,模型,虚拟环境,ChatGLM,下载,搭建 From: https://www.cnblogs.com/funnyboy0128/p/17633461.html