1、立项原因:企业内部制度、流程、技术文档分散在各部门网盘和个人电脑,员工查"报价审批流程""代码仓库地址"这类问题只能问人或翻群聊,知识复用率低、新人上手慢;通用大模型问答存在幻觉,把内部资料上传公有云 SaaS 又有数据泄露风险,金融、政企、制造等行业普遍要求"数据不出内网"。本项目基于私有化部署的 Dify 构建企业级内网 RAG 知识库问答系统,整套链路(应用、Dify、MySQL、Redis、MinIO)全部 Docker 化部署在内网,私有文档向量化入库后,员工在内网对话即可获得有据可查、可溯源原文的精准答案。
2、行业场景与业务背景:适用于对数据安全敏感、只允许内网查询的金融、政企、制造、医疗等知识密集型行业。各部门维护自己的知识库,普通员工仅能检索本部门授权的知识库,超级管理员全局管理;系统对接企业已有部门/用户/角色组织架构,按部门与个人统计问答次数、Token 消耗并做配额限制,操作全程审计留痕,满足数据安全与合规要求。
1、功能模块:
- 工作台:今日问答数、知识库/文档总数、Token 消耗、活跃用户、索引失败数等指标卡片,近 7 天问答趋势图表与问答流水
- 知识库管理:列表卡片/表格双视图、按部门创建/复用 Dify 数据集、批量重建索引、专属授权
- 文档管理:支持 PDF/Word/Excel/PPT/TXT/Markdown 等 12 种格式、单文件最大 800MB 分片上传、SHA256 秒传去重、SSE 实时进度、待上传/上传中/已入库/索引失败状态分栏、批量删除
- 智能问答:SSE 流式对话、多轮记忆、引用来源卡片(相关度分数、查看原文)、Token 统计、会话管理、右下角悬浮助手主动提醒、推荐问题
- 问答记录:历史会话检索、Token 消耗明细
- 系统管理:部门/用户/角色/权限管理,按权限码动态生成路由菜单
- 审计日志:登录/权限变更/文档/知识库/问答/配置六类日志,多条件筛选与 Excel 导出
- 系统配置:Dify 服务配置与连通性测试、模型优先级、配额管理、系统参数
- 全局能力:全局搜索、接口限流、临时文件定时清理
2、主要功能描述:用户登录后按部门与角色权限访问知识库,上传文档自动完成 MinIO 存储、内网 Dify 向量化入库与索引状态跟踪;提问经权限过滤检索本部门知识库,由内网私有化部署的大模型生成带引用溯源的回答并流式返回,消耗计入配额并写入审计,形成"文档入库—检索问答—用量管控—操作审计"闭环。系统整体部署于企业内网,文档与向量数据全程不出内网。
1、我负责的任务:独立负责全栈设计与开发——Dify 及 MySQL/Redis/MinIO 的 Docker 私有化部署与内网联调、前端权限动态路由、问答 SSE 流式渲染与引用卡片、文档分片上传与进度可视化;后端认证授权、知识库/文档/问答/审计/配置核心服务、Dify API 集成、MinIO 存储、Redis 配额限流、定时清理任务,以及整体部署联调与性能优化。
2、技术栈与架构:后端 Java 21 + Spring Boot + Spring AI + MyBatis-Plus + Sa-Token + Tika + EasyExcel;前端 Vue 3.5 + TypeScript + Vite + Element Plus + Pinia + ECharts;基础设施:Dify 开源版 Docker 私有化部署、内网私有化大模型推理服务(vLLM 部署开源模型)、MySQL、Redis、MinIO,全链路容器化交付。架构为前后端分离 + 私有化能力编排:内网 Dify 负责向量化检索,内网大模型负责生成,MinIO 负责对象存储,Spring AI Advisor 切面统一做配额扣减与审计埋点。
3、亮点:全栈一键 Docker 化交付,数据不出内网满足合规刚需;按部门自动创建/复用 Dify 数据集实现多租户知识隔离并强校验防越权;Redis 动态代理强制 key 前缀校验杜绝脏写;MinIO key 统一前缀封装,SHA256 秒传去重+分片断点续传+SSE 进度推送;三级配置解析(DB→yml→环境变量)支持运行时热切换模型;Caffeine 有界缓存避免内存膨胀。
4、难点:SSE 连接生命周期管理防泄漏、Dify 异步索引轮询与失败重试、引用分数与原文定位对齐、配额并发扣减一致性(Redis 原子计数+节流)、大文件分片合并与临时文件清理的幂设计。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论