chatchat-space/Langchain-ChatchatView GitHub Homepage for Latest Official Releases

基於ChatGLM、Qwen、Llama等大型語言模型與Langchain框架實現的開源、可離線部署的RAG與Agent應用項目

Apache-2.0TypeScriptLangchain-Chatchatchatchat-space 35.9k Last Updated: March 25, 2025

Langchain-Chatchat 項目詳細介紹

項目概述

Langchain-Chatchat(原名 Langchain-ChatGLM)是一個基於大語言模型與Langchain等應用框架實現的開源、可離線部署的RAG(檢索增強生成)與Agent應用項目。該項目致力於建立一套對中文場景與開源模型支持友好、可離線運行的知識庫問答解決方案。

核心特性

1. 多模型支持

項目支持市面上主流的開源大語言模型:

  • GLM系列: GLM-4-Chat, ChatGLM等
  • Qwen系列: Qwen2-Instruct, Qwen-VL-Chat等
  • Llama系列: Llama3等
  • 在線API: 支持OpenAI GPT API調用

2. 多種部署框架

支持多種模型部署框架,提供靈活的接入方式:

框架 Xinference LocalAI Ollama FastChat
OpenAI API接口對齊
加速推理引擎 GPTQ, GGML, vLLM, TensorRT, mlx GPTQ, GGML, vLLM, TensorRT GGUF, GGML vLLM
接入模型類型 LLM, Embedding, Rerank, Text-to-Image, Vision, Audio LLM, Embedding, Rerank, Text-to-Image, Vision, Audio LLM, Text-to-Image, Vision LLM, Vision

3. 豐富的對話功能

0.3.x版本提供多種對話模式:

功能 0.2.x 0.3.x
LLM對話
知識庫對話
搜索引擎對話
文件對話 ✅僅向量檢索 ✅統一為File RAG功能,支持BM25+KNN等多種檢索方式
數據庫對話
多模態圖片對話 ✅ 推薦使用 qwen-vl-chat
ARXIV文獻對話
Wolfram對話
文生圖
Agent ❌不穩定 ✅針對ChatGLM3和Qwen進行優化

技術架構

RAG實現原理

項目的核心技術基於RAG(檢索增強生成)架構:

文檔加載 → 文本讀取 → 文本分割 → 文本向量化 → 問句向量化 → 
相似度匹配(Top-K) → 上下文構建 → LLM生成回答

Agent功能

0.3.x版本的核心功能由Agent實現,提供三種操作模式:

操作方式 實現功能 適用場景
啟用Agent + 多工具 LLM自動工具調用 ChatGLM3/Qwen等具備Agent能力的模型
啟用Agent + 單工具 LLM僅解析工具參數 Agent能力一般的模型,手動選擇功能
不啟用Agent + 單工具 手動參數填入 不具備Agent能力的模型

安裝部署

1. Python庫安裝


pip install langchain-chatchat -U

pip install "langchain-chatchat[xinference]" -U

2. 環境要求

  • Python版本: 3.8-3.11
  • 操作系統: Windows, macOS, Linux
  • 硬件支持: CPU, GPU, NPU, MPS

3. 配置步驟

設置根目錄(可選)

# Linux/macOS
export CHATCHAT_ROOT=/path/to/chatchat_data

# Windows
set CHATCHAT_ROOT=/path/to/chatchat_data

初始化項目

chatchat init

配置文件修改

主要配置文件包括:

  • model_settings.yaml: 模型配置
  • basic_settings.yaml: 基礎路徑配置
  • kb_settings.yaml: 知識庫配置

知識庫初始化

chatchat kb -r

啟動服務

chatchat start -a

4. Docker部署


docker pull chatimage/chatchat:0.3.1.3-93e2c87-20240829


docker pull ccr.ccs.tencentyun.com/langchain-chatchat/chatchat:0.3.1.3-93e2c87-20240829

使用場景

1. 企業知識庫問答

  • 文檔管理與檢索
  • 內部知識分享
  • 客服自動化

2. 學術研究

  • 文獻檢索與分析
  • 學術論文對話
  • 研究資料整理

3. 個人知識管理

  • 個人文檔整理
  • 學習筆記檢索
  • 資料歸檔管理

優勢特點

  1. 完全開源: 遵循Apache-2.0協議,代碼完全開放
  2. 離線部署: 支持完全離線運行,保護數據隱私
  3. 中文友好: 針對中文場景優化,支持中文模型
  4. 框架靈活: 支持多種模型部署框架
  5. 功能豐富: 提供RAG、Agent、多模態等多種功能
  6. 易於部署: 提供pip安裝和Docker部署方式

技術棧

  • 核心框架: Langchain
  • Web框架: FastAPI, Streamlit
  • 向量數據庫: FAISS等
  • 模型推理: Xinference, Ollama, LocalAI, FastChat
  • API接入: One API支持多種在線API

該項目為需要構建本地知識庫問答系統的用戶提供了完整的解決方案,特別適合對數據隱私有嚴格要求的企業和個人用戶。

Star History Chart