DeepSeek-RAG-Chatbot是一个结合检索增强生成(RAG)技术的聊天机器人,通过架构创新与RAG技术融合,重新定义了聊天机器人的效能边界,应用场景覆盖医疗、金融、制造等12个行业,随着神经符号系统与量子计算的引入,有望进一步逼近通用智能体的目标。
深度搜索RAG聊天机器人是一个免费的、私密的(无需互联网)聊天工具,可以在本地PC上安装和使用,提供快速、准确且可解释的信息检索功能。
DeepSeek-RAG-Chatbot聊天机器人结合了BM25和FAISS算法,从PDF、DOCX和TXT文件中检索最相关的文本片段,使用神经重排序模型和图RAG技术,提高检索的准确性和上下文理解。
图RAG技术能够从文档中构建知识图谱,帮助更好地理解和关联信息,增强的上下文理解让聊天机器人能够提供更相关和有意义的响应。
聊天机器人维护聊天历史记录,保证对话的连贯性,通过参考之前的用户消息,聊天机器人能够提供更加相关和上下文相关的回答。
1、克隆仓库并安装依赖项:
git clone https://github.com/SaiAkhil066/DeepSeek-RAG-Chatbot.git
cd DeepSeek-RAG-Chatbot
python -m venv venv
# 激活环境
# 在Windows上:venv\Scripts\activate
# 在macOS/Linux上:source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
2、下载并设置Ollama模型:
根据需要更新环境变量或.env
文件中的模型。
3、运行聊天机器人:
需要运行Ollama,启动Streamlit应用:
ollama serve
streamlit run app.py
如果Ollama已经在主机上安装并监听在localhost:11434,执行以下操作:
docker-compose build
docker-compose up
应用在 http://localhost:8501
提供服务。
如果希望所有内容都在Docker中:
version: "3.8"
services:
ollama:
image: ghcr.io/jmorganca/ollama:latest
container_name: ollama
ports:
- "11434:11434"
deepgraph-rag-service:
container_name: deepgraph-rag-service
build: .
ports:
- "8501:8501"
environment:
- OLLAMA_API_URL=http://ollama:11434
- MODEL=deepseek-r1:7b
- EMBEDDINGS_MODEL=nomic-embed-text:latest
- CROSS_ENCODER_MODEL=cross-encoder/ms-marco-MiniLM-L-6-v2
depends_on:
- ollama
然后执行:
docker-compose build
docker-compose up
1、上传文档:通过侧边栏添加PDF、DOCX或TXT文件。
2、混合检索:结合BM25和FAISS算法检索最相关的文本片段。
3、图RAG处理:从文档中构建知识图谱,理解关系和上下文。
4、神经重排序:使用交叉编码器模型重新排序检索到的片段。
5、查询扩展(HyDE):生成假设性答案以扩展查询,提高召回率。
6、聊天历史记忆:通过参考之前的用户消息维护上下文。
7、DeepSeek-7B生成:基于排名靠前的片段生成最终答案。
• 检索方法:从混合检索升级到混合检索加图RAG。
• 上下文理解:从有限的上下文理解升级到增强的知识图谱。
• 用户界面:从标准界面升级到可定制和主题化的侧边栏。
• 聊天历史:从不使用聊天历史升级到完全的记忆集成。
• 错误处理:从基本错误处理升级到修复bug。