KnowWork 是基于 DeepSeek Harness(下文简称 DSH)的企业私有化 Agent 平台。v0.0.3 今天发布,这一版带来多工作空间、IM 机器人和问答大盘。同时我们把一件一直没说透的事讲清楚:KnowWork 哪些开源、哪些闭源,为什么这样划。
先给结论:
智能体底座全部开源,Apache-2.0,可以商用、改名、交付。知识库和记忆闭源,属于商业版。
开源的是智能体底座,商业版是知识库、知识运营、多空间管理和在做的长期记忆,两边靠知识源协议和扩展插槽衔接
开源的是哪一层
开源仓库里是让 Agent 在企业里跑起来的那一层,一个团队拿去就能完整用起来:
•运行:DSH 内核、技能、工具与 MCP 接入、每个会话一个 Docker 沙箱、审批、运行记录、用量统计;
•多租户与权限:数据从第一天起就按工作空间存,每张表按空间开了数据库行级安全。空间角色分所有者、管理员、成员。技能、工具、知识源都可以授给个人、用户组或部门,下级部门沿部门树继承;
•技能隔离:空间技能按授权给人用;个人技能只有本人看得到、用得到,别人连有没有都不知道;
•接知识:知识源协议、KnowFlow 连接器、会话附件解析。任何知识库只要实现这套协议,都能接进来;
•对外接口:界面上能做的事,都有对应的 HTTP 接口,部署后打开
/api/docs就是中文接口文档;对外的知识检索接口同时以 MCP 提供;•越用越好的那一圈数据:赞踩、每轮回答完判断知识库答没答上、问答大盘、能按问题筛的运行记录,v0.0.3 都在开源这边。
最后一项值得多说两句。智能体要越用越好,先得知道自己哪里没做好:哪些问题没答上,哪些回答被点了踩,查了知识库却一条都没引用。这些信号我们放在开源这边,让每个用 KnowWork 的团队都能看见自己的智能体在哪里出错。拿这些信号去改进智能体,是我们接下来要做的自进化。
闭源的是知识库和记忆
商业版在开源版之上加两样东西:内置知识库,和正在做的长期记忆。
内置知识库包括文档解析、分块、混合检索与重排、引用定位与原文高亮、元数据与标签、新旧版本识别、知识缺口、多跳检索、视觉检索、数据源同步、导出导入。我们判断一项功能放哪边,用的是同一条线:
接口和协议开源;决定结果好坏的部分,放商业版。
为什么闭源知识库
知识库和智能体框架一样,是一等公民
大多数智能体平台把知识库当成一个普通组件。它是工具箱里的一个插件,上传文件、切块、向量检索、返回前几条,配好就不管了。智能体框架是主角,知识库是配角。
我们的看法不一样:
知识库是和智能体框架同等重要的一等公民。框架决定智能体能做什么,知识库决定它说的对不对。
在企业里,后者往往更要紧。员工问「出差住宿标准是多少」「这个合同的违约条款和模板差在哪」,答案不在模型里,在企业自己的文件里。模型再强,拿到的片段是错的、旧的、残缺的,回答就是错的,而且错得很像对的。一个会写报告、会跑脚本、却把旧制度当新制度讲的智能体,在企业里是用不起来的。
而且框架这一层正在变成基础设施。DSH 这样的官方运行时,工具调用、技能、子 Agent 都已经做好,开源社区也在快速补齐其余部分。两个团队用同一个运行时、同一个模型,做出来的智能体差别会越来越小。拉开差距的是知识。
所以在 KnowWork 里,知识库不是挂在框架上的一个工具,而是和框架并列的一层:
•有自己的协议:知识源协议是一套单独的正式接口,检索、阅读、列文档、取原图都有定义,按章节读、文档内查找、按元数据过滤这些能力由知识源自己声明支不支持;
•智能体知道有哪些知识:每一轮都会拿到一份知识库目录,知道该去哪个库查,不靠猜;
•权限一样严:知识库和技能、工具一样按部门授权,智能体只查提问人能看的库;
•引用可核对:回答里的每个编号都对应这一轮真实取回的证据,点开就是原文那一处;
•每一轮都被检验:答完判断知识库答没答上,没答上的进知识缺口,检索过程进运行记录。
两层要一起做好,智能体才真的可用。框架这一层我们开源给大家;知识这一层,就是我们要投入最多、也最想做深的地方。
常见做法里知识库是工具箱里的一个插件;KnowWork 里知识库和智能体框架并列,一个决定能做什么,一个决定说的对不对
难的是那些细节,它们来自多年踩坑
把文件切块、存进向量库、按相似度召回,一个下午就能搭出来,演示效果也不差。真正上线后,问题都出在细节里:
• 扫描件、跨页表格、Word 里的修订和批注,解析错了,后面全错;
• 一条规定被切成两块,只召回前一半,回答就只有一半;
• 2023 版和 2025 版制度同时在库里,说法不一样,模型挑了旧的;
• 答案分散在立项书和采购合同里,单靠相似度找不全;
• 营收趋势图、架构图里的信息,文字检索根本找不到;
• 引用要能点开就定位到原文那一处,不然员工没法信。
这些问题每个都有解法,但解法都是在一个个真实客户的文件上试出来的。KnowFlow 做私有化知识库这几年,踩过的坑基本都在这里。KnowWork 的内置知识库就是在这些经验上重写的:
• 解析用 MinerU,配合 Popo 还原文档结构,给智能体一份可靠的目录;
• 检索把语义、关键词和同义词放在一起召回,再统一重排,命中处前后的内容补齐;
• 多跳检索在入库时抽出实体与事件,提问时沿着共享的实体串起几份文档;
• 视觉检索把 PDF、PPT 的每一页当成图来找。
这是我们的核心积累,也是商业版的价值所在。
知识库不是建完就完,要有人运营
更重要的一点:知识库不是一个上线就结束的产品。企业的资料每天在变,制度会改版,新业务会冒出新问题,有些问题库里根本没有资料。一个没人运营的知识库,半年后就会变成答非所问的旧资料堆。
所以内置知识库从一开始就围着「运营」来做:
•知识缺口:每轮回答完,由模型判断知识库答没答上;没答上的问题会列到知识库页,写着缺什么、智能体试过哪些查法、查到了哪些文档。维护的同事照着补资料就行,不用猜员工在问什么;
•新旧版本识别:上传时比对文件名和正文,提示哪份是哪份的新版,由人确认;回答时以新版为准,并说明依据;
•元数据与标签自动抽取:按定义好的字段自动填,人工填过的不覆盖。检索时可以只查某个部门、某年生效的文件;
•检索测试:补完资料,马上用同一个问题试一下,看各路召回和重排的结果;
•后台任务看得见:每份文档的解析、抽取、建索引走到哪一步,失败了是什么原因,都写在文档详情里。
知识缺口:没答上来的问题、缺什么、智能体试过的查法和查到的文档
这一圈连起来就是:员工提问,判断答没答上,列出缺口,补资料,检索测试验证,下一次答上。开源那边负责把信号记下来,商业版的知识库负责把这一圈跑通。
知识运营的一圈:员工提问、判断答没答上、知识缺口、补资料、检索测试,下一次答上
知识库的价值,一半在建,一半在运营。
不闭源,我们没法长期把底座做好
还有一个很实际的原因。开源的底座要长期维护:跟着 DSH 升级、修安全问题、适配各家模型、回应社区的 Issue,这些都需要一支稳定的团队。商业版的收入,是开源底座能长期做下去的前提。
闭源知识库也不会把谁锁住。知识源协议是开源的,已经在用 RAGFlow/KnowFlow 的团队可以直接接;自己有知识库的,实现这套协议也能接进来。用不用我们的知识库,由你决定。
v0.0.3 新功能
多工作空间
企业里常见的情况是:财务、人事、销售各有各的资料和人,彼此不该看见,但公司制度这类资料又要大家都能用。v0.0.3 用多个工作空间来解决:
•一个部门一个空间:系统管理员新建空间,指定一位所有者;空间里的成员、部门、用户组和授权,由所有者和管理员自己管,彼此隔离;
•空间之间共享知识库:全公司都要用的资料放在一个空间里维护,只读共享给指定空间或全部空间(以后新建的空间也算),不用复制。接收方的管理员再把它授给自己的人,实际权限取两边的较小者;来源一撤销,对方立即读不到;
•系统管理员只有一个:负责建空间、配置全平台共用的模型与文档解析,可以进入任何空间处理问题;
•一个人可以属于多个空间,在用户菜单里切换。
每个部门一个空间,各管各的人和授权;公司制度在一个空间里维护,只读共享给其他空间;模型与文档解析全平台共用
空间管理:每个部门一个空间,所有者各管各的
开源与商业版在这里的分工:按空间隔离的数据、接口、权限和系统管理员都在开源版里;新建空间的入口和跨空间共享知识库由商业版提供。开源版始终只有一个默认空间。
IM 机器人
员工在企业微信、飞书、钉钉里直接向智能助手提问,回答一边生成一边更新,引用了知识库的图会在答完后一起发出来。机器人只查给它选的知识库。三家都走长连接,不需要公网回调地址,内网部署也能用。
问答大盘与运行记录
管理后台「运营」里能看到提问轮数、提问人数、完成率、估算费用和每天的趋势。需要关注的轮次会单独列出来:失败的、被点踩的、检索了却没引用的、知识库没答上的。每个数都能点进对应的运行记录,看这一轮是怎么查的、各路召回了什么、怎么重排的。
问答大盘:提问量、完成率、需要关注的轮次,按工具与知识库切分
接口文档
KnowWork 不想只做一个聊天窗口,它要能接进企业已有的系统:OA 里嵌一个制度问答,客服系统调它查产品资料,别的 Agent 通过 MCP 查知识库。v0.0.3 把接口文档做成了部署就有的页面,打开/api/docs就能看到:
• 每个接口都有中文标题,按对话、技能、工具、成员与权限、问答大盘、运行记录等功能分组;
• 程序调用用 API Key,在「个人设置 → API Key」里新建,建的时候选权限范围,只能调范围内的接口,权限跟着建 Key 的人走;
• 对外知识接口三个:列出能查的知识库、检索、阅读原文,权限范围是
knowledge:read;同样的能力也以 MCP 提供,地址是/api/v1/mcp;• 页面里可以填上 Key 直接试调;页面用到的资源随服务一起发,内网部署也能打开,不依赖外网 CDN。
部署后打开 /api/docs:中文接口文档,对外知识接口也能通过 MCP 调用
接口文档和这些接口都在开源版里。装了商业版的知识库以后,文档里会多出知识库的接口,按文档、元数据与标签、检索、数据源、导出导入、知识缺口分组。
知识库(商业版)
• 元数据与标签自动抽取;
• 新旧版本识别;
• 知识缺口;
• 多跳检索与图谱,可选部署;
• 视觉检索,可选部署,需要一张 GPU 跑 ColPali;
• 后台任务看得见。
多跳检索的图谱里能看到从文档里抽出的实体和事件,也可以拿来检查抽取质量。
图谱:从文档里抽出的实体与事件
其他
• 侧栏搜索对话,Ctrl/⌘ + K;
• 智能体可以把知识库里的原文件、单张图、页图放进会话沙箱,再看图里的细节;
• 检索结果带文档日期,几份文件说法不一致时以较新的为准,并说明依据。
升级要注意
先换上 v0.0.3 的部署文件,再改版本号。v0.0.1、v0.0.2 用 docker compose 部署时,会话沙箱其实没有工作:编排文件里漏了沙箱的接口地址,模型写文件、执行命令都会报「沙箱服务暂时不可用」。这一版的编排文件补上了,只改版本号的话,沙箱照样用不了。
这一版有几处不兼容的改动:
• 对话接口的路径移到了
/api/workspaces/{workspace_id}/下面;• 模型和文档解析改为全平台共用一份,只有系统管理员能配;
• 「只读成员」并进了「成员」。
完整的升级须知见仓库里的 CHANGELOG。
一起来做
如果你手里有实际业务想用 Agent 来做,欢迎联系我们。我们正在招募共创客户,一起做企业私有化 Agent 产品。
想试用商业版的内置知识库,也可以联系我们申请授权。
KnowWork 和 KnowFlow、KnowFlow Analytics、KnowEval 同属一个产品家族。KnowFlow 管知识,KnowFlow Analytics 管数据,KnowEval 管评测,KnowWork 管干活。
项目地址 https://github.com/knowflow-ai/KnowWork ,提 Issue 和 PR,也欢迎点个 Star 和关注KnowFlow 企业知识库。