Docling
**项目简介** Docling 是由 IBM Research Zurich 团队开源的文档智能解析框架
项目简介
Docling 是由 IBM Research Zurich 团队开源的文档智能解析框架,旨在将 PDF、DOCX、PPT、HTML、图片、音频等几乎所有常见文档格式统一转换为可供大模型直接使用的结构化内容。项目采用 Python 开发,已在 GitHub 上获得数千 Star,被 LF AI & Data 基金会收录为官方项目。
核心功能
- 多格式统一解析:支持 PDF、DOCX、PPTX、XLSX、HTML、EPUB、Apple Pages、LaTeX、图片(PNG/TIFF/JPEG)、音频(WAV/MP3)、视频、WebVTT 字幕、EML/MSG 邮件、ODF 文档(.odt/.ods/.odp)、XBRL 财务报表等超过二十种格式
- 深度 PDF 理解:内置页面布局分析、阅读顺序还原、表格结构识别、代码与公式检测、图片分类等高级能力,无需依赖外部 OCR 服务
- 多模态视觉模型支持:支持 GraniteDocling 等视觉语言模型,可对扫描件、图片型 PDF 进行端到端理解
- 结构化输出:提供 Markdown、HTML、DocTags、DocLang、USPTO 专利、JATS 学术文章、XBRL 财务报告等多种行业标准格式的导出接口
- RAG 生态集成:原生支持 LangChain、LlamaIndex、Crew AI、Haystack 等主流 Agent 与 RAG 框架,可无缝接入 AI 应用流水线
- MCP 服务器:提供 Model Context Protocol 服务器,接入任意 Agent 框架,实现用自然语言查询文档的体验
- 本地化执行:支持离线/气隙环境部署,数据不出本地,适合企业级敏感文档处理
- API 服务化:提供 docling-serve 服务端组件,可将 Docling 封装为 REST API 对外提供服务
技术实现
Docling 的技术架构分为三个核心层次。最底层是格式解析层,使用混合策略处理不同格式:PDF 采用基于 PyMuPDF 的布局分析引擎结合自定义阅读顺序模型;Office 文档通过 python-docx、openpyxl 等库解析 DOM 结构;图片和扫描件则调用 EasyOCR 或 Tesseract 进行文字识别。中间层是结构化转换层,将所有解析结果统一映射为 DoclingDocument 数据模型——这是一种基于 Pydantic 的强类型表达格式,能够保留文档的层级结构、表格关系和元数据信息。最上层是导出层,支持将 DoclingDocument 按需序列化为 Markdown、HTML、JSON、DocTags 等目标格式。2025 年新版本引入了 Heron 布局模型作为默认引擎,解析速度提升显著;同时新增 MCP Server 模块,使 Docling 可以作为工具被 AI Agent 通过自然语言调用。此外,项目还支持通过 uv 作为包管理器安装,进一步优化了依赖解析效率。
快速上手
第一步,安装 Docling。打开终端,执行 pip install docling 即可完成安装,Python 版本需 3.10 及以上,支持 macOS/Linux/Windows 及 x86_64/arm64 架构。
第二步,准备文档。可以传入本地文件路径或远程 URL,例如:source = "https://arxiv.org/pdf/2408.09869",Docling 支持自动识别文件类型并选择对应解析器。
第三步,执行转换。编写如下 Python 代码:
from docling.document_converter import DocumentConverter converter = DocumentConverter() result = converter.convert(source) print(result.document.export_to_markdown())
也可以直接使用内置 CLI:docling https://arxiv.org/pdf/2206.01062,转换结果会自动保存为同目录下的 .md 文件。
第四步,接入 AI 应用。通过 LangChain 或 LlamaIndex 的文档加载器,将 Docling 作为 RAG Pipeline 的前置预处理环节,实现对非结构化 PDF 的向量化检索。对于 Agent 场景,可启动 MCP Server 让 Agent 通过自然语言指令查询文档内容。
适用人群
Docling 主要面向以下用户:AI 应用开发者需要将大量历史文档接入 RAG 或知识库系统;数据工程师负责构建企业级文档 ETL 流水线;研究人员需要批量解析学术论文、专利或财报;独立开发者或小型团队构建文档类 AI 产品(如合同审查、简历解析、论文摘要工具)。由于支持本地部署,它同样适合处理涉及隐私或合规要求的敏感文档场景。
评论与建议
登录 后参与评论或提建议