资讯动态

Docling 智能文档解析实战:3 步把 PDF、DOCX 转成结构化数据

发布时间:2026/8/30 10:22:04 来源:尧图企业网站定制
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),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价