# 第 2 课 · 知识库实战:从散乱资料到可检索资产(学员手册) > 文件路径:`/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/README.md` > > 时长 120 分钟 | 课后产出:个人层 + 组织层知识库上线,命中率达标 > > 前置:完成第 1 课「技能构建」,手上至少有 1 个跑通的文书技能。 --- ## 一、这节课要解决什么 调研显示,约 **50%** 的环境公益机构把「资料散落各处、过往案例难以复用」列为最大痛点之一。团队换人、项目结项、资助方更替——每次都要从头找文件、翻聊天记录、问老同事。 第 1 课解决了「怎么做」(技能),但技能要答得**准**,必须有机构自己的资料支撑。第 2 课就从这里切入:把散落在云盘、微信、邮件附件里的项目档案、资助指南、历年案例,整理成 AI 能准确检索的**知识库**。 一句话:**技能知道「怎么做」,知识库提供「弹药」。** ## 二、学习线路:7 步走完一轮知识库 这节课按「先想清楚,再动工具」来学: | 步骤 | 核心问题 | 产出 | |------|----------|------| | 1. 看清关系 | 知识库和第 1 课技能是什么关系? | 知道知识库提供事实,技能定义做法 | | 2. 定范围 | 我的项目助理最需要查哪类资料? | 选定 1-2 个知识库栏目 + 10 个测试问题 | | 3. 过合规 | 哪些资料能用,哪些不能上云? | L1-L4 分级清单 | | 4. 整资料 | 文件要怎么清洗、条目化、补 frontmatter? | LLM-wiki 条目 + metadata | | 5. 放工具 | 知识库、工作台、Agent平台、Dify 分别放在哪? | 个人层 + 组织层工具边界 | | 6. 跑一轮 | 知识库能不能回答真实问题? | 10 问命中率 | | 7. 调问题 | 答不好是检索问题还是生成问题? | 修复记录 + 下一轮优化 | ## 三、第一步:先分清知识库 vs 技能 | 维度 | 技能(第 1 课) | 知识库(本课) | |------|----------------|---------------| | 回答的问题 | **怎么做**——流程、格式、边界 | **有什么**——事实、案例、数据 | | 公益类比 | 机构 SOP + 模板 + 规则 | 历年项目档案、资助指南、案例库 | | 更新频率 | 流程变了才改 | 有新材料就补 | | 典型内容 | 输出契约、Gotchas、触发说明 | PDF 报告、项目总结、服务故事 | **它们不是竞争关系,而是搭档**:技能定义「怎么做」,知识库储备「做事素材」——第 3 课把二者编排进同一个 AI 智能体。 ## 四、第二步:先定范围和 10 个测试问题 调研数据告诉我们,学员最需要的五类知识库内容(按「有用」评分排序): | 排名 | 知识库分类 | 调研评分 | 典型内容举例 | |------|-----------|---------|-------------| | 1 | **沟通模板** | 4.38 | 捐赠人邮件模板、媒体问答口径、社区沟通话术 | | 2 | **资助指南** | 4.38 | 各基金会申请要求、评审标准、往期资助清单 | | 3 | **项目管理** | 4.29 | 项目计划模板、监测评估框架、财务报告格式 | | 4 | **案例** | 4.17–4.25 | 成功/失败案例复盘、服务故事、传播素材 | | 5 | **志愿者管理** | 4.08 | 招募流程、培训手册、志愿者反馈表 | 先建评分最高、与你立项书最相关的 1-2 类。不要先问“我要用哪个工具”,先问: ```text 我的项目助理未来最常被问哪 10 个问题? 这些问题的答案应该来自哪些资料? 这些资料是否真实存在、可用、可上云? ``` ## 五、第三步:数据合规 4 档 把资料喂给 AI 之前,**必须**先分级。4 档从松到严: | 级别 | 名称 | 例子 | 怎么处理 | |------|------|------|---------| | **L1** | 公开 | 公众号文章、年报、公开活动总结 | 可直接用,上传 Agent平台 | | **L2** | 准公开 | 脱敏后的案例、内部培训资料 | 经审核后可用,上传前确认已脱敏 | | **L3** | 内部 | 会议纪要、未发布计划、内部预算 | 仅限个人工作台 / 本地知识库,不上传云端 | | **L4** | 敏感 | 捐赠人手机、受益人身份证、志愿者隐私 | **禁止**写进任何知识库或技能 | **红线**:受益人、志愿者、捐赠人的姓名与联系方式,输出前一律脱敏(姓名→A/B,删除手机/证件号)。拿不准时,宁可不放。 ## 六、第四步:把资料整理成 AI 能检索的形态 知识库不是把文件堆进系统,而是把资料整理成机器更容易理解、引用和审核的知识条目。本课采用 LLM-wiki 的逻辑:每一份重要资料都尽量清洗成“frontmatter + 正文”的结构。 ### 6.1 LLM-wiki 条目的基本形态 frontmatter 是放在 Markdown 文件最前面的结构化信息,用来说明这份知识是什么、从哪里来、能被谁使用、适合回答什么问题。正文保留事实、流程、案例和可复用表述。 ```yaml --- doc_title: 2024 清河巡护项目结项报告 doc_type: 结项报告 project_name: 清河巡护项目 year: 2024 module: M1 文书 topic_tags: - 河流保护 - 志愿者管理 privacy_level: L2 audience_scope: 内部同事可问 retrieval_hint: 事实查找 source_owner: 项目部 last_reviewed_at: 2026-06-10 source_path: 云盘/项目档案/2024清河 canonical_questions: - 2024 清河项目开展了多少次巡护? summary: 记录 2024 年清河巡护项目的活动、产出、成效和反思。 --- ``` 最低要求: | 字段 | 作用 | 不写会怎样 | |------|------|------------| | `doc_title` | 让系统知道资料标题 | 容易混淆相似文件 | | `doc_type` | 区分报告、制度、案例、会议纪要 | 不利于按场景检索 | | `privacy_level` | 控制 L1/L2/L3 使用边界 | 容易把敏感资料放错位置 | | `retrieval_hint` | 告诉系统适合事实查找、案例参考还是流程执行 | 回答容易泛化或跑偏 | | `canonical_questions` | 写出这份资料应该能回答的问题 | 后续测试命中率困难 | | `summary` | 用 1–2 句话概括核心内容 | 模型需要读更多上下文才知道是否相关 | ### 6.2 前处理的 5 个动作 | 动作 | 做什么 | 推荐工具方式 | |------|--------|--------------| | 去噪 | 删除目录页、重复页眉页脚、无意义换行、扫描错误 | OCR 后用 LLM 检查格式与错字 | | 脱敏 | 替换姓名、手机号、身份证、精确地址、资金敏感字段 | 用 LLM 做敏感信息扫描,再人工复核 | | 结构化 | 把长文拆成标题、背景、做法、数据、成效、反思 | 用 LLM 生成 Markdown 层级 | | 补 frontmatter | 为条目补齐标题、类型、标签、密级、可回答问题 | 用模板让 LLM 先草拟,再由负责人确认 | | 切片 | 按自然小节拆分,避免一个片段塞进太多主题 | 一般单片控制在 800–1500 中文字,复杂表格单独处理 | 课堂建议使用一个固定清洗提示词: ```text 请把下面资料整理成适合进入知识库的 LLM-wiki 条目: 1. 删除重复、噪音和与正文无关的内容; 2. 识别并标注可能需要脱敏的信息; 3. 生成 Markdown 正文,保留事实、数据、流程、案例和原始表述; 4. 在开头生成 YAML frontmatter,至少包含 doc_title、doc_type、privacy_level、topic_tags、retrieval_hint、canonical_questions、summary; 5. 如果资料不适合进入组织知识库,请说明原因。 ``` ### 6.3 三类核心材料 | 材料 | 来源 | 处理方式 | frontmatter / metadata | |------|------|----------|------------------------| | 历年项目档案 | 结项报告、季度总结、活动记录 | 一个项目 = 一组 LLM-wiki 条目,按章节拆分 | 项目名、年份、资助方、领域标签、可回答问题 | | PDF 报告与资助指南 | 申请指南、行业报告、政策文件 | 转文本、清乱码、修复表格,长报告按章节成条目 | 发布机构、年份、文档类型、条款适用范围 | | 案例与服务故事 | 传播稿、项目复盘、服务故事 | 统一为背景、干预、结果、反思 | 案例类型、领域、年份、隐私档位 | ### 6.4 不同文件类型怎么处理 | 文件类型 | 入库前处理 | 注意事项 | |----------|------------|----------| | Word / Markdown | 保留标题层级,按章节清理,补 frontmatter | 最适合直接入库;一份文档只讲一个主题 | | PDF | 先判断文字 PDF 还是扫描件;扫描件先 OCR | 表格页单独转结构化文本,避免乱码污染知识库 | | Excel / CSV | 转成字段说明、典型问答、行记录摘要 | 不要整表硬传;数字类问题要保留口径说明 | | PPT | 转成逐页讲稿或要点 | 图片里的关键信息要补文字说明 | | 图片 | 先 OCR 或用识别工具转文本 | 不把图片当作唯一事实来源 | | 音频 / 访谈 | 先转写,再脱敏,再按主题拆分 | 访谈对象姓名、电话、住址必须删除或替换 | ## 七、第五步:工具落位,而不是工具先行 本课不把「工具功能」当主线,而是按使用场景分层。课程口径先抽象成两类能力:**知识库负责让资料可检索、可引用;工作台负责把知识带入具体任务。** | 层级 | 工具 | 课程定位 | 适合处理 | |------|------|----------|----------| | 初阶个人层 | **个人知识库** | 快速收纳、阅读、问答、萃取碎片资料,示例工具包括 ima 等知识工作台 | 微信文件、网页、PDF、图片、音频、个人资料夹 | | 个人执行层 | **工作台** | 调用个人知识做实际任务,示例工具包括 QoderWork 等 | 第 1 课技能、个人草稿、L3 内部资料 | | 组织主线 | **Agent平台** | 组织层项目助理知识库,挂载到 AI智能体 | L1 公开资料、审核后的 L2 准公开资料 | | 高阶理解 | **Agent平台 进阶 / Dify** | 解释 RAG 机制,训练检索调参能力 | 向量检索、全文检索、混合检索、rerank、frontmatter / metadata 过滤 | ```text 已分级、已清洗、已补 frontmatter 的资料 → 个人知识库:个人收纳、阅读、初步萃取 → 工作台:个人任务执行 → Agent平台:组织层知识库 + 项目助理 → 高阶 RAG:检索策略、切片、frontmatter / metadata、评测 ``` ## 八、第六步:先跑 10 问命中率,再讲检索原理 知识库建好后,测试「问 10 个真实问题,AI 答对几个」——这就是**命中率**。 | 结果 | 记分 | 判断标准 | |------|------|----------| | 命中 | 1 | 找到正确资料,回答事实准确,可引用来源 | | 半命中 | 0.5 | 找到部分资料,但答案不完整或表达有误 | | 未命中 | 0 | 没找到资料、引用错误资料、编造答案 | ## 九、第七步:把检索模式当作诊断工具 只有当 10 问测试暴露问题后,再讲向量、全文、混合检索。这样学员会知道这些概念是在解决什么问题。 | 问题类型 | 推荐检索 | 例子 | |----------|----------|------| | 精确名词、编号、日期、政策条款 | 全文检索更稳 | 「2024 清河项目巡护次数是多少?」 | | 换一种说法问同一件事 | 向量检索更稳 | 「哪些案例适合讲社区参与成效?」 | | 既有关键词又要语义判断 | 混合检索默认优先 | 「找一个和湿地公众教育相似、且有志愿者数据的案例」 | | 大知识库、多部门、多项目 | metadata 过滤必需 | 限定年份、项目、资助方、领域后再检索 | 答不好时,按这个顺序排查: ```text 答不好 ├── 资料不存在 → 补资料 ├── 资料存在但没找到 → 改切片 / frontmatter / metadata / 检索模式 └── 找到了但写不好 → 回第 1 课改 Skill 输出契约 / Gotchas ``` **口诀**:先看资料,再看检索,最后看生成。 ## 十、课堂练习(60 分钟) ```text 练习进度: - [ ] Step 1 选材料:从三类中选 1 类,找出 5–10 份真实文档 - [ ] Step 2 分级:逐份标注 L1–L4,L4 直接剔除 - [ ] Step 3 清洗:用 LLM-wiki 提示词去噪、脱敏、结构化 - [ ] Step 4 补 frontmatter:写 doc_type、privacy_level、retrieval_hint、canonical_questions - [ ] Step 5 放工具:L1/L2 进 Agent平台,L3 留在个人知识库 + 工作台 - [ ] Step 6 测试命中率:问 10 个真实问题,记录答对几个 - [ ] Step 7 诊断 + 改进:先看资料,再看检索,最后看生成 ``` ## 十一、课后作业(分层) | 层级 | 个人层 | 组织层 | 命中率 | 验收 | |------|--------|--------|-------|------| | 入门 L1(用起来) | 个人知识库 + 工作台 ≥30 份资料,其中 ≥10 份有 frontmatter | Agent平台 ≥10 份 | ≥60% | 能回答基本项目问题 | | 进阶 L2(用得顺) | 个人知识库 + 工作台 ≥80 份资料,其中 ≥30 份有 frontmatter | Agent平台 ≥25 份 | ≥70% | 有 frontmatter / metadata + 诊断记录 | | 高阶 L2+(懂原理) | 完成 1 轮检索模式对比 | Agent平台 进阶或 Dify 演示 | 说明 3 个未命中原因 | 能判断向量/全文/混合检索适用场景 | 下课带走一句话:**「我的知识库现在有 ___ 份文档,命中率从 ___% 提升到了 ___%。」** ## 十二、配套模板与工具讲义 | 材料 | 文件路径 | |------|----------| | 资料盘点表 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/templates/kb_source_inventory.md` | | frontmatter + metadata 字段表 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/templates/kb_metadata_schema.md` | | 10 问命中率测试表 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/templates/kb_eval_questions.md` | | 知识库 + 工作台练习 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/tools/ima_QoderWork_lab.md` | | Agent平台 知识库练习 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/tools/yuanqi_kb_lab.md` | | 检索模式对比 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/tools/retrieval_mode_comparison.md` | | Dify 高阶 RAG 练习 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/part-02-knowledge-base/tools/dify_advanced_rag_lab.md` | | 第 2 → 第 3 课交接包 | `/Users/apple/Documents/4.0 Sanyuan/2.4 环境公益"新"力量/course/bridge-materials/templates/02_to_03_kb_agent_handoff.md` | ## 十三、和前后课的衔接 | 课程 | 角色 | 类比 | |------|------|------| | 第 1 课 · 技能 | 定义「怎么做」 | 菜谱 | | **第 2 课 · 知识库**(本课) | 提供「做事素材」 | 食材库 | | 第 3 课 · AI智能体 | 编排技能 + 知识库 | 厨师 | 下课前,请把本课的知识库范围、合规分级、frontmatter / metadata、10 问命中率和检索参数填入 `第 2 → 第 3 课交接包`。第 3 课会直接用它来挂载知识库和建立项目助理测试问题。 ## 十四、下一课预告 技能知道「怎么做」,知识库提供了「弹药」——下一步,把它们编排成一个完整的**项目助理**。第 3 课《AI智能体组装》教你把多个技能和知识库挂到同一个智能体上,让它根据用户意图自动选技能、查知识库、给出回答。