一、环境需求
本次demo是在win 11上进行搭建,模型选择为ChatGLM3-6B,python 版本为3.11,java 版本为jdk 17,node 版本为 node18.x。由于本人不擅长python,所以用java进行项目开发。
项目思路是用ChatGLM3-6B开源大模型进行本地搭建,以api_server方式启动。此时搭配开源的ui框架就已经可以实现一个基本的GLM模型。进行模型微调和定制开发则采用spring ai + langchain4j。
注意想在本地运行chatglm3-6b模型需要12G显存,否则以cpu方式运行程序会非常慢,内存要求也会要32g。
二、环境搭建
conda安装直接跳过,直接进入正题
1、安装pytorch环境
1.1官网 PyTorch
1.2 pip安装
注意安装时选择对应自己cuda版本的torch版本
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
2、下载ChatGLM3项目
2.1仓库地址GitHub - THUDM/ChatGLM3: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型
3、下载chatglm3-6b模型
3.1模型地址 https://huggingface.co/THUDM/chatglm3-6b
3.2模型下载命令
git clone https://huggingface.co/THUDM/chatglm3-6b
4、下载bge-large-zh-v1.5模型
4.1模型地址https://huggingface.co/BAAI/bge-large-zh-v1.5
4.2模型下载命令
git clone https://huggingface.co/BAAI/bge-large-zh-v1.5
上面这两个模型下载需要科学上网,后面补充网盘资源
4.3把下载好的两个模型文件夹复制到ChatGLM3项目根目录下,复制好后文件目录如下
4.4修改openai_api_demo/api_server.py文件中设置模型路径的位置为以下路径
# set LLM path
MODEL_PATH = os.environ.get('MODEL_PATH', 'chatglm3-6b')
TOKENIZER_PATH = os.environ.get("TOKENIZER_PATH", MODEL_PATH)
# set Embedding Model path
EMBEDDING_PATH = os.environ.get('EMBEDDING_PATH', 'bge-large-zh-v1.5')
4