数据飞轮架构

每日飞轮将来源发现、OCR、文本与图表治理、候选审核及训练数据导出连接到持久任务队列。配置和命令见每日数据飞轮。

处理链路

flowchart TD
    A[来源发现 / 本地 PDF] --> B[下载与文件校验]
    B --> C[OCR 与布局块]
    C --> D[文本治理]
    C --> E[图片 / 表格资产]
    E --> F[图表描述]
    D --> G[原文 / 翻译 / 改写候选]
    F --> G
    G --> H[规则与独立模型审核]
    H --> I[v7 证据包]
    I --> J[tokenizer 分段 / 脱敏 / 去重]
    J --> K[CPT 增量与累计快照]
    I --> L[文本 / 视觉 SFT]
    K --> M[可选去重 / 配比 / 训练版本发布]
    L --> M

编排与状态

层 职责 主要模块
发现 来源查询、分页进度、下载记录 spiders/
OCR 本地/云端调用、布局与图片落盘 remote/
治理 文本清洗、分块、元数据、表格摘要 processing/
任务与血缘 队列、依赖、租约、工件、候选决定 storage/
证据发布 文本、视觉资产与工件依赖闭包 delivery/
训练数据 CPT/SFT、划分、配比与版本 training/
编排 预检、阶段执行、续跑与日报 workflow/

发现记录落盘后推进来源 cursor,下载与模型处理由队列接管。任务以输入、处理配方和模型身份生成幂等键;续跑复用成功结果,并恢复延期或可重试任务。

processing_task 保存依赖、状态、重试时间和租约。运行使用整轮锁,任务在领取后执行;执行结果和工件文件分别通过事务与原子写入持久化。

视觉资产

图像文件按内容 hash 保存,visual_asset 记录它在具体文档、页码和 OCR block 中的来源。相同字节可以共用文件,各次来源 occurrence 单独保留。

记录 内容
视觉资产 类型、原始 OCR 标签、来源文档、页码、bbox、图片 hash、尺寸与状态
视觉描述 输入图片与上下文、模型/提示词版本、响应与解析结果
工件关系 PDF → OCR → 区域图片 → 描述 → 候选 → 样本

优先使用 OCR 返回的区域图;使用 PDF 裁剪时,按页面尺寸和坐标变换定位。正文清理与视觉资产登记分别保存,表格 HTML、Markdown、原图和描述通过血缘关联。

候选与训练数据

候选按 accepted、rejected、needs_review、pending 保存独立决定。source_policy 控制来源训练准入,OCR 质量、规则检查和模型审核控制候选处理。文本、视觉描述、翻译与改写分别审核。

v7 证据包包含候选、决定、图表清单和依赖文件。CPT 以目标 tokenizer 分段,按正文去重并保存全部来源;同一逻辑作品的原文和派生内容共用 split。SFT 从已批准证据构建文本问答、抽取、计算和视觉任务。

CPT 按新增内容发布增量,单独记录新增血缘;累计快照汇总选定增量。SFT 按所选证据和配方导出累计快照。发布格式见训练数据和训练版本发布。

配置与运行

  • .env:服务连接、模型角色、tokenizer 和运行参数。
  • config/collection.json:采集来源、公司、年度与论文查询。
  • config/flywheel.json:生成方法、来源准入、任务预算和可选阶段。
  • data_root:原始文件、处理产物、SQLite、证据包与训练数据。

调度模板调用同一个 CLI,手工运行与定时运行共享队列和恢复机制。状态、进度和日报用于本地运行排查,命令见日常操作。