用 AI 重塑企业培训全流程
企业知识库智能问答系统 — 培训不再只靠文档,让 AI 帮员工找到答案
上传企业培训文档(PDF/TXT/DOCX),基于 RAG 技术构建专属知识库,员工提问即可获得精准回答 + 来源追溯。
Knowledge Base Q&A System — Powered by RAG
基于检索增强生成(Retrieval-Augmented Generation)的智能知识库问答系统
RAG(检索增强生成)是一种结合信息检索和大语言模型的技术:
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ 用户问题 │ ──▶ │ 知识检索 │ ──▶ │ LLM 生成 │
└──────────────┘ └──────────────┘ └──────────────┘
↓
┌──────────────┐
│ 知识库文档 │
└──────────────┘
优势:
- 📖 基于真实文档回答,不会胡说八道
- 🔒 知识可控,不依赖模型训练数据
- 💡 支持私有知识库(如公司内部文档)
| 功能 | 说明 |
|---|---|
| 📂 多格式文档上传 | 支持 PDF / TXT / DOCX |
| 🔢 智能文本分块 | 滑动窗口分块,保留上下文 |
| 🔍 向量语义检索 | BGE-M3 Embedding + FAISS 索引 |
| 💬 RAG 智能问答 | 结合检索结果生成准确回答 |
| 📌 来源追溯 | 显示答案引用的文档来源 |
| 💾 本地向量存储 | 索引持久化,重复使用 |
- Python 3.8+
- 推荐 4GB+ RAM
git clone https://github.com/ASJ-Alita/rag-knowledge-base.git
cd rag-knowledge-base
# 推荐安装(完整功能)
pip install -r requirements.txt
# 最小安装(不需要PDF/DOCX解析)
pip install streamlit requests numpystreamlit run app.py浏览器自动打开 http://localhost:8501
1. 打开程序 → 左侧边栏配置 API Key(推荐硅基流动,免费)
2. 切换到「📂 知识库管理」→ 上传文档(PDF/TXT/DOCX)
3. 等待处理完成(自动分块+向量化)
4. 切换到「💬 智能问答」→ 输入问题 → 获取回答
- 注册:https://account.siliconflow.cn
- 获取 API Key
- 填入程序侧边栏
免费额度:
- DeepSeek-V3 模型:免费使用
- BGE-M3 嵌入模型:免费使用
| 平台 | 模型 | 说明 |
|---|---|---|
| 硅基流动 | DeepSeek-V3 + BGE-M3 | 🌟 免费推荐 |
| OpenAI | GPT-4o-mini + ada-002 | 需科学上网 |
| 智谱AI | GLM-4-flash | 免费额度 |
rag-knowledge-base/
├── app.py # Streamlit Web界面
├── rag_engine.py # RAG核心引擎(检索+生成)
├── document_processor.py # 文档解析(PDF/TXT/DOCX)
├── embeddings.py # 向量化模块
├── vector_store.py # FAISS向量数据库
├── config.py # 配置参数
├── documents/ # 上传的文档(自动创建)
├── indexes/ # 向量索引(自动创建)
├── requirements.txt
└── README.md
flowchart TB
subgraph 知识库构建["📂 知识库构建流程"]
direction TB
A[📄 文档上传<br/>PDF / TXT / DOCX] --> B[🔤 文本提取<br/>document_processor.py]
B --> C[✂️ 智能分块<br/>滑动窗口 400字/块<br/>80字重叠]
C --> D[🔢 向量化<br/>BGE-M3 Embedding<br/>SiliconFlow API]
D --> E[💾 FAISS 索引<br/>vector_store.py<br/>本地持久化存储]
end
subgraph 智能问答["💬 智能问答流程"]
direction TB
F[❓ 用户提问] --> G[🔢 Query 向量化<br/>BGE-M3 Embedding]
G --> H[🔍 FAISS 语义检索<br/>Top-K 相关文档块]
H --> I[🤖 LLM 生成回答<br/>DeepSeek-V3<br/>带上下文 Prompt]
I --> J[📋 返回回答<br/>+ 引用来源追溯]
end
E -.->|索引查询| H
style 知识库构建 fill:#E8F5E9,stroke:#27AE60,stroke-width:2px
style 智能问答 fill:#E3F2FD,stroke:#2196F3,stroke-width:2px
| 能力维度 | 体现点 |
|---|---|
| RAG 技术深度 | 完整的 RAG 流程:分块→向量化→检索→生成 |
| 向量数据库 | FAISS 索引原理与使用 |
| 大模型应用 | 多平台 API 调用、Prompt 工程 |
| 文档处理 | PDF/TXT/DOCX 多格式解析 |
| 系统架构 | 模块化设计,清晰的数据流 |
| Web 开发 | Streamlit 快速构建数据应用 |
- 支持网页 URL 抓取入库
- 多文档对比问答
- 支持图片/表格理解
- 流式输出(实时显示回答)
- 对话历史记忆
- 企业微信/钉钉集成
培训技术专家 | 12年IT教育经验 | AI应用爱好者
GitHub: https://github.com/ASJ-Alita