第 1 课
为语料库准备文档
语料库拿去搜索、排序、生成之前,总得有人先定好:里面装什么、 里面的文档是怎么变"可用"的。本课讲的就是这步更早的准备工作。
学完这一课
学完之后,你要能说清楚:为什么光有可读文本,还不算"已准备文档"; 还要能把"程序看到的东西"和"人决定要改"这两件事分开。
先问对问题
别上来就问"文本能不能提取?"。先问:
- 处理的源头字节是什么?
- 每个提取器产出了什么?
- 有哪些条件值得注意,证据在哪?
- 改不改文档,是谁定的?
- 哪个已准备修订版是这次决定的产物?
已准备文档不光要可读,还要可追溯——从源头,经提取、诊断,到每一次 被批准的修改,路径清清楚楚。
把生命周期想象成一串断言。每个断言都得有记录撑着:
| 断言 | 靠什么记录支撑 |
|---|---|
| "处理的就是这个来源。" | 观察记录里捕获的来源标识。 |
| "这些工具给出了这些结果。" | 提取器输出和比较证据。 |
| "存在这个条件。" | 诊断发现项,带规则专属证据。 |
| "决定改了它。" | 一条持久化的批准或拒绝决策。 |
| "最终文档是这个。" | 已批准的不可变修订版。 |
少了这条链,后来的人只能看到最新文本——看不出它来自原始来源、 提取失误,还是一个没有解释过的编辑。
证据归证据,决策归决策
提取出视图,诊断出发现项,提议描述了可能的改法——这些都不等于 "可以改"。
只有人明确说批准或拒绝,才叫决策。批准了,生成新修订版。拒绝了, 证据留着,文档不动。
证据: 来源 -> 提取 -> 发现项 -> 提议
决策权: 人 -> 批准或拒绝
结果: 已准备修订版 或 不动分得开的好处是:有用的观察不会悄悄变成一个说不清的编辑。拒绝也不是 白费功夫——提议和证据还在,文档原封不动。
生命周期的边界
这套流程有明确的范围。它既不是通用编辑器,也不是面向所有场景的 质量打分。
- 原始来源始终可查。
- 提取产出规范工作文档和可读视图,但不判断文档好坏。
- 诊断记录的是固定规则能识别的条件,不做合规判断,也不管真实性。
- 修订器只能提出受支持的、结果确定的修改。没等人决策,不会动文档。
- 已准备修订版是给后续语料库工作用的,不是索引、不是嵌入、也不是 检索结果。
在工作台里试试
启动本地工作台:
corpus workbench --no-open打开打印出来的地址,先别跑流程。看看四个阶段:观察、诊断、修订、 修订版——跟上面的证据-决策路径一一对应。侧边栏也把"单个文档"和 "语料库"分开了。
点一下页头的规则参考按钮,读一读发现项是什么意思。现在不用背规则。 记住一点就行:规则给了程序一个有限制的理由去报告问题,没给它权限去 改文档。
看什么
之后添加文档时,工作台始终聚焦在一个文档上,阶段导航器显示当前准备 轮次。检查器有三个视图:
- 摘要 —— 当前阶段的主要事实。
- 证据 —— 这些事实的依据是什么。
- 产物 —— 已发布的文件,想看细节时再打开。
学生命周期不用每个 JSON 文件都看。先从阶段说明和主区域的结果入手, 碰到"这个结果凭什么"的问题时,再用检查器。
记住
语料库准备不是默默清理一下。它是一条可追溯的决策链,终点是已准备 修订版。
下一课:捕获并提取。