项目中的文档清洗具体做了哪些工作?

考查重点:清洗范围与结构保留。解析正文、去页眉广告与重复,修复断行;保留标题、表格、版本和权限,抽样对照原文验证没有删掉关键限制

本题目录

参考答案

核心回答

文档清洗要解决的是:入库内容是否完整、可读、能保留原意并追溯来源。一般先识别文件格式和编码、正确解析正文,再去除页眉页脚、导航广告与重复内容,修复可确认的断行和字符问题,保留标题、表格、代码、版本与权限,最后抽样对照原文和真实问答验证。

项目回答应结合实际处理过的数据讲清规则、异常及验证。比如运维知识库里,重复页脚可以去掉,但错误码、命令参数、单位和“不适用于某版本”的条件必须留下;清洗后的文字更短,不代表质量更高。

先把解析问题与清洗问题分开

HTML要提取有效正文,避免把菜单和推荐列表当知识;文本PDF检查阅读顺序和多栏,扫描件再走OCR;表格要保留表头与行列对应,代码保留缩进、符号和所属语言。扩展名不能代替格式判断,解析结果为空或文字异常时应标记失败,不能当成功文档静默入库。

解析正确后,再处理多余空白、重复页眉页脚、明确的乱码和爬虫残留。中文换行不能一律拼接,英文断词也不能仅靠删除连字符;规则应根据文档类型设计,并保留原始文件与转换版本以便回看。

去重与版本如何处理

完全重复可用内容哈希识别;模板相似或近重复可以先找候选,再检查关键差异。两份制度只改一个生效日期,或代码示例只差一个否定条件,都不能直接合并成相同内容。

相同正文可能来自多个入口,合并索引内容时仍要保留各自来源与授权边界;不同版本记录生效时间和替代关系,不能只按“最后抓到”决定哪个正确。过时内容要按业务策略过滤或标注,不从文本里猜一个最新版本。

清洗后怎样验收

结构检查包括必需元数据、可读文本、异常字符、重复率、表格和代码完整性;抽样按文件类型、长度和解析器分层,对照原文看是否漏掉结论、条件或例外。

再用真实问题检查证据是否还在:清洗前能定位的错误码、参数或条款,清洗后是否仍能检索并回答。可比较固定评测集的证据覆盖、答案准确和失败样例,保留每条规则的版本;固定评测集与代表性失败样例比单报处理条数更能说明清洗效果。

常见追问

用大模型统一改写是否更干净? 可以辅助识别异常或整理结构,但事实、数字和否定条件需要回到原文核对;大量自动改写会增加语义漂移和成本,确定性规则能解决的先用规则。

对应教程

参考资料

  • 国内:RAG文档处理与切分策略:依据文档解析、清洗与分层检查,说明正文中多栏、表格、乱码和正文噪声需要按类型处理的原因。
  • 国内:RAG知识库更新与维护:更新链路与版本管理部分说明为什么去重和清洗后仍要保存来源、版本及可回放原文。
  • 国内:Agent RAG与混合检索工程高频考点:参考文档治理与检索工程的分工,说明正文中清洗后沿证据检查链路、区分解析遗漏与生成错误的方法。
  • 国外:Docling:Chunking:结构化文档与分块的关系说明清洗后应保留标题、表格和来源位置,不能直接抹平成一串文本。
  • 国外:Unstructured:Chunking:按文档元素组合片段的机制说明解析结构为何影响切分,以及表格等元素为什么需要单独处理。

相关面经

3 篇

恒生电子

维护工程师
校招秋招二面
查看原面经 →
数据清洗、数据脱敏的难点与处理流程

汇川技术

全栈开发
秋招一面
查看原面经 →
追问
那你对于这些文档是如何清洗处理的,当时的一套方法论是什么;

字节跳动

后端开发工程师(AI / Agent 方向)
二面
查看原面经 →
数据清洗这块除了策略模式剔除meta信息,具体都做了哪些清洗工作?

收录题集

2 个来源,共2 份题集

RAG 知识库

沉默王二 · 王二讲 Agent · 1 条原题

查看题集 →

RAG 与检索系统:从 chunk 设计到多路召回

Onefly · zero2Agent · 1 条原题

查看题集 →

相关题目

4 题