本文主要是介绍python-Langchain-Chatchat+ChatGLM2-6B在16G内存电脑上运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
python-Langchain-Chatchat+ChatGLM2-6B在16G内存电脑上运行
- 代码链接
- ChatGLM
- Langchain-Chatchat
- 环境准备
- 模型下载
- Langchain-Chatchat配置
- configs中example文件修改
- configs/model_config.py修改
- 修改 server配置
- 知识库初始化
- 参考链接
代码链接
ChatGLM
https://github.com/likeqiang1001/ChatGLM-6B
Langchain-Chatchat
https://github.com/likeqiang1001/Langchain-Chatchat
环境准备
使用 anaconda 创建python环境
conda create -n langchain python=3.8
激活环境
conda activate langchain
更新py库
pip3 install --upgrade pip
拉取langchain-chatchat代码仓库
git clone --recursive https://github.com/chatchat-space/Langchain-Chatchat.git
拉取完毕后,进入仓库目录下
cd Langchain-Chatchat
安装全部依赖
pip install -r requirements.txt
pip install -r requirements_api.txt
pip install -r requirements_webui.txt
模型下载
ChatGLM
https://hf-mirror.com/THUDM/chatglm2-6b-int4/tree/main
m3e-base
https://hf-mirror.com/moka-ai/m3e-base/tree/main/1_Pooling
需要注意的是m3e-base中的模型下载要包含这个目录1_Pooling的内容
Langchain-Chatchat配置
configs中example文件修改
进到chatchat的根目录,然后到config目录中
D:\jpdir\localKnow\Langchain-Chatchat-master\Langchain-Chatchat-master\configs
将python结尾的文件全部改为py结尾
configs/model_config.py修改
修改如下四处
1
# 选用的 Embedding 名称
EMBEDDING_MODEL = "m3e-base"2
# 要运行的 LLM 名称,可以包括本地模型和在线模型。列表中本地模型将在启动项目时全部加载。
# 列表中第一个模型将作为 API 和 WEBUI 的默认模型。
# 在这里,我们使用目前主流的两个离线模型,其中,chatglm3-6b 为默认加载模型。
# 如果你的显存不足,可使用 Qwen-1_8B-Chat, 该模型 FP16 仅需 3.8G显存。
LLM_MODELS = ["chatglm2-6b"]3 MODEL_PATH 的embed_model和llm_model
MODEL_PATH = {"embed_model": {"ernie-tiny": "nghuyong/ernie-3.0-nano-zh","ernie-base": "nghuyong/ernie-3.0-base-zh","text2vec-base": "shibing624/text2vec-base-chinese","text2vec": "GanymedeNil/text2vec-large-chinese","text2vec-paraphrase": "shibing624/text2vec-base-chinese-paraphrase","text2vec-sentence": "shibing624/text2vec-base-chinese-sentence","text2vec-multilingual": "shibing624/text2vec-base-multilingual","text2vec-bge-large-chinese": "shibing624/text2vec-bge-large-chinese","m3e-small": "moka-ai/m3e-small","m3e-base": "D:\\jpdir\\localKnow\\models\\m3e-base\\m3e-base",# 这里修改3"m3e-large": "moka-ai/m3e-large","bge-small-zh": "BAAI/bge-small-zh","bge-base-zh": "BAAI/bge-base-zh","bge-large-zh": "BAAI/bge-large-zh","bge-large-zh-noinstruct": "BAAI/bge-large-zh-noinstruct","bge-base-zh-v1.5": "BAAI/bge-base-zh-v1.5","bge-large-zh-v1.5": "BAAI/bge-large-zh-v1.5","bge-m3": "BAAI/bge-m3","piccolo-base-zh": "sensenova/piccolo-base-zh","piccolo-large-zh": "sensenova/piccolo-large-zh","nlp_gte_sentence-embedding_chinese-large": "damo/nlp_gte_sentence-embedding_chinese-large","text-embedding-ada-002": "your OPENAI_API_KEY",},"llm_model": {"chatglm2-6b": "D:\\jpdir\\localKnow\\models\\chatglm2-6b-int4\\chatglm2-6b-int4",# 这里修改4"chatglm2-6b-32k": "THUDM/chatglm2-6b-32k","chatglm3-6b": "THUDM/chatglm3-6b","chatglm3-6b-32k": "THUDM/chatglm3-6b-32k","Orion-14B-Chat": "OrionStarAI/Orion-14B-Chat","Orion-14B-Chat-
这篇关于python-Langchain-Chatchat+ChatGLM2-6B在16G内存电脑上运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!