企业内部知识分散在文档、聊天记录和邮件中,员工查找答案耗时低效。本项目旨在搭建一个轻量级智能问答系统,通过自然语言检索企业内部知识库,降低信息获取成本,提升团队协作效率。
点击空白处退出提示
企业内部知识分散在文档、聊天记录和邮件中,员工查找答案耗时低效。本项目旨在搭建一个轻量级智能问答系统,通过自然语言检索企业内部知识库,降低信息获取成本,提升团队协作效率。
文档上传与管理:支持 PDF、Word、Excel、TXT 等多种格式文档上传,自动解析提取文本内容并建立索引,支持文档分类和版本管理。
智能问答:用户输入自然语言问题,系统通过语义匹配和全文检索从知识库中定位最相关的内容,返回精准答案并标注来源出处。
知识库维护:管理员可对已入库的知识内容进行编辑、删除、更新,支持手动补充问答对,持续优化知识库质量。
全文检索:支持关键词、短语、多条件组合检索,结果按相关度排序,高亮显示匹配位置,方便快速定位。
权限管理:支持多级角色权限,不同部门/员工只能访问授权范围内的知识内容,保障企业信息安全。
负责任务:独立完成系统整体架构设计、后端API开发、前端界面搭建、文档解析引擎集成、以及Docker容器化部署全流程。
技术栈:后端使用 Koa2 + Node.js 构建 RESTful API,前端采用 HTML5 + CSS + JavaScript 原生开发(无额外框架依赖,轻量高效),文档解析集成 mammoth.js(Word)、pdf-parse(PDF)、txt-reader 等库,向量化存储使用本地文件索引,全文检索引擎集成 FlexSearch,部署采用 Docker 容器化 + docker-compose 编排。
架构:系统采用前后端分离架构。后端分为三层——路由层(API 网关)、服务层(问答服务、文档解析服务、检索服务)、数据层(本地文件存储 + JSON 索引)。前端为单页应用,通过 fetch API 与后端通信。搜索流程为用户输入 → 语义分词 → 多路召回(全文检索 + 关键词匹配)→ 排序融合 → 返回结果并高亮展示。
亮点:1)轻量无外部依赖,不依赖 Elasticsearch 等重型中间件,开箱即用;2)多格式文档统一解析管道,PDF/Word/TXT 自动识别并提取正文;3)结果溯源——每条答案附原文段落引用,用户可一键跳转查阅原文。
难点:1)中文分词准确度对检索质量影响大,经过多轮词典扩充和分词器调优才达到可用水平;2)小文件场景下全文检索性能尚可,但单文档超 100 页时索引构建和检索速度下降明显,通过分块索引和懒加载策略缓解。



评论