
Docling 智能文檔解析實戰3 步把 PDF、DOCX 轉成結構化數據【免費下載鏈接】doclingGet your documents ready for gen AI項目地址: https://gitcode.com/GitHub_Trending/do/docling如果你要給 RAG 或智能體喂語料第一步多半卡在同一件事上手里的文檔五花八門而大模型要的是干凈的結構化文本。Docling 就是干這個的把 PDF、Word、PPT、Excel、HTML、圖片、音頻等幾十種文檔統一解析成同一套中間表示再一鍵導出成 Markdown、JSON、HTML 或純文本全程可在本地運行也內置了掃描件 OCR。下面用真實場景帶你看它怎么用、能用到什么程度。安裝與第一次轉換三條命令出結果pip install docling # 需要 Python 3.10 docling report.pdf # 在當前目錄生成帶結構的 .mdPython 里更常用from docling.document_converter import DocumentConverter converter DocumentConverter() result converter.convert(report.pdf) # 本地路徑或 URL 都行 print(result.document.export_to_markdown())到這里你就拿到了一份帶標題層級、表格、公式標記的 Markdown。它背后做的事值得花兩分鐘理解一下。看懂中間產物Docling 文檔模型是什么Docling 把每個格式交給一個專屬后端去讀取PDF 走 PDF 后端Word 走 MS Word 后端再交給對應的管道處理最后都落成同一個DoclingDocument對象。這一步是整個工具里最關鍵的設計不管你輸入什么格式拿到的都是同一套帶標題層級、表格行列、圖片、公式的樹形結構。后續導成 Markdown、無損 JSON或者切塊送向量庫操作的都是這個對象而不是每種格式各寫一套代碼。想細看結構定義可以從 docs/concepts/docling_document.md 入手。按場景用PDF、掃描件、混合批次和 RAG帶表格的 PDF 怎么解析默認管道已經會做版面分析、閱讀順序判斷和表格結構識別導出時表格會變成 Markdown 表格。對難啃的表格可以調一下結構識別模式from docling.datamodel.base_models import InputFormat from docling.datamodel.pipeline_options import PdfPipelineOptions, TableFormerMode from docling.document_converter import DocumentConverter, PdfFormatOption opts PdfPipelineOptions(do_table_structureTrue) opts.table_structure_options.mode TableFormerMode.ACCURATE converter DocumentConverter(format_options{ InputFormat.PDF: PdfFormatOption(pipeline_optionsopts) })ACCURATE精度更高、速度稍慢日常默認值就夠用遇到識別不干凈的復雜表格再切換。掃描件、老報紙、拍的照片呢這些沒有文本層的文檔把 OCR 模式設成FULL_PAGE就是整頁當圖片來識別比默認的檢測式 OCR 更徹底代價是更慢。Tesseract、EasyOCR、RapidOCR 等多個引擎可以按需切換完整例子在 docs/examples/full_page_ocr.py。一次處理一整箱混合格式在初始化時傳入allowed_formats白名單并用format_options對每種格式單獨定制參數一次轉換跑完。參考 docs/examples/run_with_formats.py。接 RAG 怎么切塊轉出來的文檔自帶官方分塊器按章節語義切塊并保留標題等元數據比簡單按字數截斷友好得多。分塊和序列化的完整玩法見 docs/concepts/chunking.md 與 docs/concepts/serialization.md。進階一置信度評分批量轉換不再裸奔跑批量任務最怕的是轉完了但不知道質量。ConversionResult里帶一個confidence報告從版面識別、OCR、文本單元格、表格四個維度打分再匯總成mean_grade和low_grade兩個等級從 POOR 到 EXCELLENT。實際用法就是設個閾值——等級低于 GOOD 的文檔自動轉人工復核不用逐份肉眼檢查。說明文檔在 docs/concepts/confidence_scores.md。進階二離線與內網環境部署Docling 默認全部模型本地推理不向外部服務發數據。首次運行會自動下載模型如果是斷網或內網環境先在聯網機器上執行docling-tools models download把模型拉到本地再設置DOCLING_ARTIFACTS_PATH環境變量指向該目錄即可完全離線。若確實要調用遠程服務比如云端圖片描述必須顯式打開enable_remote_servicesTrue否則直接報錯——這個默認關門的設計對敏感數據場景挺友好。細節在 docs/usage/advanced_options.md。常見坑先知道再踩版本門檻2.70.0 起要求 Python 3.10老環境會直接裝不上或跑不動。第一次很慢首次轉換要下載模型到~/.cache/docling/models之后就有緩存別把首跑時間當成真實性能。掃描件識別不全默認 OCR 是檢測式的掃描質量差時改用OcrMode.FULL_PAGE整頁識別。表格多列被并成一列把do_cell_matching設為False讓結構識別模型自己給出單元格文本通常能解決串列問題。轉換結果異常先看confidence定位是版面、OCR 還是表格環節出的問題再決定調參數還是換管道。適合誰用哪里還不行適合的場景給 RAG、檢索或智能體流程準備干凈的文檔語料把公司里 PDF/Office/HTML 混雜的文件統一成結構化數據處理敏感材料時全程本地閉環不出內網。局限也要說清楚復雜化學結構式分子結構圖目前還在開發計劃里純 CPU、無 GPU 的環境下帶版面分析模型的轉換速度有限音頻轉寫和視頻解析需要額外安裝asr組件。更多格式清單和選項見 docs/usage/supported_formats.md倉庫里docs/examples/目錄下的示例腳本基本覆蓋了常見用法可以直接照著改。【免費下載鏈接】doclingGet your documents ready for gen AI項目地址: https://gitcode.com/GitHub_Trending/do/docling創作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考