Docling 项目文档
摘要
Docling 是一个开源文档处理工具,可解析多种格式,包括高级 PDF 理解功能,并与 LangChain 和 LlamaIndex 等生成式 AI 生态系统提供集成。
查看缓存全文
缓存时间: 2026/09/19 14:49
docling-project/docling
来源:https://github.com/docling-project/docling
Docling
arXiv (https://arxiv.org/abs/2408.09869)
文档 (https://docling-project.github.io/docling/)
PyPI版本 (https://pypi.org/project/docling/)
PyPI - Python版本 (https://pypi.org/project/docling/)
uv (https://github.com/astral-sh/uv)
Ruff (https://github.com/astral-sh/ruff)
Pydantic v2 (https://pydantic.dev)
prek (https://pypi.org/project/prek/)
许可证 MIT (https://opensource.org/licenses/MIT)
PyPI下载量 (https://pepy.tech/projects/docling)
Docling Actor (https://apify.com/vancura/docling)
与Dosu聊天 (https://app.dosu.dev/097760a8-135e-4789-8234-90c8837d7f1c/ask?utm_source=github)
Discord (https://docling.ai/discord)
OpenSSF最佳实践 (https://www.bestpractices.dev/projects/10101)
LF AI & Data (https://lfaidata.foundation/projects/)
什么是Docling?
Docling通过解析多种格式(包括高级PDF理解)简化文档处理,并与生成式AI生态系统提供无缝集成。
功能特性
- 🗂️ 解析多种文档格式,包括PDF、DOCX、PPTX、XLSX、HTML、EPUB、Apple Pages、WAV、MP3、WebVTT、Box Notes、电子邮件格式(EML、MSG)、图像(PNG、TIFF、JPEG等)、LaTeX、DocLang、纯文本等。
- 📑 高级PDF理解,包括页面布局、阅读顺序、表格结构、代码、公式、图像分类等。
- 🧬 统一且富有表现力的DoclingDocument表示格式。
- ↪️ 多种导出格式和选项,包括Markdown、HTML、WebVTT、DocLang、DocTags (https://arxiv.org/abs/2503.11576) 和无损JSON。
- 📜 支持多种特定于应用的XML模式,包括DocLang (https://doclang.ai)、USPTO (https://www.uspto.gov/patents) 专利、JATS (https://jats.nlm.nih.gov/) 文章和XBRL (https://www.xbrl.org/) 财务报告。
- 🔒 适用于敏感数据和隔离环境的本地执行能力。
- 🤖 即插即用的集成,包括LangChain、LlamaIndex、Crew AI和Haystack,用于智能体AI。
- 🔍 广泛的OCR支持,适用于扫描PDF和图像。
- 👓 支持多种视觉语言模型,例如(GraniteDocling (https://huggingface.co/ibm-granite/granite-docling-258M))。
- 🎙️ 通过自动语音识别(ASR)模型提供音频支持。
- 🔌 通过MCP服务器 (https://docling-project.github.io/docling/usage/mcp/) 连接到任何智能体。
- 🌐 使用API服务器 (https://docling-project.github.io/docling/usage/api_server/) (docling-serve) 将Docling作为服务运行。
- 💻 简单便捷的CLI。
新增功能
- 🎬 解析视频文件(MP4、AVI、MOV、MKV和WebM),并提供ASR转录和代表性关键帧。
- 📄 解析ODF(开放文档格式)文件,包括文本文档(
.odt)、电子表格(.ods)和演示文稿(.odp)。 - 💼 解析XBRL(可扩展商业报告语言)文档,用于财务报告。
- 📧 解析电子邮件文件(
.eml、.msg)。 - 📚 解析EPUB(电子出版物)文件,用于电子书。
- 🍎 解析Apple Pages(
.pages)文档,支持两种容器代(Pages 5+ 和 iWork ’09)。 - 📝 解析纯文本文件(
.txt、.text)和Markdown超集(.qmd、.Rmd)。 - 📊 图表理解(柱状图、饼图、折线图):将它们转换为表格或代码,并添加详细描述。
即将推出
- 📝 元数据提取,包括标题、作者、参考文献和语言。
- 📝 复杂化学理解(分子结构)。
快速开始
1. 安装
pip install docling
注意: docling版本2.70.0已停止支持Python 3.9。请使用Python 3.10或更高版本。 支持macOS、Linux和Windows环境,适用于x86_64和arm64架构。 更多详细的安装说明 (https://docling-project.github.io/docling/getting_started/installation/) 可在文档中找到。
2. 转换文档(CLI)
docling https://arxiv.org/pdf/2206.01062
这将在当前目录生成一个.md文件,其中包含结构化的文档内容。 您也可以通过Docling CLI使用🥚GraniteDocling (https://huggingface.co/ibm-granite/granite-docling-258M) 和其他VLM:
docling --pipeline vlm --vlm-model granite_docling https://arxiv.org/pdf/2206.01062
3. Python用法(推荐)
from docling.document_converter import DocumentConverter
source = "https://arxiv.org/pdf/2408.09869" # 通过本地路径或URL提供文档
converter = DocumentConverter()
result = converter.convert(source)
print(result.document.export_to_markdown()) # 输出: "## Docling Technical Report[...]"
更多高级用法 (https://docling-project.github.io/docling/usage/) 和配置 (https://docling-project.github.io/docling/getting_started/installation/) 选项。
文档
查看Docling的文档 (https://docling-project.github.io/docling/),了解安装、用法、概念、示例、扩展等的详细信息。
示例
亲身体验我们的示例 (https://docling-project.github.io/docling/examples/),展示如何使用Docling应对不同的应用用例。
集成
为加速您的AI应用开发,请查看Docling与流行框架和工具的原生集成 (https://docling-project.github.io/docling/integrations/)。
获取帮助和支持
请随时通过讨论区 (https://github.com/docling-project/docling/discussions) 与我们联系。
技术报告
有关Docling内部工作的更多详细信息,请查看Docling技术报告 (https://arxiv.org/abs/2408.09869)。
贡献
请阅读《为Docling贡献》 (https://github.com/docling-project/docling/blob/main/CONTRIBUTING.md) 了解详情。
参考文献
如果您在项目中使用了Docling,请考虑引用以下内容:
@techreport{Docling,
author = {Deep Search Team},
month = {8},
title = {Docling Technical Report},
url = {https://arxiv.org/abs/2408.09869},
eprint = {2408.09869},
doi = {10.48550/arXiv.2408.09869},
version = {1.0.0},
year = {2024}
}
许可证
Docling代码库采用MIT许可证。关于单个模型的使用,请参考原始包中的模型许可证。
LF AI & Data
Docling是LF AI & Data基金会 (https://lfaidata.foundation/projects/) 中的一个托管项目。
IBM ❤️ 开源AI
该项目由IBM Research Zurich的知识AI团队发起。
相似文章
SmolDocling:一种超紧凑的端到端多模态文档转换视觉语言模型
SmolDocling 是一款紧凑型 2.56 亿参数视觉语言模型,专为端到端多模态文档转换设计。它引入了一种名为 DocTags 的新型通用标记格式,用于捕获带有位置信息的页面元素,其表现可与体积大 27 倍的模型相媲美。
@itsclelia: 你真的拥有你的文档解析基础设施吗?在 @llama_index,我们想让它更简单,所以构建了…
LlamaIndex 推出了 liteparse-server,这是一个开源、可自托管的 HTTP 后端,用于解析 PDF、图像和 Office 文档,支持空间布局提取、OCR 和截图生成,专为 AI 和数据工作流设计。
@llama_index: 大多数AI管道的质量取决于我们提供的数据,而这些数据通常意味着PDF或其他非结构化文档…
Parse-Flow 是 LlamaIndex 构建的一个开源可视化工作流设计器,它将四个文档处理原语——Parse(解析)、Classify(分类)、Split(分割)和 Extract(提取)——串联到一个由 LlamaAgents 工作流驱动的拖拽画布中,能够从非结构化企业文档(如PDF、合同和发票)中可靠地提取结构化数据。
DocsAlot
DocsAlot 是一款为人类和 AI 系统设计的文档工具。
Docfarm
Docfarm 是一个用于托管、分享和跟踪AI生成的文档与输出的平台。