LangChain-Chatchat 开源知识库来了

LangChain-Chatchat 开源知识库来了

LangChain-Chatchat 是基于 ChatGLM 等大语言模型与 LangChain 等应用框架实现,开源、可离线部署的 RAG 检索增强生成大模型知识库项目。最新版本为 v0.2.10,目前已收获 26.7k Stars,非常不错的一个开源知识库项目。

项目地址:https://github.com/chatchat-space/Langchain-Chatchat

LangChain-Chatchat 架构设计

顾名思义,LangChain-Chatchat 利用 LangChain 思想实现的基于本地知识库的问答应用,目标期望建立一套对中文场景与开源模型支持友好、可离线运行的知识库问答解决方案。

依托于本项目支持的开源 LLM 大模型与 Embedding 嵌入模型,本项目可实现全部使用开源模型 离线私有部署。与此同时,本项目也支持 OpenAI GPT API 的调用,并将在后续持续扩充对各类模型及模型 API 的接入。

本项目实现原理如下图所示,过程包括 加载文件 -> 读取文本 -> 文本分割 -> 文本向量化 -> 问句向量化 -> 在文本向量中匹配出与问句向量最相似的 Top K 个 -> 匹配出的文本作为上下文和问题一起添加到 Prompt 中 -> 提交给 LLM 大模型生成回答。

从文档处理角度来看,实现流程如下:

LangChain-ChatChat 具体实现过程

  • 任务定义

    首先,我们需要定义问答任务。在 LangChain 中,任务是通过一系列 JSON 格式的配置文件来定义的。对于问答任务,我们需要指定输入文本、输出文本、知识库等相关信息。

  • 模型选择

    在定义完任务后,我们需要选择合适的模型来完成任务。LangChain 支持多种自然语言处理模型,比如:BERT、GPT 等。对于问答任务,我们可以选择使用问答模型,比如:QA-BERT、QA-GPT 等。

  • 数据处理

    在模型选择完成后,我们需要对输入数据进行处理。这包括文本清洗、分词、编码等步骤。LangChain 提供了一系列工具和库,方便我们进行数据处理。

  • 输出生成

    最后,我们需要将模型的输出转换为人类可读的格式。在问答任务中,输出通常是一个答案文本。我们可以使用 LangChain 提供的输出生成工具,将模型的输出转换为格式化的答案文本。

一键本地离线部署

软件环境

  • Linux Ubuntu 22.04.5 kernel version 6.7
  • Python 版本: >= 3.8(很不稳定), < 3.12,推荐 3.11.7
  • CUDA 版本: >= 12.1,推荐 12.1

硬件环境

  • 取决于选择的大模型,在 GPU 运行本地模型的 FP16 版本,至少需要以下的硬件配置,来保证对话的稳定连续。
  • ChatGLM3-6B & LLaMA-7B-Chat 等 7B 模型
    • 最低显存要求: 14GB
    • 推荐显卡: RTX 4080
  • Qwen-14B-Chat 等 14B 模型
    • 最低显存要求: 30GB
    • 推荐显卡: V100

支持三种部署方式

  • 轻量化部署、Docker 部署、常规部署
  • 建议使用 Docker 一键部署
shell 复制代码
docker run -d --gpus all -p 80:8501 registry.cn-beijing.aliyuncs.com/chatchat/chatchat:0.2.0
相关推荐
BD_Marathon20 分钟前
流式调用、批量调用与异步调用
langchain
FIT2CLOUD飞致云21 分钟前
飞致云开源社区月度动态报告(2026年9月)
开源·飞致云·开源大屏·月度报告
熊猫钓鱼>_>11 小时前
开源鸿蒙平台 KMP 三方库 Essenty 适配全流程:从生命周期抽象到状态重建验证
华为·开源·harmonyos·鸿蒙·kmp·atomgit·essenty
Flynt12 小时前
hindsight实测:给AI助理装上"海马体",我先跟root权限和2G内存缠斗了一下午
开源·agent
miofly12 小时前
GitHub 今日推荐|DiPlay:让 iPhone CarPlay 直连 BYD 车机,无需硬件适配器
开源·github
传奇开心果编程13 小时前
中庸、有容、破执:仓颉编程语言的中华智慧结晶——三重哲学境界思辨
开发语言·华为·开源·软件工程
王国强200915 小时前
Deep Agents Code 源码阅读(二):main.py 启动流程与 CLI 配置系统
langchain
智码看视界16 小时前
开源大模型追踪:腾讯混元Hy4preview,FP8 770GB 落地企业私有化,Apache 2.0 无字段限制
开源·vllm·开源大模型·apache2.0·fp8量化·腾讯混元hy4·agent推理
分布式存储与RustFS16 小时前
图床搬到自己的对象存储:PicGo 加 S3 插件的完整配置
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
10年前端老司机17 小时前
LangChain Agent 切面钩子实战:解耦业务,一键复用通用能力
人工智能·langchain·agent