【大模型开发】DeepSeek+langchain-ChatChat 本地(论文)知识库问答系统(ollama部署)
文章目录
引言
大模型的知识库是有限的,对于未公开的语料库,在问大模型这一类问题的时候,无法给出正确回答。在企业内部对财务报表进行分析的时候,希望通过一种方式补充这部分的内容------通过RAG技术,在大模型外面挂着一个知识库。在问问题的时候,先把提示词发到向量库,找到与这个问题相关的知识库。
LangChain-ChatChat 是基于 LangChain 框架构建的开源项目,实现了 RAG 与 Agent 能力的深度融合,支持全流程离线私有部署。其核心特点包括:支持主流开源大语言模型(如 ChatGLM3、Qwen2 等)、嵌入模型(如 m3e、bge 等)及向量数据库(如 FAISS)的全链路本地化适配,可在 CPU/GPU 双环境运行,低配置设备能通过量化压缩轻量化部署;具备 RAG 引擎与 Agent 执行器双引擎,前者支持多格式文档处理,解决大模型 “知识过时” 与 “幻觉” 问题,后者内置 10 余种可插拔工具,能通过 LangGraph 实现复杂任务编排;提供 Streamlit Web UI 与 FastAPI 接口,满足非技术人员直接使用和开发者二次开发集成的需求。
Langchain-Chatchat 项目地址:项目地址
项目结构

仓库中主要文件夹有以下几个部分:
- libs/chatchat-server
该目录包含项目的服务端代码,是整个应用的核心后端实现部分。其中涵盖了与模型交互、知识库处理、API 接口(如文件聊天 file_chat 等功能)相关的逻辑,负责处理前端请求、模型调用、数据处理等核心业务流程。
提供与前端交互的 API 接口(如知识库文件管理、模型调用等)。
处理知识库的文件加载、文本分割、向量存储等核心逻辑。
实现数据库交互(如 FileDocModel 等 ORM 模型),管理文件与向量库的关联关系。
服务端运行流程简述
- 通过 startup.py 中的 start_main_server 启动 API 服务(基于 FastAPI)和 WebUI 服务。
- API 服务通过 api_server/server_app.py 注册路由,接收前端请求(如聊天、知识库操作)。
- 核心业务逻辑(如文件聊天)在 chat/file_chat.py 中处理:检索相关文档 → 构造提示词 → 调用 LLM 生成回答 → 流式返回结果。
- 知识库相关操作通过 knowledge_base/ 模块处理文件解析、分割和向量存储,支撑 RAG 功能。
- frontend
存放项目的前端代码,负责用户界面的展示与交互。包含了聊天界面、模型配置、工具选择等前端页面的实现,以及与后端服务通信的相关逻辑(如 src/services/chat.ts 处理聊天请求),同时还涉及前端状态管理、插件集成等功能。
基于 Next.js 框架构建,采用 TypeScript 开发,整合了 antd、lobe-ui 等组件库,以及 zustand 状态管理、swr 请求库等工具,负责实现项目的用户界面和交互逻辑。
- docs
用于存储项目的文档资源,包括项目概述、实现原理图示(如 langchain+chatglm.png 等)、开发指南(contributing 目录下的文档)等,帮助开发者和用户了解项目的使用方法、架构设计及贡献方式。
已支持的模型部署框架与模型
本项目中已经支持市面上主流的如 GLM-4-Chat 与 Qwen2-Instruct 等新近开源大语言模型和 Embedding 模型,这些模型需要用户自行启动模型部署框架后,通过修改配置信息接入项目,本项目已支持的本地模型部署框架如下:

GPU 运行本地 FP16 模型硬件配置指南
-
7B 模型(ChatGLM3-6B、LLaMA-7B-Chat 等)
显存要求:最低 14GB(含模型基础占用 12-13GB+Embedding 模型 1-2GB),推荐预留 2-3GB 应对历史对话缓存,总冗余显存建议 16GB 以上。
推荐显卡:RTX 4080(16GB GDDR6X),兼顾性价比与性能,支持 CUDA 12 + 加速,单卡即可实现稳定连续对话,生成速度约 5-10 token/s。
配套内存:需大于显存,推荐 16GB 以上(如 DDR4 3200MHz 双通道),避免数据在内存与显存间频繁交换导致卡顿。 -
14B 模型(Qwen-14B-Chat 等)
显存要求:最低 30GB(模型基础占用 28GB+Embedding 与缓存 2-3GB),实际运行建议预留 5GB 冗余,总显存需求 35GB 以上。
推荐显卡:NVIDIA V100(32GB HBM2),专业数据中心显卡,显存带宽高(900GB/s),支持长序列对话,单卡可满足需求,生成速度约 3-6 token/s。
配套内存:推荐 32GB 以上(如 DDR4 3200MHz RDIMM),适配显卡数据吞吐,避免预处理阶段(如 tokenize)成为性能瓶颈。 -
34B 模型(Yi-34B-Chat 等)
显存要求:最低 69GB(模型基础占用 68GB+Embedding 与缓存 1-2GB),考虑复杂对话场景,建议预留 10GB 冗余,总显存需求 80GB 以上。
推荐显卡:NVIDIA A100(80GB HBM2),支持 Tensor Core 加速,显存容量充足,单卡可稳定运行,生成速度约 2-4 token/s;若需提升速度,可搭配 NVLink 桥接多卡。
配套内存:推荐 64GB 以上(如 DDR4 3200MHz LRDIMM),适配大模型参数加载与中间数据缓存,确保批量推理时内存不溢出。 -
72B 模型(Qwen-72B-Chat 等)
显存要求:最低 145GB(模型基础占用 144GB+Embedding 与缓存 1-2GB),多卡拆分时需额外预留 5-10GB 用于卡间数据通信,总显存需求 150GB 以上。
推荐显卡:多卡 NVIDIA A100(40GB×4 及以上,支持 NVLink 互联),或单卡 NVIDIA H100(80GB HBM3,需 2 张及以上);多卡布局需确保显卡间带宽充足,避免拆分后通信延迟影响对话流畅度。
配套内存:推荐 128GB 以上(如 DDR5 4800MHz 多通道),适配多卡并行数据预处理,同时满足系统与框架运行需求。
显存估算公式
FP16 精度:显存占用 (GB) ≈ 模型量级(B)× 2,例如 7B 模型≈14GB、34B 模型≈68GB,该公式为基础估算,实际需叠加 1-5GB 额外占用(Embedding + 缓存)。
Int4 量化精度:显存占用 (GB) ≈ 模型量级(B)× 0.75,适合显存有限场景(如 7B 模型 Int4 仅需 5-6GB 显存),但会损失部分推理精度,生成内容细节可能减少。
环境搭建
深度学习环境搭建
本文使用环境:
Python版本:3.10
Cuda版本:>=11.7(非必须)
Ubuntu24
langchain-chatchat 环境搭建
#创建虚拟环境:
conda create -n langchain-chat python=3.10
#进入环境:
conda activate langchain-chat
#在镜像中下载chatchat源码:
pip install langchain-chatchat -U -i https://pypi.tuna.tsinghua.edu.cn/simple
ollama 模型部署
在Ubuntu中使用命令行安装ollama速度会比较远,建议在github中下载源码库
下载ollama: ollama 的 github地址
releases中选择:(第四个压缩包)

创建文件夹:(将ollama压缩包放到了这个路径下)
mkdir -p /data/program
进入路径:
cd /data/program/
解压ollama到 /usr 路径下:
tar -C /usr -xzf ollama-linux-amd64.tgz
- tar:这是用于创建和提取归档文件的核心命令。
- -C /usr:
-C 是 tar 的一个选项,用于指定 “切换目录”(Change directory)
/usr 是要切换到的目标目录
作用:在提取文件前,先将工作目录切换到 /usr,这样所有文件都会被提取到这个目录下- -xzf:这是三个选项的组合:
-x:表示 “提取”(extract)文件
-z:表示处理 gzip 压缩的文件(.gz 或 .tgz 扩展名)
-f:表示后面跟着的是要处理的文件名
赋予执行权限:
chmod +x /usr/bin/ollama
给 /usr/bin/ollama 这个文件添加 “可执行权限”,让系统允许通过这个文件启动 Ollama 程序。Linux 系统中,文件默认没有执行权限(即使是程序文件),必须手动配置后才能运行,否则会提示 “Permission denied(权限不足)”。
- chmod:是 Linux 用于 “修改文件权限” 的核心命令,全称为 “change mode”。
- +x:“+” 表示 “添加权限”,“x” 表示 “执行权限”(即允许文件作为程序运行),组合起来就是 “给目标文件添加执行权限”。
- /usr/bin/ollama:是 Ollama 程序的 “可执行文件路径”。
把ollama作为系统的启动服务
创建一个user(需要用到ollama的用户作为系统服务,做用户隔离)
useradd -r -s /bin/false -m -d /usr/share/ollama ollama
创建一个名为 ollama 的系统专用用户,用于运行 Ollama 服务。
- useradd : Linux 用于 “创建用户” 的命令,对应 “user delete”(userdel)删除用户、“user modify”(usermod)修改用户。
- -r : 创建 “系统用户”(system user),而非普通登录用户。区别:系统用户 UID(用户 ID)范围更小(通常<1000),不显示在登录界面,仅用于运行服务。
- -s /bin/false : 指定用户的 “登录 Shell” 为 /bin/false(一个不可交互的伪 Shell)。作用:禁止这个用户通过终端登录系统,彻底杜绝人为操作该用户的可能,仅允许系统通过服务调用。
- -m : 自动创建用户的home directory,若不加此参数,home directory 不会自动生成。
- -d /usr/share/ollama : 指定用户的home directory 路径为 /usr/share/ollama。
/usr/share 是 Linux 存放 “程序共享数据” 的目录,把 Ollama 用户的home directory 放这里,方便存储 Ollama 的模型数据、配置文件等。- ollama :最后一个参数是 “用户名”,即创建的用户名为 ollama,与服务名对应,便于管理识别。
创建 ollama 用户后,后续配置 Ollama 服务(ollama.service 文件)时,会指定 User=ollama 和 Group=ollama,让服务以这个专用用户的身份运行;而 chmod +x 确保该用户有权限执行 /usr/bin/ollama 程序。
若 Ollama 服务出现漏洞被攻击,攻击者最多只能获取 ollama 用户的权限,无法修改系统核心文件(如 /etc/passwd、/usr/bin 下的其他程序),大幅降低系统被破坏的风险。
创建服务文件:
vim /etc/systemd/system/ollama.service
通过 systemd 工具将 Ollama(本地大模型运行工具)配置为系统级服务,实现开机自动启动、故障自动恢复等功能.
systemd 是 Linux 主流的系统服务管理器(如 Ubuntu、CentOS 等均默认使用),所有系统服务的配置文件都存放在 /etc/systemd/system/ 目录下。使用 vim 编辑器创建名为 ollama.service 的文件,就是为 Ollama 定义一套 “运行规则”,让系统知道如何启动、管理这个服务。
粘贴以下内容:
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
[Install]
WantedBy=default.target
文件内的 [Unit]「[Service]」「[Install]」是 systemd 服务配置的固定分段,每段承担不同功能:
- [Unit] 段:定义服务的 “基础信息” 和 “依赖关系”
Description=Ollama Service:给服务起一个 “备注名”,方便用户识别(比如用 systemctl list-units 查看服务时,会显示这个描述)。
After=network-online.target:定义服务的 “启动顺序”—— 要求 Ollama 服务在 “网络完全就绪” 之后再启动。
因为 Ollama 启动后需要通过网络提供接口(如本地 API),若网络没准备好就启动,可能导致服务异常;network-online.target 是系统内置的 “网络就绪” 信号。- [Service] 段:定义服务的 “运行规则”(核心配置)
这是服务配置的核心,决定了 Ollama 如何运行、用什么身份运行、故障后如何处理:
ExecStart=/usr/bin/ollama serve:指定服务的 “启动命令”—— 告诉系统,启动 Ollama 服务时,要执行 /usr/bin/ollama serve 这个命令。
其中 /usr/bin/ollama 是 Ollama 的可执行文件路径(默认安装路径),serve 是 Ollama 的 “服务模式”(启动后持续后台运行,提供 API 或交互接口)。
User=ollama / Group=ollama:指定服务的 “运行身份”—— 用 ollama 用户和 ollama 用户组来运行服务,而非 root 超级用户。
这是 Linux 安全最佳实践:避免服务以最高权限运行,即使服务被攻击,也能限制攻击者的操作范围(比如无法修改系统核心文件)。
Restart=always:定义 “故障恢复策略”—— 无论 Ollama 服务因何种原因停止(如程序崩溃、内存溢出、手动杀死进程),系统都会自动重启服务。
RestartSec=3:指定 “重启间隔”—— 服务停止后,系统会等待 3 秒再重启,避免因瞬时故障(如网络波动)导致服务 “频繁重启”,减少系统资源浪费。- [Install] 段:定义服务的 “开机启动规则”
WantedBy=default.target:指定服务的 “开机启动目标”—— 将 Ollama 服务关联到系统的 default.target(系统默认的启动目标,通常对应 “多用户命令行模式” 或 “图形界面模式”)。
这意味着:当系统启动到默认模式时,会自动启动 Ollama 服务;若不配置这一段,systemctl enable 命令无法生效。
重新加载配置:
systemctl daemon-reload
把ollama的服务作为系统启动服务:
systemctl enable ollama
在启动ollama:
systemctl start ollama
执行ollama版本命令,查看是否配置成功:
ollama --version
----------出现的问题:----------
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
原因可能是我用的Docker 容器 不支持 systemctl。
所以我直接使用 ollama serve 命令启动 ollama,随后下载模型(不影响使用)
下载deepseek模型:
ollama地址:ollama地址
ollama run deepseek-r1
小技巧:
当你使用ollama run <模型名>或ollama pull <模型名>命令下载模型时,如果下载过程中速度变慢,你可以通过按下Ctrl+C中断下载,然后再次执行下载命令,Ollama 会从上次中断的位置继续下载

chatchat 初始化
使用chatchat init 初始化程序的上下文信息(模型配置,知识库配置)—这个配置的生成有一个默认的路径,为了确保生成到指定路径下,需要配置环境变量,设置 Chatchat 存储配置文件和数据文件的根目录。
vim /root/.bashrc
CHATCHAT_ROOT 的路径根据自己的电脑配置,是/root/data/ 还是 /data/。因为我使用的容器 根目录下还有一个root 所以我路径设置为/root/data/ 。
#插入信息:
export CHATCHAT_ROOT=/root/data/
#刷新:
source /root/.bashrc
#验证环境变量配置是否成功:
echo ${CHATCHAT_ROOT}
#刷新环境后需要重新进入环境:
conda activate langchain-chat
#执行初始化命令:生成配置文件
chatchat init
查看文件:
ls data
模型配置,知识库配置,基础的环境配置,提示词配置,工具的配置

修改配置文件
重点关注 model_settings.yaml
cd data
vim model_settings.yaml
修改以下几个部分:
默认选用的LLM名称
平台名称
平台类型
openai api url — ollama端口是11434
在llm_models中添加使用的模型deepseek-r1
在embed_models添加使用的嵌入模型 bge-m3
DEFAULT_LLM_MODEL: deepseek-r1
platform_name: ollama
platform_type: ollama
api_base_url: http://127.0.0.1:11434/v1


我的 model_settings.yaml 文件内容如下:
# 模型配置项
# 默认选用的 LLM 名称
DEFAULT_LLM_MODEL: deepseek-r1
# 默认选用的 Embedding 名称
DEFAULT_EMBEDDING_MODEL: bge-m3
# AgentLM模型的名称 (可以不指定,指定之后就锁定进入Agent之后的Chain的模型,不指定就是 DEFAULT_LLM_MODEL)
Agent_MODEL: ''
# 默认历史对话轮数
HISTORY_LEN: 3
# 大模型最长支持的长度,如果不填写,则使用模型默认的最大长度,如果填写,则为用户设定的最大长度
MAX_TOKENS:
# LLM通用对话参数
TEMPERATURE: 0.7
# 支持的Agent模型
SUPPORT_AGENT_MODELS:
- chatglm3-6b
- glm-4
- openai-api
- Qwen-2
- qwen2-instruct
- gpt-3.5-turbo
- gpt-4o
# LLM模型配置,包括了不同模态初始化参数。
# `model` 如果留空则自动使用 DEFAULT_LLM_MODEL
LLM_MODEL_CONFIG:
preprocess_model:
model: ''
temperature: 0.05
max_tokens: 4096
history_len: 10
prompt_name: default
callbacks: false
llm_model:
model: ''
temperature: 0.9
max_tokens: 4096
history_len: 10
prompt_name: default
callbacks: true
action_model:
model: ''
temperature: 0.01
max_tokens: 4096
history_len: 10
prompt_name: ChatGLM3
callbacks: true
postprocess_model:
model: ''
temperature: 0.01
max_tokens: 4096
history_len: 10
prompt_name: default
callbacks: true
image_model:
model: sd-turbo
size: 256*256
# # 模型加载平台配置
# # 平台名称
platform_name: ollama
# # 平台类型
# # 可选值:['xinference', 'ollama', 'oneapi', 'fastchat', 'openai', 'custom openai']
platform_type: ollama
# # openai api url
api_base_url: http://127.0.0.1:11434/v1
# # api key if available
# api_key: EMPTY
# # API 代理
# api_proxy: ''
# # 该平台单模型最大并发数
# api_concurrencies: 5
# # 是否自动获取平台可用模型列表。设为 True 时下方不同模型类型可自动检测
# auto_detect_model: false
# # 该平台支持的大语言模型列表,auto_detect_model 设为 True 时自动检测
# llm_models: []
# # 该平台支持的嵌入模型列表,auto_detect_model 设为 True 时自动检测
# embed_models: []
# # 该平台支持的图像生成模型列表,auto_detect_model 设为 True 时自动检测
# text2image_models: []
# # 该平台支持的多模态模型列表,auto_detect_model 设为 True 时自动检测
# image2text_models: []
# # 该平台支持的重排模型列表,auto_detect_model 设为 True 时自动检测
# rerank_models: []
# # 该平台支持的 STT 模型列表,auto_detect_model 设为 True 时自动检测
# speech2text_models: []
# # 该平台支持的 TTS 模型列表,auto_detect_model 设为 True 时自动检测
# text2speech_models: []
MODEL_PLATFORMS:
- platform_name: xinference
platform_type: xinference
api_base_url: http://127.0.0.1:9997/v1
api_key: EMPTY
api_proxy: ''
api_concurrencies: 5
auto_detect_model: true
llm_models: []
embed_models: []
text2image_models: []
image2text_models: []
rerank_models: []
speech2text_models: []
text2speech_models: []
- platform_name: ollama
platform_type: ollama
api_base_url: http://127.0.0.1:11434/v1
api_key: EMPTY
api_proxy: ''
api_concurrencies: 5
auto_detect_model: false
llm_models:
- qwen:7b
- qwen2:7b
- deepseek-r1
embed_models:
- quentinz/bge-large-zh-v1.5
- bge-m3
text2image_models: []
image2text_models: []
rerank_models: []
speech2text_models: []
text2speech_models: []
- platform_name: oneapi
platform_type: oneapi
api_base_url: http://127.0.0.1:3000/v1
api_key: sk-
api_proxy: ''
api_concurrencies: 5
auto_detect_model: false
llm_models:
- chatglm_pro
- chatglm_turbo
- chatglm_std
- chatglm_lite
- qwen-turbo
- qwen-plus
- qwen-max
- qwen-max-longcontext
- ERNIE-Bot
- ERNIE-Bot-turbo
- ERNIE-Bot-4
- SparkDesk
embed_models:
- text-embedding-v1
- Embedding-V1
text2image_models: []
image2text_models: []
rerank_models: []
speech2text_models: []
text2speech_models: []
- platform_name: openai
platform_type: openai
api_base_url: https://api.openai.com/v1
api_key: sk-proj-
api_proxy: ''
api_concurrencies: 5
auto_detect_model: false
llm_models:
- gpt-4o
- gpt-3.5-turbo
embed_models:
- text-embedding-3-small
- text-embedding-3-large
text2image_models: []
image2text_models: []
rerank_models: []
speech2text_models: []
text2speech_models: []
下载 bge-m3模型:
ollama pull bge-m3
初始化知识库
在进行知识库初始化前,请确保已经启动模型推理框架及对应 embedding 模型
在 chatchat kb -r 初始化知识库之前,需要删除一些无关的文档,节省时间
cd data/data/knowledge_base/samples/content
rm -rf *.md
cd test_files/
rm -rf *.xlsx
rm -rf *.csv
rm -rf test.txt

我就保留了langchain.pdf文件 用来查看效果。
回到 data :
cd data
初始化知识库:
chatchat kb -r
出现以下结果表示成功了:
----------------------------------------------------------------------------------------------------
知识库名称 :samples
知识库类型 :faiss
向量模型: :bge-m3
知识库路径 :/root/data/data/knowledge_base/samples
文件总数量 :2
入库文件数 :2
知识条目数 :68
用时 :0:07:21.206060
----------------------------------------------------------------------------------------------------
总计用时 :0:07:21.219414
启动chatchat程序:
chatchat start -a
ctrl + 点击下面的URL
You can now view your Streamlit app in your browser.
URL: http://0.0.0.0:8501
结果如下:

可能出现的问题:
1.httpx版本错误
2025-10-20 16:10:40.161 | ERROR | chatchat.webui_pages.utils:get:64 - TypeError: error when get /tools: Client.__init__() got an unexpected keyword argument 'proxies'
2025-10-20 16:10:40.166 | ERROR | chatchat.webui_pages.utils:get:64 - TypeError: error when get /tools: Client.__init__() got an unexpected keyword argument 'proxies'
2025-10-20 16:10:40.166 | ERROR | chatchat.webui_pages.utils:get:64 - TypeError: error when get /tools: Client.__init__() got an unexpected keyword argument 'proxies'
2025-10-20 16:10:40.166 | ERROR | chatchat.webui_pages.utils:to_json:233 - AttributeError: API未能返回正确的JSON。'NoneType' object has no attribute 'json'
出现上面的问题只需要将httpx的版本回退到 0.27.2 版本。
2.地址访问不了:
#可能是防火墙的问题:
ufw allow 8501 #开放8501这个端口
basic_settings.yaml文件:
# 服务器基本配置信息
# 除 log_verbose/HTTPX_DEFAULT_TIMEOUT 修改后即时生效
# 其它配置项修改后都需要重启服务器才能生效,服务运行期间请勿修改
# 生成该配置模板的项目代码版本,如这里的值与程序实际版本不一致,建议重建配置文件模板
version: 0.3.1.3
# 是否开启日志详细信息
log_verbose: false
# httpx 请求默认超时时间(秒)。如果加载模型或对话较慢,出现超时错误,可以适当加大该值。
HTTPX_DEFAULT_TIMEOUT: 300.0
# 知识库默认存储路径
KB_ROOT_PATH: /root/data/data/knowledge_base
# 数据库默认存储路径。如果使用sqlite,可以直接修改DB_ROOT_PATH;如果使用其它数据库,请直接修改SQLALCHEMY_DATABASE_URI。
DB_ROOT_PATH: /root/data/data/knowledge_base/info.db
# 知识库信息数据库连接URI
SQLALCHEMY_DATABASE_URI: sqlite:////root/data/data/knowledge_base/info.db
# API 是否开启跨域
OPEN_CROSS_DOMAIN: false
# 各服务器默认绑定host。如改为"0.0.0.0"需要修改下方所有XX_SERVER的host
# Windows 下 WEBUI 自动弹出浏览器时,如果地址为 "0.0.0.0" 是无法访问的,需要手动修改地址栏
DEFAULT_BIND_HOST: 0.0.0.0
# API 服务器地址。其中 public_host 用于生成云服务公网访问链接(如知识库文档链接)
API_SERVER:
host: 0.0.0.0
port: 7861
public_host: 127.0.0.1
public_port: 7861
# WEBUI 服务器地址
WEBUI_SERVER:
host: 0.0.0.0
port: 8501
查看向量库文件:
# 查看目录大小
du -sh samples/vector_store/bge-m3
#检查是否有完整的索引文件
ls -l saples/vector_store/bge-m3
samples/vector_store/bge-m3 是使用嵌入模型生成的向量库存储目录。 向量库用于存储文档的向量表示,一遍后续进行知识库查询时,通过向量相似匹配来快速找到相关文档。
index.faiss : 由FAISS库生成,用于高效存储和检索向量数据,支持快速的向量相似度查询操作。
index.pkl : 通常是一个pickle格式的文件,可能用于存储与向量索引相关的元数据,比如文档的原始信息,向量的维度等,以便在加载向量库时能完整还原相关数据。

RAG对话
web端操作:
可以直接上传文件—依据文件重建向量库

终端操作:
将需要向量化的文件夹放到 /root/data/data/knowledge_base/samples/content 路径下:
然后运行初始化向量库: chatchat kb -r
结果如下:

----------------------------------------------------------------------------------------------------
知识库名称 :samples
知识库类型 :faiss
向量模型: :bge-m3
知识库路径 :/root/data/data/knowledge_base/samples
文件总数量 :52
入库文件数 :52
知识条目数 :11555
用时 :0:40:49.009174
----------------------------------------------------------------------------------------------------
总计用时 :0:40:49.033373

小结
如有问题欢迎交流探讨。
langchain相关学习可参考【大模型开发框架】LangChain核心架构解析与应用实践(一)
更多推荐
所有评论(0)