# knowhub **Repository Path**: cheng-sz/knowhub ## Basic Information - **Project Name**: knowhub - **Description**: 知识库管理平台 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-25 - **Last Updated**: 2026-08-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 知识库管理平台(knowhub) 集「知识维护、多维权限管理、AI 问答鉴权检索、数据看板、知识自动沉淀」于一体的知识库管理平台。 ## 技术栈 | 层 | 技术 | |---|---| | 前端 | Vue3 + Element Plus + Pinia + ECharts | | 后端 | Python FastAPI | | AI 编排 | LangGraph(导入图 + 查询图 + 沉淀图) | | 文档解析 | PDF→在线 MinerU;Word→本地 pandoc;MD/TXT→直读 | | AI 模型 | bge-m3(dense+sparse 向量化)→ bge-reranker(重排)→ Qwen 千问(生成) | | 存储 | MySQL + MongoDB + Milvus + MinIO | | 任务调度 | APScheduler | | 评估 | RAGAS | | 部署 | Docker Compose + Git → 腾讯云 | ## 快速启动 ### 0. 启动基础设施(Docker) ```bash docker compose up -d ``` > 端口与本地一致:MySQL 3307、Mongo 27017、Milvus 19530、MinIO 9000/9001。 ### 1. 后端 ```bash cd backend python -m venv .venv .venv\Scripts\pip install -r requirements.txt # Windows cp .env.example .env # 按需填 Key .venv\Scripts\python scripts/init_db.py # 初始化数据库 + 种子数据 .venv\Scripts\python -m uvicorn app.main:app --host 0.0.0.0 --port 8000 ``` ### 2. 前端 ```bash cd frontend npm install npm run dev # http://localhost:5173 ``` ### 默认账号 | 账号 | 密码 | 角色 | |---|---|---| | admin | 123456 | 系统管理员 | | knowadmin | 123456 | 知识管理员 | | user1 | 123456 | 普通用户 | ## 目录结构 ``` knowhub/ ├── backend/ # FastAPI 后端 │ ├── app/ │ │ ├── api/ # 路由层 │ │ ├── core/ # 配置/安全/依赖 │ │ ├── graph/ # LangGraph 三图 │ │ ├── models/ # SQLAlchemy 模型 │ │ ├── services/ # 8 大服务 │ │ ├── utils/ # 可插拔客户端/工具 │ │ └── prompts/ # 提示词模板 │ └── scripts/ # 初始化脚本 ├── frontend/ # Vue3 前端 ├── evaluation/ # RAGAS 评估模块 ├── samples/ # 示例知识文档 ├── docker-compose.yml # 基础设施编排 └── 开发文档.md # 详细开发规格 ``` ## 配置项(backend/.env) | 变量 | 说明 | 默认 | |---|---|---| | BGE_M3_MODE | bge-m3 模式 local/http/mock | mock | | BGE_RERANKER_MODE | reranker 模式 http/local/mock | mock | | LLM_MODE | LLM 模式 http/mock | mock | | MINERU_MODE | MinerU 模式 http/mock | mock | | CHUNK_MAX_LENGTH | 切片最大长度 | 500 | | RECALL_TOP_K / RERANK_TOP_K | 召回/重排数量 | 10 / 8 | > 默认为 mock 模式,零依赖即可跑通全链路。接入真实模型时填入对应 Key/地址并切换 MODE。 ## 核心接口(完整契约见开发文档第 5 章) - `POST /api/auth/login` 登录 - `GET/POST /api/org/...` 组织架构(部门/用户/角色) - `POST /api/knowledge/import` 文档导入 - `GET/PUT/DELETE /api/knowledge/units...` 知识单元 CRUD + 数据权限 + 版本 - `POST /api/knowledge/check-permissions` 权限鉴权 - `POST /api/ai/chat/stream` AI 问答(SSE 流式) - `GET /api/dashboard/...` 数据看板 - `GET/POST /api/settlement/...` FAQ 审核 / 知识缺口 ## RAGAS 评估 ```bash # 1. 生成测试集(LLM 全自动生成问题 + 参考答案) cd backend && .venv\Scripts\python -m evaluation.dataset.generate_testset --count 30 # 2. 跑评估(5 指标 → CSV 到 evaluation/results/baseline/) .venv\Scripts\python -m evaluation.runner.run_ragas --version baseline # 3. 分析并优化(改 prompts/query_prompt.py 或切片参数) # 4. 复评(CSV 到 evaluation/results/optimized/,旧版不删) .venv\Scripts\python -m evaluation.runner.run_ragas --version optimized # 5. 对比分析 .venv\Scripts\python -m evaluation.optimize.analyze ``` 5 指标:faithfulness / answer_relevancy / context_precision / context_recall / answer_correctness。 ## 部署到腾讯云 ```bash git push # 服务器上 git pull docker compose up -d --build ``` 算力服务器接口:bge-m3 `POST /embeddings`、bge-reranker `POST /v1/rerank`,通过 `.env` 的 `BGE_M3_URL` / `BGE_RERANKER_URL` 配置。