AI产品经理:从文档解析到数据清洗,打造高质量RAG数据集

360影视 国产动漫 2025-09-11 10:41 3

摘要:在大模型应用落地的过程中,RAG(检索增强生成)正成为连接外部知识与智能问答的关键技术。但真正能跑通的RAG系统,背后依赖的是一套高质量的数据构建流程——从文档解析、内容切分,到数据清洗与结构化,每一步都决定了最终效果。本文将以产品经理视角,拆解打造高质量RA

在大模型应用落地的过程中,RAG(检索增强生成)正成为连接外部知识与智能问答的关键技术。但真正能跑通的RAG系统,背后依赖的是一套高质量的数据构建流程——从文档解析、内容切分,到数据清洗与结构化,每一步都决定了最终效果。本文将以产品经理视角,拆解打造高质量RAG数据集的完整路径,不仅讲方法,更讲实操,帮助你在AI项目中少踩坑、快落地。

RAG知识库作为大模型的“外挂记忆”,市面上实现的方法多种多样从Dify Agent自主搭建知识库Workflow到Langchain框架定制知识库逻辑以及大部分公司所用的对RAGFlow进行二次开发。但是真正起到决定作用的仍然是投入的数据,这篇文章将从“制定数据集标准”,“整理解析相关文档”,“清理打造结构化数据”三个方向出发。帮助每一位产品经理围绕着自己的产品制定相关策略。

从业务出发,了解数据处理标准;明确了解策略制定出发点

在整个RAG流水线中,数据提取是第一步,也是直接决定知识库质量的非常重要的一环。而且相比于其他步骤来说这一步相对可控。它的目标是保证数据完整、准确、易读。

内容的完整性:不要漏掉和业务相关内容,保证知识库知识的完整性

在搭建RAG知识库时,“内容的完整性”是核心原则之一。它指的是:知识库必须全面覆盖业务场景中的所有关键信息,不能遗漏任何与业务相关的内容,否则AI在回答用户问题时,就可能“答非所问”或“一问三不知”。

RAG系统的本质,是用知识库里的内容来“武装”大模型,让它在回答问题时,能从知识库里找到准确、可靠的信息,再生成答案。如果知识库里缺了某块业务内容,AI就算再聪明,也“巧妇难为无米之炊”,只能凭空编造或给出错误答案。

内容准确:错误的信息,对于大模型就是致命的毒药

在RAG系统中,错误信息如同被注入大模型血脉的“毒药”——它先污染知识库,再随检索进入模型视野,而大模型对检索结果天然“信任”,不加辨别地将其当作事实,于是少量错误便被放大成指数级灾难:一次失效参数、一条过时政策、一处表格误读,都会在生成环节被模型自信地包装成权威答案,直接反噬用户体验与企业信誉,最终让系统“越智能越危险”。

关系完整:没有目录的说明书,大模型真的很难理解

把RAG知识库比作一本“拆散”的说明书:如果把所有段落、图片、表格全部撕下来混在一起丢进抽屉,再聪明的大模型也只能像盲人摸象——它确实“看过”每一页,却永远搞不清哪一步该先拧螺丝、哪一步该后插电源。所谓“关系完整”,就是给这些碎片补上目录、页码、箭头、折痕:让“第3步的螺丝”能一眼找到“第2步的螺母”,让“故障代码E1”立刻定位到“附录的电路图”。缺少这层目录式关联,大模型只能凭字面相似度瞎猜,结果就是把“电池正反面”答成“正反两面都有电池”。因此,没有目录的说明书,大模型真的很难理解——它不缺字,缺的是字与字之间的“血缘”。

元数据完整:数据本身的各类属性也是大模型的重要参考

在RAG知识库里,元数据就像超市货架上的价签、保质期和条形码:它们不是商品本身,却告诉大模型“这袋牛奶产自哪家牧场、哪天到期、该放第几排冷柜”。当用户问“孕妇能喝什么牛奶”时,模型无需把牛奶盒子逐字嚼一遍,只要扫一眼元数据里的“成分、钙含量、适用人群”,就能瞬间筛出低脂高钙、未过期的几款。

若缺少这些属性标签,模型只能像闭着眼在仓库里乱摸,把奶粉当鲜奶、把猫罐头推给孕妇。因此,数据本身的各类属性——时间、来源、格式、权限、语义标签——就是那张让大模型“秒懂”的隐形目录;元数据越完整,模型越能把碎片拼成正确答案,而不是拼出一盘“知识沙拉”。

了解各类文件解析逻辑,达成“成本”,“质量”,“速度”三角

无论哪种文档类型都需要输出一个统一格式,结构化明确,内容完整的RAG数据。每一种数据特性各不相同,需要产品根据“成本”,“质量”,“速度”进行三角思考。得到最适用的处理方法。

Word文档解析逻辑

在 RAG 系统的知识源接入过程中常常需要将 Word 格式的文档内容结构化处理,以便后续向量化、检索与生成。

–「解析流程」(文章会提供一键化工具,这里只是提供一个脚本编写逻辑)

(1) 文本内容解析

使用 “python-docx” 库对 .docx 文件进行解析,提取出正文段落、标题等文本内容,并保持文档原有的结构层级(如段落编号、列表等)。

(2) 图片内容提取与映射管理

将文档中的所有插图、截图等图像内容导出至指定的image_folder 文件夹,并在处理过程中建立 image_map 映射关系: 映射字典的 key:图片在文档中的引用 ID映射字典的 value: HTML 格式的

标签(指向图片路径)

(3) 文档内容再处理与图片嵌入

在遍历文档正文内容时,若检测到图片引用位置,会动态调用image_map 中对应的

标签,将其插入至相应文本段落中,实现图文混排。整个处理过程遵循统一的 HTML 拼接逻辑。

(4) 生成最终HTML格式文档

输出结果为包含富文本结构(文本 + 图片)的 HTML 内容块,方便后续用于:向量化切分分块(RAG文档预处理);检索展示(检索结果高亮/插图还原);页面预览(用户检索结果直观呈现)

PDF文档解析逻辑

构建企业级知识库时,PDF 是极为常见的数据来源。但其天然的“非结构化”特点,相比 Word、HTML 等文档,处理难度和技术复杂度显著更高,原因如下:

Word/HTML/Markdown属于有标记文档(structureddocuments),天生具备结构化标签(如段落、列表、表格等),计算机可直接解析。PDF则是版面呈现驱动的文件格式,本质上是为“人看”而设计,内容以页面流形式按坐标绘制,不含语义结构信息。

第一步:PDF文本内容提取:

(1)使用如 pdfplumber / PyMuPDF 等工具,对 PDF页面流进行解析(或者直接用OCR+文档解析)

(2) 提取每一页的文字块,并保留其坐标信息(x/y 位置、字体大小、页码等)

(3) 输出为结构化的“段落 + 位置信息”集合,为后续重构文档结构做准备

第二步:版面还原与语义聚合:

(1) 基于字符位置与排版特征,重建段落/标题/列表等结构;

(2) 对换行断句等错误进行修复(如段落跨页断裂、空格消失等);

(3) 利用规则/模型判断内容的逻辑层级(如“二级标题”、“表格行”)

第三步:图文内容同步处理

(1) 检测文档中出现的嵌入图片(如表单截图、流程图等);

(2) 将图片抽取至 image_folder,并建立 ID ↔ 图片HTML 映射;

(3) 在解析出的文本中插入 img 标签,形成图文结合的HTML 片段

第四步:生成统一格式文档片段

(1) 最终输出标准 HTML 文本块,每块表示一个段落/图文片段;

(2) 用于后续向量化切块、RAG 检索调用、富文本问答展示等流程

多模态预料如何处理

1、音频怎么处理(如会议录音、播客等)最小可行做法(先跑通):

(1) 转文字(ASR):先用语音识别(ASR)把整段音频转成文字,自动生成时间戳(如:10:12-10:40)。

(2)切块:每20-40秒切成一段,段与段之间重叠2-3秒,每段都保留开始/结束时间,避免语义被切断(每段保留 {text,start, end, audio_path}四元组,方便后续拼接)。

(3) 构建索引:建立语义索引和关键词索引(方便检索时按关键词/语义快速检索)。

(4)检索流程:用户提问 在索引中检索 找到相关切块>按时间顺序拼接,返回文本答案-附上时间戳跳转,支持“回溯原音频”。

2、视频怎么处理(如课程、直播、产品演示):

最小可行做法(先跑通):先用最低成本跑通“音轨问答”,再按需叠加“画面信息”

(1)抽取音轨:参照音频流程做(ASR 切块 索引),快速覆盖大部分基于口述内容的问题

(2)进阶:补画面信息(两步)

关键帧/关键页:镜头切换检测(如在PPT翻页/镜头切换)时,自动抓一张截图,作为“视觉书签”。OCR识别:对截图做文字识别,提取出标题、要点、表格、代码等。(输出:{timestamp,image_path,ocr_text})

把识别出的文字场块,并和 时间戳、截图地址绑定。

用户提问时,系统既能在音轨文字里找到答案,也能在截图文字里定位关键信息,并能返回“相关画面”。

数据清洗,打造高质量数据集

在RAG(Retrieval-Augmented Generation)知识库的搭建过程中,文档解析只是第一步,它的目标是将非结构化或半结构化的文档内容转化为可处理的文本格式。但解析后的原始文本往往存在大量噪声、冗余、格式混乱、语义不连贯等问题,如果直接用于后续的分块、 embedding 和检索,会严重影响检索的准确性和生成模型的回答质量。

因此,数据清洗(Data Cleaning)是必不可少的一步,它的核心目标是:将解析后的原始文本转化为高质量、结构化、语义清晰的文本数据,为后续的向量化、检索和生成打下坚实基础。

以下是一个适用于RAG知识库的标准数据清洗流程,建议按顺序执行:

1. 格式清理(Format Cleaning)

去除HTML/XML标签、LaTeX命令、页眉页脚、页码、水印清除PDF解析残留(如“©2023CompanyName”)统一换行符、空格、制表符(如\n\r→\n)

2. 编码与字符标准化

统一UTF-8编码全角转半角(如中文括号→英文括号)去除不可见字符(如零宽空格、BOM头)统一标点符号(中文句号→英文句号,或反之)

3. 冗余信息过滤

去除版权声明、免责声明、广告、重复段落删除“目录”、“参考文献”、“致谢”等非正文部分去除短于N个字符的无意义段落(如“第1章”)

4. 结构恢复(Structure Restoration)

恢复标题层级(如“1.1.2小节”→三级标题)合并被错误拆分的段落(如跨页段落)将表格、列表、代码块还原为结构化文本(如Markdown格式)

5. 语义连贯性修复

合并断句(如“如图\n2-1所示”→“如图2-1所示”)修复OCR错误(如“机哭学习”→“机器学习”)统一术语(如“NLP”、“自然语言处理”→统一为“自然语言处理”)

6. 语言与分词预处理

中英文之间加空格(如“使用Python进行数据分析”→“使用Python进行数据分析”)统一术语大小写(如“openai”、“OpenAI”→“OpenAI”)可选:进行分词、词干提取(视embedding模型而定)

7. 分块前准备(Pre-chunking Preparation)

按标题、段落、句子进行初步切分保留标题与正文的关联(如“##标题\n正文”)标记特殊块(如代码块、表格、引用)

当收集到的业务文档根据产品所制定的一系列策略,从文档的整理到文档的解析,从凌乱的数据清洗成结构化的统一格式的数据。知识库的召回率和准确率将会大大提高,祝各位产品都能建立起一套逻辑清晰,输出直击答案的RAG知识库。

本文由 @产品经理小易 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

来源:人人都是产品经理

相关推荐