文章
面向大模型训练数据集的非结构化数据治理系统总体设计框架
1. 设计目标与范围
本系统面向已有的非结构化、半结构化资料,包括 PDF、Word、PPT、TXT、图片等。资料经过解析、切块、问题生成、答案生成和逐级治理,最终形成用于大模型监督微调(SFT)的高质量单轮问答数据集。
最终交付的单条样本格式为:
{
"messages": [
{"role": "user", "content": "问题内容"},
{"role": "assistant", "content": "答案内容"}
]
}本章是总体设计:明确系统有哪些能力、各能力如何衔接、数据如何流转和放行。EasyDataset 的具体接口、Markdown 如何分批读取、提示词生产最终做成 Skill 还是程序,均留待现状核实和详细设计阶段决定。
系统遵循两条基本规则:
- 加工一步,治理一步。 每阶段产生的结果通过治理后,才能进入下一阶段。
- 提示词先批准,再投入生产。 问题、答案及其质检提示词,需基于项目资料形成并经过试运行与审核。
2. 全流程:提示词准备与数据生产
系统包含两条相互衔接的流程。
2.1 数据生产流程
原始数据
↓
解析工具生成 Markdown
↓
【门禁 1:Markdown 治理】
↓ 仅放行有效 Markdown
导入 EasyDataset,生成文本块
↓
【门禁 2:文本块治理】
↓ 仅放行合格文本块
生成候选问题
↓
【门禁 3:问题治理】
↓ 仅放行合格问题
生成候选答案
↓
【门禁 4:答案治理】
↓ 仅放行合格问答对
形成固定版本的 SFT 数据集Markdown 治理是必经环节。解析工具成功输出 .md 文件,并不代表其内容完整、顺序正确或适合生成问答。
2.2 项目提示词准备流程
项目提示词以通过门禁 1 的 Markdown 资料集为主要依据,自行建设生产能力:
合格 Markdown 资料集
↓
分析实际主题、知识类型和内容边界
↓
形成项目范围与质量规则
↓
生成问题提示词、答案提示词
↓
形成对应的问题质检、答案质检提示词
↓
用实际资料试运行、审核、修订
↓
确定可投入生产的提示词版本书籍目录、Markdown 标题和文件名可以帮助识别主题,但目录不是必需输入。Word、PPT、TXT 没有目录时,仍应能够依据 Markdown 原文形成项目范围与提示词。
提示词准备流程在问题生成前完成。合格 Markdown 可以先用于切块;批量生成问题时,需要同时具备已放行文本块和已批准的项目提示词版本。
2.3 两条流程的汇合点
合格 Markdown ──→ 文本块 ──→ 文本块放行 ───────────┐
│ │
└→ 项目规则与提示词 ──→ 试运行、审核、定版本 ───┤
↓
生成问题
↓
问题治理与放行
↓
生成答案
↓
答案治理与放行提示词审核是生产准备的审核;Markdown、文本块、问题、答案治理是数据产物的四道门禁。两者职责不同,不能互相代替。
3. 系统边界与职责
| 能力 | 主要职责 |
|---|---|
| 原始数据管理 | 保存原件、来源及版本,支持后续回查 |
| 文件解析 | 将 PDF、Word、PPT、TXT、图片等转换为 Markdown |
| Markdown 治理 | 判断解析结果是否有效,决定能否进入后续流程 |
| 项目提示词生产 | 分析合格 Markdown,形成项目规则、生成提示词和质检提示词;经试运行后发布版本 |
| EasyDataset 加工 | 对合格 Markdown 切块,使用项目配置的模型和提示词生成问题、答案 |
| 逐级数据治理 | 检查、审核、追溯和筛选文本块、问题、答案,控制阶段放行 |
| 数据集发布 | 汇总已批准问答,形成固定版本并导出训练文件 |
“治理程序”表示一组统一的治理能力,并不预设必须由单一软件承担全部功能。EasyDataset、解析工具和自研程序可以分工执行;但放行规则、来源关系、审核结果和发布资格需要在整体设计中统一管理。
项目提示词生产能力也需要我们自行建设。此前提及的同事 Skill 未共享,不能作为本系统的现成组件;其实现形式暂不预定。
4. 项目提示词体系
4.1 提示词的依据
提示词生产首先需要理解项目资料实际包含什么,再确定:
- 哪些主题属于本项目;
- 要训练模型回答哪些类型的问题;
- 哪些内容适合提炼为通识,哪些个案应排除;
- 抽象时哪些适用条件、例外和措辞强度必须保留;
- 答案应如何表达;
- 哪些问题交给固定规则检查,哪些需要语义质检。
这些规则不能只凭目录标题推断。Markdown 原文是主要依据;项目训练目标和人工确定的取舍要求也是必要输入。生成后的项目规则应可供审核,而不是直接投入大批量生产。
4.2 四类提示词
| 提示词 | 运行时应接收的内容 | 职责 |
|---|---|---|
| 问题生成提示词 | 合格文本块、项目规则 | 生成明确、有价值、能够由来源回答的问题 |
| 问题质检提示词 | 来源文本、候选问题、项目规则 | 检查主题范围、限定条件、独立性和可回答性 |
| 答案生成提示词 | 已放行问题、相关来源、项目规则 | 生成忠于来源的答案 |
| 答案质检提示词 | 相关来源、问题、候选答案、项目规则 | 核查问答对应关系及答案各项关键结论的依据 |
问题和答案质检提示词可以参考生成提示词中的要求产生,但还应与项目规则核对,避免遗漏。特别是来源语义质检必须看到来源内容:只审阅最终 QA,可以发现格式或表达问题,无法判断专业结论是否来自原文。
4.3 固定规则与语义质检
两类检查各有职责:
- 固定规则检查:由程序检查明确可判定的问题,例如输出格式、空内容、数量限制、特定禁用表达及明显重复。
- LLM 语义质检:判断问题是否扩大原文范围、来源是否足以回答、答案是否加入无依据内容,以及条件、例外和规范性用语是否变化。
语义质检输出应能明确对应被检查的产物,并给出判定及原因,便于程序控制流转。输出结构和具体调用方式在详细设计阶段确定。
4.4 提示词投入生产的条件
一套提示词生成后,需选取具有代表性的文本块和问答试运行,包括典型内容、边界内容与明显不合格内容。审核重点是:
- 是否保留有价值的知识,避免误杀;
- 是否拦截来源不足或超出项目范围的内容;
- 生成提示词与质检提示词是否存在冲突;
- 质检结果是否足够明确,能用于流程放行;
- 对相同项目资料,结果是否符合训练目标。
审核通过后,将项目规则、生成提示词和质检提示词作为一个可追溯的版本组合投入生产。
5. 统一数据模型
系统需要管理以下对象及其关系:
项目与资料集
├─ 项目规则、提示词版本
└─ 原始文件
└─ Markdown 解析结果
└─ 文本块
└─ 候选问题
└─ 候选答案
└─ 已批准问答样本
└─ 数据集版本对象之间不必限定为一对一。一份原始文件可以产生多个解析版本;一个文本块可以产生多个问题;一个问题可以有多个答案候选;一个答案也可能需要多个相关文本块共同提供依据。
每个阶段的产物至少需要关联四类信息:
- 身份:产物本身及所属项目。
- 来源:上游产物、原始文件和可核对的位置。
- 加工过程:解析方式、切分规则、模型与提示词版本。
- 治理过程:检查结果、问题原因、审核决定及时间。
已批准问答样本与候选问题、候选答案需要区分。模型生成成功,仅表示候选结果产生;只有完整来源链及对应门禁通过,才能形成可发布样本。
EasyDataset 中的记录标识可作为外部关联信息保存。统一数据模型应能独立表达来源关系,以便后续调整工具。
6. 四道质量门禁与流转规则
每个阶段采用同一套基本流转逻辑:
已放行上游产物
→ 加工
→ 候选产物
→ 检查与审核
→ 放行 / 待处理 / 剔除| 门禁 | 主要判断 | 放行后允许的下一步 |
|---|---|---|
| Markdown | 内容是否完整、顺序正确、关键含义准确、能够回查原件 | 进入资料分析与文本切块 |
| 文本块 | 语义是否完整,条件与例外是否保留,是否适合提问 | 进入问题生成 |
| 问题 | 是否明确、有训练价值、边界准确、来源足以回答 | 进入答案生成 |
| 答案 | 是否回答所问,关键结论是否有依据,条件和措辞强度是否准确 | 形成已批准问答样本 |
放行允许该产物进入下一步;待处理表示需要复核、修正或重新生成,暂不流转;剔除表示该候选结果不再使用。每项决定应记录具体原因。
一批加工任务成功,不代表批次中的每个结果都合格。例如,同一份 Markdown 产生的文本块可以分别放行、待处理或剔除。系统应以具体产物的治理结果控制后续流转。
发现错误时,应从最早出错的环节修复。Markdown 数值错误需要回到解析结果;问题扩大适用范围需要修正问题;答案自行补充原因则处理答案。上游修复后,相关下游结果应重新核对,不能无条件沿用旧放行结论。
7. 版本与重跑
系统至少要区分:
| 版本 | 说明 |
|---|---|
| 来源版本 | 原始文件内容的变化 |
| Markdown 与加工版本 | 解析方式、切块规则、模型等加工条件的变化 |
| 提示词版本 | 项目规则以及问题、答案生成和质检要求的变化 |
| 数据集版本 | 某次发布实际包含的样本集合 |
变化发生后,先确定受影响范围,再决定复核或重跑:
- 原始文件或 Markdown 变化:检查相关文本块及其下游问答。
- 切块规则变化:检查新文本块及其下游问答。
- 问题生成提示词变化:检查新问题和对应答案。
- 答案生成提示词变化:检查新答案。
- 质检规则变化:先复查受影响的产物,再决定是否需要重新生成。
- 项目资料范围变化:复核项目规则和提示词是否仍适用。
提示词发布新版本,不意味着旧问答自动错误;但新生成的结果应记录所用版本,旧结果是否继续入集需要按当前发布标准判断。任何重跑产生的新结果都属于候选产物,必须重新经过对应门禁。
已发布并用于训练的数据集版本保持固定。后续发现问题,在新版本中修正,并记录受影响的旧版本和样本。
8. 数据集发布
一条问答进入发布候选集,需要具备完整来源链,以及 Markdown、文本块、问题、答案四道门禁的有效放行记录;还要符合本项目的训练目标和使用范围。
发布前除逐条资格检查,还应检查整个数据集的重复程度、知识覆盖、样本分布和来源版本冲突。单条问答通过审核,不意味着它一定被本版收录。
每次发布形成一个固定快照:明确收录哪些样本、采用哪些来源和提示词版本、实际交付哪个训练文件。最终导出为约定的 messages 结构;来源、证据、审核过程等治理信息保留在生产体系中,与导出样本保持关联。
导出时应全量验证 JSON 格式、角色顺序、内容非空、样本数量与发布清单一致,并确保未放行样本没有混入。如果另有训练集与验证集划分,也应固定划分结果并检查同源相似问答的交叉情况。
9. 进入下一阶段前需要核实的事项
这份总体设计确定了应具备的能力,尚未断言当前 EasyDataset 都能直接提供。进入详细设计前,需要核实:
- 能否取得文本块、问题、答案各阶段结果及其对应关系;
- 能否只让已放行文本块进入问题生成、已放行问题进入答案生成;
- 提示词如何配置和更新,能否关联具体生成批次;
- 各阶段结果如何获取,以便固定规则检查、LLM 质检及人工复核;
- 合格问答如何按约定格式导出,并与治理记录对应。
核实后,再确定自研能力的具体边界,以及提示词生产最终采用 Skill、程序或组合方式。
本框架的整体原则是:以合格 Markdown 原文确定项目提示词,以已批准提示词驱动加工,以四道门禁控制数据流转,以来源和版本关系保证最终训练数据集可核实、可复现。