当前位置:   article > 正文

使用Langchain-chatchat搭建本地知识库_lanchain 需要什么显卡

lanchain 需要什么显卡

本机环境

可以使用物理机或者云环境,官方建议的配置如下:

  • ChatGLM2-6B & LLaMA-7B
    • 最低显存要求: 7GB
    • 推荐显卡: RTX 3060, RTX 2060
  • LLaMA-13B
    • 最低显存要求: 11GB
    • 推荐显卡: RTX 2060 12GB, RTX 3060 12GB, RTX 3080, RTX A2000
  • Qwen-14B-Chat
    • 最低显存要求: 13GB
    • 推荐显卡: RTX 3090
  • LLaMA-30B
    • 最低显存要求: 22GB
    • 推荐显卡: RTX A5000, RTX 3090, RTX 4090, RTX 6000, Tesla V100, RTX Tesla P40
  • LLaMA-65B
    • 最低显存要求: 40GB
    • 推荐显卡: A100, A40, A6000

下载langchain-chatglm

环境准备

python环境

# 首先,确信你的机器安装了 Python 3.8 - 3.10 版本
$ python --version
Python 3.10.12
  • 1
  • 2
  • 3

conda环境(建议使用conda虚拟环境)

# conda安装,不指定路径, 注意以下,都将/your_path/env_name替换为env_name
# 创建虚拟环境
$ conda create -n env_name python=3.10.12
# 进入虚拟环境
$ conda activate env_name # Activate the environment
# 退出虚拟环境(在环境中输入以下指令)
$ conda deactivate
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

以下环境安装可以不在conda环境中,不过建议在conda环境中使用

更新py库

$ pip3 install --upgrade pip
  • 1

下载langchain-ChatGLM

git clone https://github.com/imClumsyPanda/langchain-ChatGLM.git

# 进入Langchain-ChatGLM
cd Langchain-ChatGLM
  • 1
  • 2
  • 3
  • 4

GPU启动进行以下操作(CPU启动可忽略)

# 查看本机cuda版本号
$ nvidia-smi
Mon Nov 27 19:00:48 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.82.01    Driver Version: 470.82.01    CUDA Version: 11.8     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla V100-SXM2...  Off  | 00000000:00:08.0 Off |                    0 |
| N/A   27C    P0    19W / 300W |      0MiB / 16160MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

从pytorch中找到CUDA对应的版本

官网
https://pytorch.org/get-started/previous-versions/
以下内容都是从官网中查找(自己根据自己的CUDA版本以及操作系统型号匹配)

pip安装
# CUDA 11.8(根据自己查询出的结果匹配)
pip install torch==2.0.0 torchvision==0.15.1 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu118
  • 1
  • 2

修改requirements.txt文件

# 将以下三行有关torch注释掉
# torch>=2.0.1 # suggest version 2.1,#on win,  install the cuda version manually if you want use gpu
# torchvision #on win,  install the cuda version manually if you want use gpu
# torchaudio #on win,  install the cuda version manually if you want use gpu
  • 1
  • 2
  • 3
  • 4

以下操作为CPU/GPU启动通用

安装所有依赖

# 安装全部依赖  默认依赖包括基本运行环境(FAISS向量库)。如果要使用 milvus/pg_vector 等向量库,请将 requirements.txt 中相应依赖取消注释再安装。
$ pip install -r requirements.txt
  • 1
  • 2

下载大语言模型(LLM)以及Embedding模型

本人使用的是:

  • LLM:chatgml2-6b
  • Embedding:m3e-base
# 下载模型需要先安装Git LFS,然后运行
$ git lfs install
$ git clone https://huggingface.co/THUDM/chatglm2-6b
$ git clone https://huggingface.co/moka-ai/m3e-base
$ # 如果没条件访问huggingface可以使用国内的魔搭社区开源的镜像
$ git clone https://www.modelscope.cn/ZhipuAI/chatglm2-6b.git
$ git clone https://www.modelscope.cn/thomas/m3e-base.git
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

修改基础配置信息

$ #先执行以下命令,将配置文件备份
$ python copy_config_example.py
  • 1
  • 2

基础配置项 basic_config.py

该配置基负责记录日志的格式和储存路径,通常不需要修改。

模型配置项 model_config.py

# 要运行的 LLM 名称,可以包括本地模型和在线模型。
# 第一个将作为 API 和 WEBUI 的默认模型 可以改成自己需要的模型
LLM_MODELS = ["chatglm2-6b", "zhipu-api", "openai-api"]
# 选用的 Embedding 名称 可以改成自己需要的模型
EMBEDDING_MODEL = "m3e-base" # bge-large-zh
MODEL_PATH = {
    "embed_model": {
        #"m3e-base": "moka-ai/m3e-base",
        # 修改为本地的模型路径
        "m3e-base": "/home/models/m3e-base"
        # 省略其他内容
    },

    "llm_model": {
        #"chatglm2-6b": "THUDM/chatglm2-6b"
        # 修改为本地的模型路径
        "chatglm2-6b": "/home/models/chatglm2-6b"
       # 省略其他内容
    },
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

初始化知识库

如果您是第一次运行本项目,知识库尚未建立,或者之前使用的是低于最新master分支版本的框架,或者配置文件中的知识库类型、嵌入模型发生变化,或者之前的向量库没有开启 normalize_L2,需要以下命令初始化或重建知识库:

$ python init_database.py --recreate-vs
  • 1

一键启动

python startup.py -a
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/486889
推荐阅读
相关标签
  

闽ICP备14008679号