在处理文档时,了解处理结果的来源和位置对于调试、验证和优化处理流程至关重要。xParse 提供了丰富的元数据信息,支持完整的结果回溯和可视化功能。Documentation Index
Fetch the complete documentation index at: https://docs.textin.com/llms.txt
Use this file to discover all available pages before exploring further.
为什么需要结果回溯?
结果回溯可以帮助您:- 验证处理结果:确认解析、分块和向量化的结果是否正确
- 调试问题:当检索结果不理想时,可以追溯到原始文档位置
- 优化策略:通过分析处理过程,优化分块和向量化策略
- 用户展示:在 RAG 应用中,向用户展示检索结果的原始位置
- Agent决策支持:在Agent应用中,为Agent决策提供”证据链”,增强决策的可信度和可解释性
- 质量控制:审核和校正处理结果,确保数据质量
回溯机制概览
xParse 通过以下机制支持结果回溯:- 元素 ID(element_id):每个元素的唯一标识符,基于内容、位置和文件信息生成
- 元数据(metadata):包含文件信息、页面位置、坐标等溯源信息
- 原始元素追踪(orig_elements):分块后可以追溯到组成块的原始元素
- 数据源信息(data_source):记录文件的来源、版本和处理时间
- 坐标信息(coordinates):精确定位元素在原始页面上的位置
元数据字段详解
文件信息
每个元素都包含以下文件信息,用于追溯到原始文件:- filename:文件名,用于识别源文件
- filetype:文件的 MIME 类型
- last_modified:文件最后修改时间(Unix 毫秒时间戳)
页面位置信息
- page_number:元素所在的页码(从 1 开始)
- page_width:页面宽度(像素)
- page_height:页面高度(像素)
坐标信息(coordinates)
坐标信息用于精确定位元素在页面上的位置:[x1, y1, x2, y2, x3, y3, x4, y4],表示一个四边形的四个顶点坐标,按顺时针排列:
- 原点位于页面左上角
- 坐标为归一化坐标,范围在 [0, 1] 之间,保留4位小数
- 坐标值相对于页面尺寸(page_width × page_height)进行归一化
层级关系
- parent_id:父节点 ID,用于构建元素之间的层级关系
- category_depth:在同类元素中的层级深度(如标题等级:H1=0, H2=1, H3=2)
数据源信息(data_source)
data_source 字段包含完整的数据源信息:
- record_locator:记录原始文件的归档信息
- protocol:协议类型(如
file、s3、ftp等) - remote_file_path:远程文件路径
- protocol:协议类型(如
- url:原始文件的 URL 地址
- version:原始文件的版本号
- date_created:文件创建时间(毫秒时间戳)
- date_modified:文件修改时间(毫秒时间戳)
- date_processed:文件处理时间(毫秒时间戳)
分块结果溯源
当使用分块功能时,可以通过orig_elements 字段追溯到组成块的原始元素。
启用原始元素追踪
在分块配置中设置include_orig_elements=true:
解码原始元素
orig_elements 字段是一个 gzip 压缩后的 Base64 字符串,需要按以下步骤解码:
完整示例:追踪分块来源
坐标可视化
利用坐标信息,您可以在原始文档上可视化元素位置,这对于验证处理结果和用户展示非常有用。 xParse 提供了多种可视化方案:开源前端可视化 SDK
@xparse-kit/visualizer 是一个开源的前端可视化 SDK,可以直接在浏览器中可视化文档解析结果,支持缩放、旋转、页面导航等交互功能。详见前端可视化 SDK 教程。
Python 后端可视化
使用 PIL/Pillow 等库在服务端生成可视化图片,适合批量处理和自动化场景。 坐标可视化示例 以下示例展示如何在原始页面上绘制元素边界框:完整回溯流程示例
以下示例展示如何从向量检索结果回溯到原始文档:最佳实践
- 启用原始元素追踪:在分块配置中设置
include_orig_elements=true,以便后续追溯 - 保存原始文件路径:确保
filename和data_source.url信息完整,便于定位源文件 - 利用坐标信息:使用
coordinates字段在原始文档上可视化元素位置 - 记录处理时间:利用
data_source.date_processed追踪处理时间,便于版本管理 - 构建元素映射:在处理大量文档时,可以构建
element_id到元素的映射,加速回溯
相关文档
- 文档元素和元数据 - 了解完整的元素结构和元数据字段
- 文本分块 - Chunk - 了解分块配置和
orig_elements的使用 - 文档解析 - Parse - 了解解析配置和坐标信息
- 快速启动 - 了解如何使用 Pipeline 处理文档

