知识库A类自动消化 Skill
概述
将 kb-inventory-update 技能筛选出的 A 类资料,批量转化为可复用的知识卡片。支持速览/精读两种深度、四种角色视角(营销/技术/团队/个人)、六种输出模板(提示词/SOP/Skill/速查表/决策矩阵/合集)。核心价值在于:把"知道哪些重要"变成"已经吸收了、能直接用了"。
输入:processed_kb_items_latest.json(由 kb-inventory-update 生成)
输出:knowledge_cards/ 目录下的结构化知识卡片 + 更新后的 processed_kb_items_latest.json(output_status 升级)
触发方式
三种入口
| 入口 | 用户表述 | 说明 |
|---|---|---|
| 全量 | "消化全部A类资料"、"批量生成知识卡片" | 处理所有A类(建议加 --top 10 限制批次) |
| 主题 | "消化Codex相关的"、"消化Seedance的" | 按主题/关键词过滤A类 |
| 新增 | "消化新增的A类资料"、"消化上次新增的" | 仅处理 status=未处理 且最近新增的A类 |
| 多视角 | "用营销视角消化"、"多角度分析这篇"、"换个视角看" | 对同一份资料生成不同角色视角的卡片(见下方 §多视角消化) |
两种深度
| 模式 | 参数 | 数据来源 | 卡片深度 | 适合场景 |
|---|---|---|---|---|
| 速览(默认) | 无 | 标题 + 搜索摘要 + fetch 摘要 | 标题 + 一句话总结 + 核心观点(3-5条)+ 可转化方向 | 快速过一遍、筛选值得精读的 |
| 精读 | --deep |
fetch 拉取全文/视频完整分析 | 速览内容 + 详细方法论 + 可应用场景 + 关联资料 + 原文关键引用 | 高价值资料深度消化 |
默认使用速览模式。用户明确说"精读"时才用 deep 模式。每批建议不超过 5-10 条。
工作流程
Phase 1: 筛选清单 → Phase 2: 逐条消化 → Phase 3: 保存卡片+更新状态
Phase 1:筛选 A 类清单
python3 scripts/prepare_digest_list.py \
--input processed_kb_items_latest.json \
--output digest_queue.json \
[--mode new|theme|all] \
[--theme "Codex"] \
[--top 10]
参数说明:
- --mode new:仅处理 output_status=未处理 的A类
- --mode theme --theme "Codex":按关键词过滤主题
- --mode all --top 10:全量A类,限制批次数量
- 默认 --mode new --top 5
输出 digest_queue.json,包含待消化清单及每条的 media_id、media_type、摘要等,方便 Phase 2 直接读取。
Phase 2:逐条消化(AI 驱动)
> ⚠️ 这是核心步骤,由 AI 按以下规则逐条处理,不得跳过。
对 digest_queue 中的每条资料,按深度模式执行:
速览模式(默认)
-
调用
fetch获取资料内容:
- 知识库资料(media_id):fetch(type="media_id", id=item.media_id, question="提取:一句话核心内容、3-5个关键观点、适合什么人看、有什么可操作的方法")
- 笔记(note_id):fetch(type="note_id", id=item.note_id, question="...")
- URL:fetch(type="url", id=item.url, question="...") -
基于 fetch 结果,生成初级知识卡片(模板见 templates/knowledge_card_quick.md)
-
调用
mark_digested更新状态
精读模式(--deep)
-
调用
fetch获取完整原文:
-fetch(type="media_id", id=..., question="请完整提取:全文核心论点、分章节/段落的方法论细节、每个方法的具体操作步骤、作者引用的关键数据/案例、与同类资料的区别点") -
视频专项规则(见下方 §视频内容处理)
-
基于完整内容,生成深度知识卡片(模板见 templates/knowledge_card_deep.md)
-
调用
mark_digested更新状态
📹 视频内容专项处理规则
当资料类型为视频(media_type=video/YouTube/B站,或 URL 指向视频平台)时:
-
fetch 时必须指定视频分析专用 question:
"请完整分析这段视频:① 视频主题和核心观点 ② 展示的具体操作步骤(如有分步骤) ③ 作者演示的技巧/工具/参数配置 ④ 视频中提到的任何设置参数/数值/公式 ⑤ 案例展示的结果和数据 ⑥ 视频的分段结构(开头→中间→结尾讲了什么)。如果是教程类视频,提取每个操作步骤的详细说明。" -
标记视频时间戳:如原文提供时间戳,卡片中保留关键步骤对应的时间点。
-
操作类视频:生成的知识卡片必须包含「操作清单」小节,逐步骤列出,确保可复现。
-
演示类视频:重点提取工具/参数配置,卡片中单列「工具与参数」小节。
-
案例类视频:重点提取案例背景→做法→结果→可迁移点。
Phase 3:保存卡片 + 更新状态
python3 scripts/finalize_digest.py \
--queue digest_queue.json \
--cards-dir knowledge_cards/ \
--data processed_kb_items_latest.json \
--update-status
此脚本会:
1. 将 Phase 2 生成的知识卡片文件注册到 processed 数据中
2. 更新已消化资料的 output_status:未处理 → 已提炼
3. 已消化的资料下次不再出现在 new 模式中
知识卡片模板
速览卡片(quick)
# 📝 {标题}
**标签**:{一级/二级/三级}
**来源**:{知识库名} | {资料类型}
**深度**:速览
## 一句话总结
{1句话}
## 核心观点
1. ...
2. ...
3. ...
## 适合人群
{谁需要看这个}
## 可转化方向
- {可转化为的成果类型}
## 关键词
{3-5个关键词}
精读卡片(deep)
# 📖 {标题}
**标签**:{一级/二级/三级}
**来源**:{知识库名} | {资料类型} | [原文链接]
**深度**:精读
## 一句话总结
{1句话}
## 核心方法论
1. ...
2. ...
3. ...
## 操作指南 / 步骤
| 步骤 | 说明 | 关键参数/工具 |
|------|------|-------------|
| 1 | ... | ... |
## 关键数据 / 案例
- {引用的数据或案例}
## 我的理解与可应用场景
{结合用户场景的理解}
## 可转化成果
- {具体可产出的成果}
## 关联资料
- {知识库中相关条目}
## 关键词
{3-5个}
多视角消化(Phase 4)
当用户要求以特定视角消化资料时,生成角色化知识卡片。基于 NotebookLM 的「角色化分析」理念和 LLM Wiki 的「同源多视角」设计——不同角色看到的核心观点、可转化方向完全不同。
四种预设视角
| 视角 | 标识 | 聚焦问题 | 卡片产出方向 |
|---|---|---|---|
| 营销落地 | 📢 | 可复用模板?传播策略?受众定位?转化路径? | 内容模板 / 传播策略 / 增长SOP |
| 技术实操 | 🔧 | 工具参数?工作流步骤?避坑指南?同类对比? | 工具配置 / 工作流SOP / 避坑清单 |
| 团队赋能 | 👥 | SOP化要点?培训路径?效率指标?推广阻力? | 培训方案 / 效率SOP / ROI评估 |
| 个人效能 | ⚡ | 自动化思路?时间节省?最小可行版?工具配合? | 效率技巧 / 自动化脚本 / 工具配置 |
执行方式
# 查看所有可用视角
python3 scripts/digest_perspectives.py --list
# 为指定资料生成视角卡片模板
python3 scripts/digest_perspectives.py \
--perspective 营销落地 \
--media-id MEDIA_ID \
--title "资料标题"
视角卡片文件名格式:km_XXXp1_标题_营销落地视角.md(p1/p2/p3/p4 对应四种视角)。生成后同样调用 finalize_digest.py 更新产出状态。
多视角卡片模板
# {emoji} {标题}({视角标签})
**标签**:按内容自动填充
**来源**:{知识库名} | {资料类型}
**深度**:速览 | **视角**:{营销落地/技术实操/团队赋能/个人效能}
## 一句话总结({视角}角度)
{从该角色角度的一句话核心价值}
## 核心观点
1. {观点1 — 聚焦该视角的核心关注点}
2. {观点2}
3. {观点3}
## 适合人群({视角}场景)
{谁最需要从这个角度看这份资料}
## 可转化方向({视角}产出)
- {转化为具体成果类型}
## 关键词
{3-5个关键词,优先选取与该视角最相关的}
输出模板转化(Phase 5)
精读卡片生成后,可根据「可转化方向」自动生成可直接使用的模板文件:
# 列出所有可用模板
python3 scripts/output_templates.py --list
# 按关键词匹配推荐模板
python3 scripts/output_templates.py --match "提示词"
六种输出模板
| 模板 | 触发关键词 | 产出 | 文件扩展名 |
|---|---|---|---|
| 提示词模板 | 提示词/prompt/指令 | 含角色设定+任务指令+质量检查的标准提示词 | .prompt.md |
| Skill配置 | skill/技能/配置 | 含使用场景+工作流+输入输出规范的Skill配置文件 | .skill.md |
| 工作流SOP | 工作流/SOP/流程/步骤 | 含阶段划分+步骤表格+验收标准+异常处理 | .sop.md |
| 速查表 | 速查/参数/命令/配置 | 含参数表格+常用命令+FAQ | .cheatsheet.md |
| 决策矩阵 | 对比/选型/方案/推荐 | 含维度权重+方案对比+推荐结论+备选条件 | .matrix.md |
| 提示词合集 | 合集/多个提示词/批量 | 含多条场景化提示词+使用说明 | .collection.md |
模板输出到 outputs/ 目录。生成后告知用户文件路径,用户可直接编辑使用。
在 kb-inventory-update 报告末尾,自动追加上一次消化后的待处理提示(由 generate_report.py 的转化漏斗处理):
> 💡 当前 72条 A 类中,68条待消化。回复"消化新增的A类资料"开始批量处理。
此提示已集成在 kb-inventory-update 的「成果转化漏斗」章节中,无需额外改动。
输出摘要
每批次完成后输出:
- 本批消化条数 + 深度模式
- 卡片保存路径(含多视角卡片和模板产出)
- 已更新为"已提炼"的条目
- 剩余待消化 A 类数量
- 下一批建议(自动提示可继续的主题方向或可用视角)
异常处理
| 异常 | 处理 |
|---|---|
| 资料无法读取全文 | 标记为"读取失败",降级用摘要生成速览卡片 |
| 视频内容分析不完整 | 尝试第二次 fetch 时更换 question 视角(从"教程"视角改为"工具评测"视角重试) |
| A 类过大(>30条) | 强制分批次,每批 ≤ 10 条 |
| processed 数据缺少字段 | 自动补全默认值 |
资源目录
scripts/
prepare_digest_list.py— 筛选 A 类清单,输出待消化队列 JSONfinalize_digest.py— 保存知识卡片,更新 output_status
templates/
knowledge_card_quick.md— 速览卡片模板knowledge_card_deep.md— 精读卡片模板
部署依赖
本技能脚本依赖 shared/logger.py(统一日志模块)。部署时需将 shared/ 目录与技能目录放在同级位置:
skills/
├── shared/ ← 必须存在(来自 shared.zip)
│ └── logger.py
└── kb-inventory-update/ (或 kb-graph-builder / kb-auto-digester)
脚本通过 sys.path.insert(0, .../../..) 自动定位,无需额外配置。若缺少该模块,脚本会报 ModuleNotFoundError: shared.logger。