python-Langchain-Chatchat+ChatGLM2-6B在16G内存电脑上运行

2024-06-19 06:12

本文主要是介绍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内存电脑上运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1074223

相关文章

闲置电脑也能活出第二春?鲁大师AiNAS让你动动手指就能轻松部署

对于大多数人而言,在这个“数据爆炸”的时代或多或少都遇到过存储告急的情况,这使得“存储焦虑”不再是个别现象,而将会是随着软件的不断臃肿而越来越普遍的情况。从不少手机厂商都开始将存储上限提升至1TB可以见得,我们似乎正处在互联网信息飞速增长的阶段,对于存储的需求也将会不断扩大。对于苹果用户而言,这一问题愈发严峻,毕竟512GB和1TB版本的iPhone可不是人人都消费得起的,因此成熟的外置存储方案开

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

nudepy,一个有趣的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个有趣的 Python 库 - nudepy。 Github地址:https://github.com/hhatto/nude.py 在图像处理和计算机视觉应用中,检测图像中的不适当内容(例如裸露图像)是一个重要的任务。nudepy 是一个基于 Python 的库,专门用于检测图像中的不适当内容。该

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip