RAG系列:MinerU、Docling還是Unstructured?用OmniDocBench評(píng)測(cè)開源文檔解析工具
引言
從寫 RAG 開發(fā)入門這一系列文章開始,特別是文檔解析這個(gè)環(huán)節(jié),有很多讀者詢問某個(gè)文檔解析工具的能力怎么樣,和其它工具對(duì)比如何,這表明開源社區(qū)雖然涌現(xiàn)出了很多的文檔解析工具,但是它們?cè)趯?shí)際場(chǎng)景的表現(xiàn)到底如何,這在很多人中是沒有太明確答案的。因而,面對(duì)眾多工具的選擇,我們期望能有一個(gè)統(tǒng)一的基準(zhǔn)來評(píng)估其實(shí)際效果,而且對(duì)于大部分人來說是需要開箱即用的。
本文我將介紹一款由上海人工智能實(shí)驗(yàn)室開源的多源文檔解析評(píng)測(cè)框架 - OmniDocBench[1],憑借其多樣性、全面性和高質(zhì)量標(biāo)注數(shù)據(jù)以及配套的評(píng)測(cè)代碼,是一個(gè)不錯(cuò)的衡量文檔解析工具性能的選擇。
目前OmniDocBench已被CVPR2025接受! CVPR2025是計(jì)算機(jī)視覺與模式識(shí)別領(lǐng)域的頂級(jí)國際學(xué)術(shù)會(huì)議,被譽(yù)為計(jì)算機(jī)視覺領(lǐng)域的“三大頂會(huì)”之一(與ICCV、ECCV并列)。
OmniDocBench論文[2]:
https://arxiv.org/html/2412.07626v1
高質(zhì)量基準(zhǔn)測(cè)試集
OpenDataLab下載地址:https://opendatalab.com/OpenDataLab/OmniDocBench
Hugging Face下載地址:https://huggingface.co/datasets/opendatalab/OmniDocBench
高質(zhì)量基準(zhǔn)測(cè)試集是OmniDocBench的核心價(jià)值,其特點(diǎn)主要包括:
- 文檔類型多樣:該評(píng)測(cè)集涉及 981 個(gè) PDF 頁面,涵蓋9 種文檔類型(如學(xué)術(shù)文獻(xiàn)、財(cái)報(bào)、報(bào)紙、教材、手寫筆記等)、4 種排版類型(表格密集型、圖文混合型、純文本型等)和3 種語言類型(中文、英文、混合語種);
- 標(biāo)注信息豐富:包含 15 個(gè) block 級(jí)別(文本段落、標(biāo)題、表格等,總量超過 20k)和 4 個(gè) Span 級(jí)別(文本行、行內(nèi)公式、角標(biāo)等,總量超過 80k)的文檔元素的定位信息,以及每個(gè)元素區(qū)域的識(shí)別結(jié)果(文本 Text 標(biāo)注,公式 LaTeX 標(biāo)注,表格包含 LaTeX 和 HTML 兩種類型的標(biāo)注)。OmniDocBench 還提供了各個(gè)文檔組件的閱讀順序的標(biāo)注。除此之外,在頁面和 block 級(jí)別還包含多種屬性標(biāo)簽,標(biāo)注了 5 種頁面屬性標(biāo)簽、3 種文本屬性標(biāo)簽和 6 種表格屬性標(biāo)簽;
- 標(biāo)注質(zhì)量高: 經(jīng)過人工篩選、智能標(biāo)注、人工標(biāo)注及全量專家質(zhì)檢和大模型質(zhì)檢,數(shù)據(jù)質(zhì)量較高。
數(shù)據(jù)展示
支持多種衡量指標(biāo)
OmniDocBench目前支持的衡量指標(biāo)包括:
1. Normalized Edit Distance(歸一化編輯距離):這個(gè)指標(biāo)計(jì)算兩個(gè)字符串之間的最小編輯操作次數(shù)(包括插入、刪除、替換),并將這個(gè)距離進(jìn)行歸一化處理,通常用于衡量兩個(gè)字符串或文本序列之間的相似度。歸一化處理是為了讓結(jié)果在 0 到 1 之間,便于比較;
2. BLEU(雙語評(píng)價(jià)替補(bǔ)/Bilingual Evaluation Understudy):BLEU 是機(jī)器翻譯領(lǐng)域中常用的自動(dòng)評(píng)估指標(biāo),它通過比較候選譯文和一組參考譯文之間的 n-gram 重疊程度來計(jì)算得分,以此衡量機(jī)器翻譯的質(zhì)量。BLEU 分?jǐn)?shù)越高,表示機(jī)器翻譯的結(jié)果越接近人工翻譯;
3. METEOR(基于明確排序的翻譯評(píng)估/Metric for Evaluation of Translation with Explicit ORdering):METEOR 是一個(gè)更加復(fù)雜的翻譯質(zhì)量評(píng)估指標(biāo),它不僅考慮了單詞精確匹配,還包括詞干匹配、同義詞匹配等,并且會(huì)根據(jù)詞序差異對(duì)得分進(jìn)行調(diào)整。因此,它比 BLEU 更能反映句子間的語義相似性;
4. TEDS(基于樹編輯距離的表格相似度/Tree-based Edit Distance for Tables):TEDS 是一種專門用來評(píng)估表格結(jié)構(gòu)相似度的指標(biāo)。它將表格轉(zhuǎn)換為樹形結(jié)構(gòu),然后計(jì)算兩棵樹之間的編輯距離,以此來衡量表格結(jié)構(gòu)上的相似度。這種指標(biāo)特別適用于表格解析或者表格生成任務(wù)中的準(zhǔn)確性評(píng)估;
5. COCODet (mAP, mAR, etc.):COCODet 指的是使用在 COCO 數(shù)據(jù)集上定義的一系列目標(biāo)檢測(cè)性能評(píng)估指標(biāo),主要包括:
- mAP(平均精度均值/Mean Average Precision):衡量模型在不同 IoU(交并比)閾值下的平均精度;
- mAR(平均召回率均值/Mean Average Recall):衡量模型在不同 IoU 閾值下的平均召回率。
每個(gè)指標(biāo)都有其特定的應(yīng)用場(chǎng)景和優(yōu)勢(shì),你可根據(jù)具體的應(yīng)用需求和上下文配置合適的衡量指標(biāo)。
開箱即用的評(píng)測(cè)方法
OmniDocBench開發(fā)了一套基于文檔組件拆分和匹配的評(píng)測(cè)方法,對(duì)文本、表格、公式、閱讀順序這四大模塊分別提供了對(duì)應(yīng)的指標(biāo)計(jì)算,評(píng)測(cè)結(jié)果除了整體的精度結(jié)果以外,還提供了分頁面以及分屬性的精細(xì)化評(píng)測(cè)結(jié)果,精準(zhǔn)定位模型文檔解析的痛點(diǎn)問題。
下載項(xiàng)目
git clone https://github.com/opendatalab/OmniDocBench.git
環(huán)境配置和運(yùn)行
conda create -n omnidocbench pythnotallow=3.10
conda activate omnidocbench
pip install -r requirements.txt
下載評(píng)測(cè)集
OpenDataLab下載地址:https://opendatalab.com/OpenDataLab/OmniDocBench
Hugging Face下載地址:https://huggingface.co/datasets/opendatalab/OmniDocBench
評(píng)測(cè)集的文件夾結(jié)構(gòu)如下:
OmniDocBench/
├── images/ // Image files
│ ├── xxx.jpg
│ ├── ...
├── pdfs/ // Same page as images but in PDF format
│ ├── xxx.pdf
│ ├── ...
├── OmniDocBench.json // OmniDocBench ground truth
評(píng)測(cè)配置
所有的評(píng)測(cè)的輸入都是通過config文件進(jìn)行配置的,在configs路徑下提供了各個(gè)任務(wù)的模板。
比如端到端評(píng)測(cè),你只需要在end2end.yaml文件中的ground_truth的data_path中提供 OmniDocBench.json的路徑,在prediction的data_path中提供包含推理結(jié)果的文件夾路徑,如下:
# -----以下是需要修改的部分 -----
dataset:
dataset_name: end2end_dataset
ground_truth:
data_path: ./OmniDocBench.json
prediction:
data_path: path/to/your/model/result/dir
配置好config文件后,只需要將config文件作為參數(shù)傳入,運(yùn)行以下命令即可進(jìn)行評(píng)測(cè):
python pdf_validation.py --config configs/end2end.yaml
對(duì)開源工具的評(píng)測(cè)
可以端對(duì)端評(píng)測(cè)綜合能力,也可以分項(xiàng)(文本、公式、表格、布局)評(píng)測(cè)。
下面各個(gè)開源工具/模型的評(píng)測(cè)結(jié)果均是基于OmniDocBench的真實(shí)評(píng)測(cè),可直接作為選擇的依據(jù)。
端到端評(píng)測(cè)
端到端評(píng)測(cè)是對(duì)模型在PDF頁面內(nèi)容解析上的精度作出的評(píng)測(cè)。以模型輸出的對(duì)整個(gè)PDF頁面解析結(jié)果的Markdown作為Prediction。
公式識(shí)別評(píng)測(cè)
OmniDocBench包含每個(gè)PDF頁面的公式的bounding box信息以及對(duì)應(yīng)的公式識(shí)別標(biāo)注(包括行間公式equation_isolated和行內(nèi)公式equation_inline),因此可以作為公式識(shí)別評(píng)測(cè)的benchmark。
文字OCR評(píng)測(cè)
OmniDocBench包含每個(gè)PDF頁面的所有文字的bounding box信息以及對(duì)應(yīng)的文字識(shí)別標(biāo)注(包含block_level的標(biāo)注和span_level的標(biāo)注),因此可以作為OCR評(píng)測(cè)的benchmark。
表格識(shí)別評(píng)測(cè)
OmniDocBench包含每個(gè)PDF頁面的公式的bounding box信息以及對(duì)應(yīng)的表格識(shí)別標(biāo)注(包括HTML和LaTex兩種格式),因此可以作為表格識(shí)別評(píng)測(cè)的benchmark。
布局檢測(cè)
OmniDocBench包含每個(gè)PDF頁面的所有文檔組件的bounding box信息,因此可以作為布局檢測(cè)任務(wù)評(píng)測(cè)的benchmark。
結(jié)語
本文給大家介紹了一款由上海人工智能實(shí)驗(yàn)室開源的多源文檔解析評(píng)測(cè)框架-OmniDocBench,希望大家通過該評(píng)測(cè)框架,可以選出適合自己實(shí)際業(yè)務(wù)場(chǎng)景的文檔解析工具。
引用鏈接
[1]
OmniDocBench: https://github.com/opendatalab/OmniDocBench
[2]
OmniDocBench論文: https://arxiv.org/html/2412.07626v1