Langchain-Chatchat介绍
Langchain-Chatchat(原Langchain-ChatGLM)基于 Langchain 与 ChatGLM 等语言模型的本地知识库问答。该项目是一个可以实现完全本地化推理的知识库问答增强方案,重点解决企业知识库数据安全、私域化部署的痛点。
开源Github项目地址:https://github.com/chatchat-space/Langchain-Chatchat
开源方案采用 Apache License,可以免费商用,无需付费。
项目技术栈:Python 语言 + langchain 基础框架 + FastAPI 暴露 API & 文档 + Streamlit 暴露前端,另外工程通过使用 FastChat 接入 Vicuna, Alpaca, LLaMA, Koala, RWKV 等模型。
Langchain-Chatchat核心过程是:
文档预处理:加载文件 -> 读取文本 -> 文本分割 -> 文本向量化并存储。
查询检索:问题向量化 -> 在文本向量中匹配出与问题向量最相似的 TopK 个文本 -> 匹配出的文本作为上下文和问题一起添加到 prompt 中 -> 提交给 LLM 生成最后的回答。
目前项目已支持多种开源 LLM 与向量化模型,并可实现全部使用开源模型离线私有部署。与此同时,项目也支持 OpenAI GPT API 的调用,并持续扩充对各类模型及模型 API 的接入:
LLM 大语言模型接入:
支持通过调用 FastChat API 调用 LLM;
支持 ChatGLM API 等 LLM API 的接入;
支持 Langchain 框架支持的 LLM API 接入;
向量化模型接入:
支持调用 HuggingFace 中各开源模型;
支持 OpenAI Embedding API 等接入;
支持智谱 AI、百度千帆、千问、MiniMax 等在线 Embedding API 的接入;