rag-web-ui/rag-web-ui

RAG Web UI is an intelligent dialogue system based on RAG (Retrieval-Augmented Generation) technology.

What it solves

RAG Web UI 提供一个完整的系统,用于基于私有知识库构建智能问答服务。它解决了让大型语言模型(LLM)提供基于用户提供的特定文档、而不是仅依赖模型通用训练数据的准确、可靠答案的问题。

How it works

系统使用检索增强生成(RAG)流水线:

  1. Document Ingestion:用户上传文档(PDF、DOCX、Markdown、Text),这些文档存储在 MinIO 中。系统随后异步提取文本、切分为块,并使用嵌入服务将这些块转换为向量。
  2. Storage:这些向量存储在向量数据库(ChromaDB 或 Qdrant)。
  3. Query Process:当用户提问时,系统对查询进行嵌入,从向量数据库检索最相关的文档块,使用 Cross‑Encoder 重新排序,然后将组装好的上下文喂给 LLM 生成最终响应。
  4. Integration:支持多种 LLM 提供商(OpenAI、DeepSeek、MiniMax,以及通过 Ollama 的本地模型),并提供 OpenAPI 接口供外部访问。

Who it’s for

该项目面向希望部署私有、基于文档的 AI 聊天系统并拥有友好网页界面的用户,也适合寻找 RAG 架构参考实现的开发者。

Highlights

  • Flexible LLM Support:兼容云服务(OpenAI、DeepSeek、MiniMax)和本地部署(Ollama)。
  • Multi-Format Support:支持 PDF、DOCX、Markdown 和 Text 文件。
  • Vector DB Choice:通过 Factory 模式同时支持 ChromaDB 与 Qdrant。
  • Full-Stack Architecture:结合 FastAPI 后端、Next.js 14 前端与 MinIO 分布式对象存储。
  • Citations:在对话中支持引用参考,以确保答案的透明度。