Skip to content

tiny-corpus-workbench

边做边学:文档处理入门

一份原始文档,怎么变成可追溯的"已准备修订版"?先看原理,再到本地可视化工作台里亲手试一遍。

在语料库被拿去搜索、排序、生成之前,文档处理已经发生了。那些下游 任务当然有用,但不是本项目的主题。这门课追问的是一个更早的问题: 手里是什么文档?怎么准备出来的?哪些证据能说明这个过程?

课程到"已准备修订版"为止。不涉及分块、嵌入、索引、检索、生成, 也不涉及 RAG 评测。

先看一条完整的生命周期

text
原始来源
  -> 捕获来源 + 提取视图
  -> 规范的 DoclingDocument
  -> 基于证据的诊断
  -> 人的明确决策
  -> 不可变的已准备修订版
  -> 语料库检查

命令行和工作台,是同一套本地生命周期的两种入口。命令行完整精确, 工作台是练习场——先帮你理解每个阶段在干什么,再去看详细记录。 两个入口共享同一份数据,不会搞出两套生命周期。

每个阶段只回答一个问题

阶段问什么产出什么不管什么
观察收到了什么、提取出了什么?捕获来源、提取视图,可能还有一份规范文档。不诊断,不改文档。
诊断哪些固定规则命中了?带有专属证据的发现项。不说"可以改"。
修订有什么受支持的改法,接不接受?先有提议,再有人的明确决定。不偷偷编辑。
修订版批准后产生了什么?一个不可变的后继版本,带历史记录。不覆盖原始文档。
检查语料库声明的这些成员之间有什么规律?聚合证据,不含原文。不发现新文件,不改成员。

整个课程就靠两个概念撑起来:

  • 证据 —— 程序观察或计算出来的东西。
  • 决策权 —— 要不要改,是人说了算。

程序不改任何东西,也能产出有用的证据。人拒绝一个提议,证据还在。 正因为两者分得开,生命周期跑很多轮也不会乱。

学习路径

开始之前

以下课程假设仓库已经装好,Python 虚拟环境处于激活状态。先确认 corpus --help 能跑通,再从第一课开始。前四个练习用的是项目自带的 Markdown 示例,不需要 PDF 模型。

练习时如果想从头来过,开一个临时工作区:

bash
LESSON_WORKSPACE="$(mktemp -d)"
corpus workbench --workspace "$LESSON_WORKSPACE" --no-open

命令会打印一个本地地址,浏览器打开就行。练完了在终端按 Ctrl-C。 第一课不从操作开始,先把概念讲清楚。