本 Skill 是连接「原始文档」与「Coze 智能体高效检索」之间的核心管道。它不只是格式转换器,而是一套完整的知识工程流水线,把任意 PDF/DOCX 文档加工成 Coze Bot 能「真正理解并精准检索」的结构化知识单元。
Coze 知识库的检索质量不取决于文档数量,而取决于文档的结构化程度和语义密度。原始文档直接导入存在以下问题:
| 问题 | 后果 |
|---|---|
| ------ | ------ |
| 文档过长无分块 | Bot 检索时上下文窗口溢出,丢失关键信息 |
| 缺乏元数据标注 | Bot 无法按分类/标签/实体过滤,检索泛化能力差 |
| 表格混在段落中 | 结构化数据检索精度极低 |
| 无关键词标注 | 语义检索缺乏锚点,匹配度下降 |
| 无多级摘要 | Bot 无法快速判断文档相关性 |
本 Skill 系统性解决上述问题。
基于 RAG 检索最佳实践(Redis/Databricks/Coze官方文档)的 6 项重大改进:
| 改进项 | 说明 | 效果 |
|---|---|---|
| -------- | ------ | ------ |
| 🔤 内联检索权重标记 | 自动添加 [重要] [定义] [示例] [参数] 标记 | 关键内容在 Coze 语义检索中获得更高匹配权重 |
| 🔗 语义块重叠窗口 | 相邻 chunk 间 12% 重叠,递归分隔符拆分 | 防止关键信息在边界处断裂,提升召回率 |
| 🔀 块间交叉引用 | 自动发现共享关键词的关联块,生成「参见」链接 | 构建知识网络,提升深度思考泛化能力 |
| 📊 文档质量评分 | 从结构/关键词/实体/FAQ/摘要 5 维度评分 (0-100) | Bot 可优先检索高质量文档 |
| ❓ FAQ 增强 | 新增否定条目 + 同义多说法 + 类型标签 | 覆盖「不支持/不能」类问题,匹配更多用户问法 |
| 🌐 语言检测 + 更多元数据 | chunk_index/total_chunks/parent_section/language/quality_score | 丰富 Coze 可用的过滤和排序维度 |
以下关键词或短语出现时,立即加载并执行本 Skill:
| 中文触发词 | 英文触发词 |
|---|---|
| ----------- | ----------- |
| 整理知识库 | coze kb organize |
| 汇总文档 | knowledge base format |
| 文档转知识库 | doc to knowledge base |
| Coze知识库处理 | coze kb processing |
| 知识库格式化 | kb formatting |
| 文档预处理 | document preprocessing |
| 知识库增强 | kb enhancement |
| 文档结构化 | document structuring |
| 导入扣子知识库 | import to coze kb |
| 知识库清洗 | kb cleanup |
| 批量处理文档 | batch process documents |
原始文档 (PDF/DOCX)
│
▼
【阶段一:格式转换】 doc_converter.py
├── PDF → 文本提取(PyMuPDF,保留段落/表格/图片描述)
├── DOCX → 文本提取(python-docx,保留标题层级/表格/列表)
└── 输出:原始结构化 Markdown
│
▼
【阶段二:知识增强】 kb_enhancer.py
├── 语义分块:按主题边界智能切分(非固定长度)
├── 元数据生成:标题、分类、标签、实体、关键词
├── FAQ 生成:从内容中抽取/生成 5-10 个问答对
├── 多级摘要:文档级摘要 + 章节级摘要
├── 实体标注:人名/地名/技术术语/产品名/版本号
└── 输出:增强版 Markdown
│
▼
【阶段三:双格式输出】
├── MD 输出:可直接导入 Coze 知识库
└── DOCX 输出:md_to_docx.py 生成格式化的 Word 文档
调用 scripts/doc_converter.py,支持单文件和批量处理:
python scripts/doc_converter.py --input <文件路径> --output <输出目录>
python scripts/doc_converter.py --batch <文件夹路径> --output <输出目录>
DOCX → MD 映射:
| DOCX 元素 | MD 输出 |
|---|---|
| ----------- | --------- |
| Heading 1 | # 标题 + 自动编号 |
| Heading 2 | ## 二级标题 |
| Heading 3-4 | ### / #### |
| 段落文本 | 保持原文,合并断行 |
| 表格 | Markdown table(对齐列宽) |
| 编号列表 | 1. / 2. 有序列表 |
| 项目符号 | - / * 无序列表 |
| 图片 | !描述 占位 |
| 粗体/斜体 | 粗体 / 斜体 |
| 超链接 | 文本 |
PDF → MD 映射:
[图片: 描述]这是提升 Coze Bot 检索精度的关键阶段。
不使用固定长度切分,而是按语义边界智能分块:
识别规则:
1. 以 ## 二级标题为分块边界
2. 单块最小长度:100 字(过短合并到上一块)
3. 单块最大长度:1500 字(超长在段落边界切分)
4. 表格独立成块,不切断
5. 列表保持完整,不被分断
每块输出格式:
<!-- chunk:id=001 | type:概述 | entities:Unreal Engine 5,AI插件 | keywords:UE5,AI辅助开发,编辑器插件 -->
## [分块标题]
[内容]
每份文档在开头插入 YAML 元数据头部:
---
doc_id: "游戏产品-萌坦大作战"
title: "萌坦大作战游戏设计文档"
category: "游戏产品"
subcategory: "坦克对战"
tags: ["卡通风格", "坦克对战", "无尽模式", "UE4", "排行榜"]
entities:
- 人物: ["独立游戏Sun", "孙天愉"]
- 引擎: ["虚幻引擎4"]
- 阵营: ["帝国军统", "反抗军", "军团"]
- 等级: ["Probationary", "Elite", "Guardian", "Master", "God of War", "Chief", "Chief Master"]
summary: "一款卡通风格的坦克对战游戏,包含三大阵营、七级等级系统、五大连杀奖励、传奇坦克雇佣等核心玩法。"
keywords: ["萌坦大作战", "坦克对战", "卡通风格", "无尽模式", "排行榜", "UE4"]
created: "2025-05-14"
processed_by: "coze-kb-organizer v1.0"
---
从文档内容中提取或推理 5-10 个高频问题,以 Q&A 对 格式追加到文档末尾:
## 常见问题 (FAQ)
**Q1: 萌坦大作战有多少个阵营?**
A: 三大阵营:帝国军统(紫色,设计精良火力强大)、反抗军(废墟拼凑,灵活多变)、军团(蓝色,质量过关火力强劲)。
**Q2: 无尽模式有哪些要素?**
A: 可破坏的红色砖块、不可破坏的白色砖块、道具(技能点、急救包)、危险物(灰色地雷)、基地摧毁扣2000分。
**Q3: 连杀奖励系统的最高级别是什么?**
A: 炮艇舰,需50级以上且击杀25辆坦克,拥有三种口径炮弹,属于超级武器级别。
FAQ 生成原则:
为每个语义块和整篇文档提取关键词,增强 Coze 的语义检索匹配度:
关键词追加到每个 chunk 的注释和文档头部元数据中。
在文档末尾生成实体关系表,帮助 Bot 理解概念关联:
## 实体关系索引
| 实体A | 关系 | 实体B | 说明 |
|-------|------|-------|------|
| 帝国军统 | 拥有 | 传奇坦克 | 可雇佣的超级战车 |
| 玩家 | 达到等级 | Guardian | 30级解锁 |
| 连杀5辆 | 激活 | UAV无人侦察机 | 持续250秒 |
| 幻影左轮手枪 | 属于 | 猎鹰小队 | 最新研发武器 |
输出到 {output_dir}/md/ 目录:
{output_dir}/
├── md/
│ ├── {文档名}_enhanced.md # 增强版(含元数据+FAQ+实体索引)
│ └── {文档名}_original.md # 原始版(纯格式转换,无增强)
推荐导入 Coze 时使用 _enhanced.md,它包含了完整的元数据和增强标注,可显著提升检索精度。
调用 scripts/md_to_docx.py:
python scripts/md_to_docx.py --input {增强版MD路径} --output {输出目录}
生成格式化的 Word 文档,保留:
当用户提供文件夹或多文件时:
游戏产品/ → category: "游戏产品")_汇总报告.md,列出所有处理结果| 目录名 | 推断分类 | 推断子分类 |
|---|---|---|
| -------- | --------- | ----------- |
| 游戏产品 | 游戏产品 | 从文档标题提取 |
| UE5工具 | 技术工具 | UE5插件/工具 |
| AI三维资产 | AI技术 | 三维资产/工作流 |
| 技术文档 | 技术文档 | 从内容提取 |
| 产品文档 | 产品文档 | 从内容提取 |
处理完成后自动检查:
| 场景 | 处理方式 |
|---|---|
| ------ | --------- |
| PDF 无法读取(加密/损坏) | 跳过并记录,报告中标注 |
| DOCX 格式异常 | 尝试用纯文本方式提取,标注降级处理 |
| 文档完全空白 | 跳过并记录 |
| 编码异常(乱码) | 尝试多种编码(UTF-8/GBK/GB2312) |
| 图片无法提取 | 保留占位符 [图片: 描述] |
用户输入:
> 帮我把这个文档整理成Coze知识库格式 E:/知识库/游戏产品/萌坦大作战.docx
执行步骤:
doc_converter.py --input "...萌坦大作战.docx" → 生成原始 MDkb_enhancer.py --input "原始MD" → 生成增强 MDmd_to_docx.py --input "增强MD" → 生成 DOCX用户输入:
> 把 E:/OpenCLaw数字员工系统/知识库整理/ 下面所有的文档都整理一遍
执行步骤:
用户输入:
> 把这些PDF转成Markdown就行,不用增强
执行步骤:
doc_converter.py(阶段一)scripts/doc_converter.pyscripts/kb_enhancer.pyscripts/md_to_docx.pyreferences/coze_kb_best_practices.md共 1 个版本