教程深度场景内容10 分钟阅读

私有化部署企业知识库:组件拓扑、数据流与出站边界怎么定

从组件拓扑、向量库选型、六类出站源三层说明私有化部署的数据边界到底由什么决定,给出哪些环节可换成内网组件、采购前应逐项确认的数据流清单,以及用威胁用例验证出站策略的方法。

私有化部署企业知识库的组件拓扑、数据落点与六类出站边界示意图
私有化部署企业知识库的组件拓扑、数据落点与六类出站边界示意图

「支持私有化」是一个采购勾选项,不是一条数据边界。真正决定数据走到哪里的,是这套系统由哪些组件构成、每个组件部署在谁的网络里、以及有几条链路会在运行时向外发起请求。

一次典型的分歧是这样发生的:企业方在安全评审里写下「数据不出域」,供应商回答「支持私有化部署」,双方都认为达成了一致;直到 POC 阶段抓到一条指向公网的模型调用,才发现两边说的是两件事。这类返工的代价不在技术,而在评审要重来一遍。

本文把私有化部署拆成三件可以逐项确认的事:组件拓扑、向量库选型、出站源清单,并给出一份可以直接放进安全评审材料的数据流确认表。文中架构与组件口径来自官方公开资料,核验日 2026-07-20


1. 现状与问题:分歧不在「私有化」,在组件粒度

国内企业提出私有化诉求的动因通常有三类:合规审查要求数据留在自有环境、行业主管单位对外部服务有明确限制、公共 AI 工具无法满足内部数据的使用边界。三类动因都很清楚,但落到执行时常见三个卡点。

第一个卡点是把「部署位置」当成了「数据边界」。 系统装在自己的机房,不等于运行时不产生任何出站请求。生成用的大模型可能仍在公网、复杂文档的增强解析可能仍在外部服务、插件与连接器可能仍要访问第三方接口。部署位置只决定了数据静态存放在哪里,出站策略才决定数据动态流向哪里。

第二个卡点是没有把组件拆开看。 一套知识库问答系统不是一个进程,而是数据库、向量库、对象存储、模型服务、解析组件、插件等多个部件的组合。评审时如果只问「能不能私有化部署」,得到的答案必然是「能」;只有逐个组件问「这一个部署在哪、它会不会外连」,才能得到可写进合同的答案。

第三个卡点是把规格问题和边界问题混在一起谈。 并发能力、响应速度、知识库规模、文件处理能力、工作流执行时长与模型调用稳定性,都取决于部署规格、模型服务、数据库、向量库、队列与网络环境——这些是资源问题;数据流向是边界问题。两者在会议里经常被混成一句「私有化性能行不行」,结果两个问题都没有结论。


2. 可落地拆解:三步把边界定下来

2.1 第一步:把组件拓扑画出来

官方 Docker 架构里,各类数据的落点是分开的:

组件承担什么默认形态可否换成内网组件
MongoDB存储非向量数据(应用配置、会话、知识元数据等)随部署一并落在企业自有服务器本就在内网,由企业自选实例与备份策略
向量数据库存储向量数据PostgreSQL、Milvus、OceanBase 或 SeekDB 四选一全部可部署在内网
对象存储存放原始文件与产物由企业选择可换成内网对象存储
模型服务向量化与生成可接入本地模型,也可调用外部 API是出站与否的第一决定项
解析与插件组件文档解析、第三方工具调用部分能力依赖外部服务需逐个插件确认

这张表的价值在于:它把「数据存在哪」和「计算发生在哪」分成了两列。 前者在私有化部署下基本可控,后者才是需要逐项决策的部分。数据最终存放位置取决于企业选择的数据库、对象存储、模型服务、插件与网络拓扑——这句话应当原样写进评审材料,因为它把责任边界说清楚了。

2.2 第二步:向量库四选一按三个依据决定

四个可选项不存在通用最优解,选择依据按优先级排列是:

  1. 现有运维栈里已经在用哪一种。 已经有成熟的 PostgreSQL 运维能力时,继续用它的综合成本通常最低——备份、监控、扩容、值班都不需要新建能力。
  2. 预计的向量规模与增长速度。 文档总量、月新增量与检索并发共同决定这一项;规模评估应基于真实业务量,而不是先选组件再倒推。
  3. 团队熟悉程度与故障处置能力。 出问题时能不能自己定位,比基准测试上的差距更影响可用性。

切换向量后端有迁移成本,因此这个决定应当在 POC 阶段按预期规模定下来,而不是上线后再调整。

2.3 第三步:逐项列出六类出站源

这是整篇文章里最需要逐条落笔的一节。私有化部署下仍可能产生出站请求的来源有六类,评审时应当逐项给出结论,而不是笼统写一句「不出域」:

#出站源什么情况下会发生内网替代方案确认责任方
01外部模型 API生成或向量化调用公网模型服务接入本地部署模型;可按节点分别指定企业 IT + 供应商
02OCR 与增强解析扫描件、复杂版式走外部解析服务使用本地解析路径,接受解析质量的取舍业务方 + 供应商
03插件插件调用第三方工具接口逐个插件确认;不需要的不启用企业 IT
04连接器与外部知识源、协作工具同步只连内网数据源企业 IT
05版本更新拉取镜像与升级包走内网镜像仓库,离线导入企业运维
06遥测运行状态上报按部署形态确认是否关闭供应商书面确认

同一套应用可以按工作流节点分别指定模型,因此第 01 项不必在「全本地」和「全外部」之间二选一:向量化与生成走本地模型、只有少量复杂推理走外部 API,是数据敏感场景里的常见组合。真正需要写清楚的是分级规则——哪一类数据允许进入哪一类模型。


3. 边界与前提:三件必须提前说清的事

第一,不能把私有化直接等同于「数据绝不出域」。 上面六类出站源逐项确认完成之前,这类表述都不成立。正确的写法是给出数据流图、组件位置与出站策略三份材料,让安全评审基于事实判断,而不是基于承诺判断。

第二,规模与性能取决于部署与资源配置,不存在一份通用配置表。 稳态并发、峰值并发、每秒请求数、每分钟 Token 吞吐、指定硬件下的解析与检索延迟、可用性与恢复目标这几类指标,当前都应保持「未公开 / 待 POC / 待合同」的状态,由 POC 实测和合同条款确定,而不是在选型阶段填一个数字进去。

第三,有几项企业治理能力目前确实做不到。 如果同时存在外部同步与部门信息隔离的需求,并且对审计、合规、运维监控、成本管理有非常严格的要求,这类组合需求当前是无法完整满足的。这一点应当在选型阶段作为硬约束书面提出,而不是留到上线后指望通过二次开发补齐。

此外,知识库的回答质量不由部署形态决定。检索无法保证百分之百准确召回,效果会受文档质量、切分方式、更新频率、权限边界、检索配置与模型能力共同影响;私有化解决的是数据边界问题,不解决知识质量问题。


4. 验证方式:一份清单加一组测项

数据流确认清单(建议随安全评审材料一并提交,逐行签字):

确认项结论应写成什么样
非向量数据落点具体实例、所在网段、备份策略
向量数据落点选定的向量库、所在网段
原始文件落点对象存储位置与保留周期
生成模型位置本地 / 外部,若为外部则写明数据分级规则
向量化模型位置同上
解析路径本地解析或外部增强解析,附对应数据类型
已启用插件清单逐个列出其出站目标
连接器清单逐个列出同步方向与数据范围
升级方式在线拉取或内网镜像仓库
遥测状态开启 / 关闭,附书面依据

POC 阶段的安全与治理测项,应使用同一套威胁用例与权限矩阵,产出用例结果、审计记录与整改项三份证据:越权访问、SSRF、密钥泄漏、沙箱逃逸、租户隔离、审计覆盖。其中租户隔离与越权召回这两项建议用真实的组织结构做测试——按部门拆分知识库、用不同角色账号逐条实测「应该看不到的内容是否真的检索不到」,并核对日志。

出站策略本身也应实测:在测试环境开启出站白名单,只放行确认过的目标地址,然后跑一遍完整业务链路(上传文档 → 解析 → 向量化 → 检索 → 生成 → 渠道回复),观察是否有被拦截的请求。被拦下来的每一条,都是上面六类清单里漏掉的一项。


5. 下一步

私有化部署的评审顺序建议是:先画组件拓扑 → 再定向量库 → 再逐项确认六类出站源 → 最后用威胁用例与出站白名单实测。这个顺序的好处是每一步的结论都能直接写进评审材料,不需要返工。