项目简介
本项目是一个基于 LangChain 的知识库对话 Demo。项目采用模块化、标准化的方式组织结构,易于拓展。可使用 OpenAI、Qianfan、ZhipuAI 提供的 LLM 和 Embedding 模型,也支持添加其他符合 LangChain 封装规范的模型。使用 Chroma 作为向量数据库,借助 Gradio 实现 WebUI,提供了一个简单的基于 LangChain 使用 LLM + 知识库的 QA 系统框架,具有高解耦性,方便拓展和二次开发。
项目的主要特性和功能
- 丝滑切换 LLM:遵循标准化封装方式,对话期间切换大语言模型,能保持先前记忆并继续对话。
- 支持多种类型文件:可读取文本、ppt、html、pdf、图片等多种格式文件。
- 易拓展:基于 LangChain 的 ChatModel 封装,能轻松拓展到其他模型。
- 用户友好:借助 Gradio 实现了易于使用的 WebUI。
安装使用步骤
1. 配置环境
```shell
cd LangChain-Chat-Demo
conda create -n langchain-chat-demo python=3.10 -y conda activate langchain-chat-demo
pip install -r requirements.txt ```
2. 设置 API key
将 API key 添加到环境中,可在终端中添加,或直接在项目的 .env
文件中设置。
- 在终端中设置:以 OPENAI_API_KEY
为例,将 <your api key>
替换为你自己的 API key。
- Windows PowerShell:
shell
$Env:OPENAI_API_KEY="<your api key>"
- Windows Command:
set OPENAI_API_KEY=<your api key>
- Linux/MacOS
shell
export OPENAI_API_KEY="<your api key>"
- 在 .env
中设置:使用记事本打开 .env
文件,设置对应的 API key。
3. 启动 WebUI
运行命令:
shell
python webui.py
在浏览器中打开 http://127.0.0.1:7860/ 即可。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】