金山文档SKILL功能更新,引入知识库功能

快乐小子新
快乐小子新 Lv.2 潜力创作者

Lv.2潜力创作者

在金山文档 SKILL v1.3.3 版本中,个人知识库(kwiki)作为独立的功能模块被正式纳入。它提供了一套完整的 API 工具集,覆盖知识库的创建、浏览、内容管理、文件归档和整理分类等全流程操作。知识库模块专注于结构化的知识管理场景——将分散的文档、资料和网页内容组织到独立的知识空间中,实现高效的归档、检索与协作。

本文将基于 kwiki_references.md 参考文档,对这套知识库能力进行完整解析。


一、知识库模块定位与能力边界

与通用文档管理的区别

金山文档 SKILL 本身已经提供了 list_filessearch_filescreate_filemove_file 等通用接口,可以管理云空间中的各类文档。知识库模块(kwiki.*)与之的区别在于:

维度

通用文档管理

知识库模块

组织方式

平铺的文件夹层级

独立的知识空间 + 文件夹层级

标识体系

file_id + drive_id

kuid(知识库统一标识)

适用场景

日常文档操作

结构化知识管理、团队资料沉淀

导入能力

上传本地文件

支持导入云文档副本/快捷方式

链接格式

https://www.kdocs.cn/l/xxx

https://www.kdocs.cn/wiki/l/xxx

核心能力清单

知识库模块提供 9 个专用工具,分为三个层级:

  • 空间管理层:创建、查询、修改、关闭知识库

  • 内容浏览层:列出目录、搜索库内文件

  • 内容操作层:导入云文档、新建文件/文件夹、删除条目


二、空间管理:知识库的完整生命周期

创建知识库 — kwiki.create_knowledge_view

创建一个新的知识库空间,支持设置名称、描述、封面和可见状态。

必填参数

参数

类型

说明

space_name

string

知识库名称

status

number

可见状态,1 表示正常公开

可选参数desc(描述)、img(封面图 URL)、source(创建来源标识)、role_id(创建者角色)。

创建成功后返回三个核心标识:

返回字段

说明

格式特征

drive_id

驱动盘 ID

数字字符串,如 8001234567

group_id

群组 ID

数字字符串,如 6200987654

kuid

知识库唯一标识

0s_ 前缀,如 0s_8001234567

这三个标识在后续的所有操作中都会用到。文档要求创建后执行后置验证——调用 get_knowledge_view 核对返回值是否正确。

查询知识库 — listget

两个查询工具各有侧重:

kwiki.list_knowledge_views — 分页列表查询,支持关键字搜索。当用户只提供知识库名称时,这是定位目标知识库的首选方式。返回列表中包含每个知识库的名称、描述、封面、文件数、成员数和更新时间。

kwiki.get_knowledge_view — 查询单个知识库的详细信息。支持两种查询方式:按 drive_id(精确)或按 name(模糊匹配)。如果用户同时给了名称和 ID,优先使用 ID。若名称匹配到多个知识库,需要进一步确认。

更新知识库 — kwiki.update_knowledge_view

支持修改名称、描述、封面和状态。cover_imgstatus 在后端是必传字段。如果只想修改名称,需要先通过 get_knowledge_view 获取当前的 cover_imgstatus,再连同新名称一起回传。

关闭知识库 — kwiki.close_knowledge_view

不可逆操作。操作前必须向用户确认目标知识库的名称和 ID,并通过 get_knowledge_view 执行前置检查。关闭后知识库数据将被永久删除。


三、内容浏览:从目录到文件

列出目录内容 — kwiki.list_items

这是知识库内容浏览的核心工具,可以列出根目录或任意子文件夹下的内容。只需传入目标目录的 kuid 即可。

返回结果是一个文件和文件夹的混合列表,每个条目包含以下关键字段:

字段

说明

kuid

知识库内唯一标识(0l_ 前缀表示文件/文件夹)

file_id

云文档系统的 file_id(用于通用接口如 read_file_content

title

文件/文件夹名称

doc_type

文档类型:o=智能文档, w=Word, p=PPT, s=Excel, i=图片, v=视频, folder=文件夹

link_id

分享链接标识,可用于获取在线链接

ctime

创建时间(Unix 时间戳)

size

文件大小(字节)

注意:**list_items 不返回 mtime(修改时间)**。如果需要按修改时间筛选文件,需要改用通用接口 list_files(drive_id=知识库drive_id, parent_id=file_id, order_by="mtime"),通过 file_idkuid 建立关联。

标识体系的使用规则

知识库模块使用了一套统一的标识体系,文档中有明确的经验规则:

  • 知识库本身的 kuid0s_ 开头

  • 知识库内文件和文件夹的 kuid0l_ 开头

  • kuid 仅用于知识库专属操作(delete_itemmove_itemsimport_cloud_doc 等)

  • 通用操作(如读取文件内容、重命名)需要使用 file_id

链接拼接规范

文档对链接拼接有严格的规范要求,不允许猜测:

  1. url 字段时https://www.kdocs.cn + data.url 原值拼接

  1. 只有 kuidhttps://www.kdocs.cn/wiki/l/${kuid}


四、内容操作:导入、创建与删除

导入云文档 — kwiki.import_cloud_doc

将已有的金山文档导入到知识库中。支持两种导入方式:

方式

说明

copy(默认)

导入副本,原文档不受影响

shortcut

创建快捷方式,指向原文档

参数中需要提供目标知识库/文件夹的 kuid,以及待导入文档的 file_idsgroup_id

需要注意:这个工具只能导入已有的云文档,不支持上传本地文件。本地文件需要通过通用接口 upload_file 上传。

新建内容 — kwiki.create_item

在知识库中创建新的文件夹或在线文档。支持的文档类型:

doc_type

类型

folder

文件夹

w

在线文字

s

表格

o

智能文档

p

演示文稿

d

轻维表

通过 kuid 参数控制创建位置:传入知识库的 kuid0s_)则在根目录创建,传入文件夹的 kuid0l_)则在指定文件夹下创建。

删除内容 — kwiki.delete_item

删除后进入知识库回收站,7 天内可通过通用接口 restore_deleted_file 恢复。支持删除文件夹(包括非空文件夹,会连带删除所有内容)。

文档要求执行删除前必须通过 list_items 确认对象名称和位置,并向用户确认。仅支持单个删除,批量操作需要循环调用。


五、典型工作流

5.1 本地文件归档到知识库

这是最常见的使用场景之一。完整流程:

  1. 定位知识库get_knowledge_viewlist_knowledge_views 获取 drive_id

  1. 定位目标文件夹(可选):list_items 逐层查找,不存在则 create_item(doc_type="folder") 创建

  1. 上传文件

  • 常规文件(docx/pdf/pptx/xlsx):upload_file(drive_id=, parent_id=, name=, content_base64=)

  • Markdown 文件:先 create_item(doc_type="o") 创建智能文档,再用 otl.insert_content 写入内容(超过 3000 字符需分段写入)

  1. 确认结果list_items 验证文件已成功归档

5.2 网页内容存入知识库

将网页文章保存到知识库有两条路径:

主流程scrape_url(抓取网页) → scrape_progress(轮询完成状态) → move_file(移入知识库) → get_file_link(获取链接)

降级流程(适用于 JS 渲染页面如公众号文章):通过浏览器抓取正文 → create_file 创建文档 → upload_file 上传到知识库 → move_file 移动 → get_file_link

5.3 知识库整理分类

当用户需要对知识库中的内容进行重新组织时:

  1. list_items 递归遍历全库,收集每个文件的 kuidtitledoc_type

  1. 按需通过 list_files(order_by="mtime") 获取修改时间信息

  1. 制定整理方案(新建分类文件夹、文件移动计划、待删除内容),提交用户确认

  1. 批量执行:create_item(创建文件夹)→ move_file(移动文件)→ delete_item(删除冗余内容)

5.4 跨库搜索

知识库的搜索能力需要借助通用接口 search_files

search_files(keyword="关键词", type="all", drive_ids=[目标知识库的drive_id列表])

通过 drive_ids 参数可以指定搜索范围——单个知识库或跨多个知识库检索。


六、工程实践要点

6.1 标识系统的正确使用

知识库模块中存在两套 ID 体系,正确区分至关重要:

  • kuid:知识库专有标识,用于 kwiki.* 系列操作(list_itemsdelete_itemimport_cloud_doccreate_item

  • file_id + drive_id:金山文档通用标识,用于通用接口(read_file_contentupload_filemove_filerename_file

两套标识之间通过 list_items 的返回结果建立映射关系——每次调用 list_items 都会同时返回条目的 kuidfile_id

6.2 操作约束链

文档为每个写操作定义了严格的前置/后置验证链路:

操作

前置检查

后置验证

创建知识库

get_knowledge_view 核对标识

更新知识库

get_knowledge_view 确认存在

get_knowledge_view 确认更新

关闭知识库

get_knowledge_view + 用户确认

删除内容

list_items 确认对象 + 用户确认

导入文档

list_items 确认导入

创建内容

list_items 确认创建

7.3 错误处理

文档定义了强制性的错误处理规则——遇到特定错误时必须立即提示用户,禁止尝试绕过:

错误码

原因

处理方式

403000006

当前为企业/团队账号,知识库接口仅对个人账号开放

提示切换至个人账号


金山文档 SKILL 的知识库模块(kwiki.*)提供了一套设计严谨的知识管理 API。从空间的生命周期管理(创建/查询/修改/关闭)到内容的精细操作(浏览/导入/创建/删除),9 个工具覆盖了知识库使用的主要场景。

几个值得注意的设计特点:

  1. 双标识体系kuid 用于知识库内部操作,file_id 用于通用文档操作,通过 list_items 建立映射

  1. 云文档优先导入import_cloud_doc 支持副本和快捷方式两种模式,让已有文档可以快速进入知识库体系

  1. 与通用接口的深度协同:知识库模块专注于空间和内容管理,文件读写、搜索、下载等能力复用通用接口,形成了清晰的职责分层

  1. 严格的操作约束:每个写操作都有明确的前置/后置验证要求,删除类操作强制用户确认,7 天回收站机制提供了容错保障

这套能力让 AI Agent 可以程序化地完成知识库的搭建、内容归档、分类整理等复杂任务,将原本需要手动操作的繁琐流程自动化。

北京
浏览 455
收藏
5
分享
5 +1
+1
全部评论