Docling
Docling 是一个强大的文档解析工具,支持 PDF、DOCX、PPTX、XLSX、HTML、EPUB、图片、音频等多种格式,提供高级 PDF 理解(布局、表格、公式等),并输出 Markdown、JSON 等格式,无缝集成生成式 AI 生态。
过去 7 天收获 8 颗 Star
爱鲜报评分
0 人评分
7k
星数
否
中文
Python
主语言
是
活跃
398
贡献者
人工分析
EDITORIAL推荐理由
Docling 在文档解析领域表现突出,尤其擅长处理复杂 PDF 和表格,输出结构化数据便于 LLM 使用。其本地执行能力和丰富的集成选项(LangChain、LlamaIndex 等)使其成为构建 AI 应用的高效工具。项目活跃、社区强大,是文档预处理的首选。
适用场景
- 构建 RAG 应用前的文档预处理
- 从 PDF 中提取表格和结构化数据
- 将扫描件或图片转换为可编辑文本
- 为 LLM 准备多格式文档输入
- 本地化文档解析与隐私保护场景
优点
- 支持格式广泛,涵盖办公文档、图像、音频等
- 高级 PDF 理解能力,包括布局、表格、公式识别
- 输出格式丰富,便于下游 AI 任务使用
- 本地执行,适合敏感数据
- 与主流 AI 框架无缝集成
缺点
- 对复杂文档的解析精度可能依赖模型质量
- 部分高级功能需要额外配置模型或依赖
- 处理大文件时可能资源消耗较高
Docling 简介
Docling 是一个开源的文档解析工具,旨在简化文档处理流程,将各种格式的文档转换为结构化数据,为生成式 AI 应用提供高质量的输入。它支持 PDF、DOCX、PPTX、XLSX、HTML、EPUB、图片、音频等多种格式,并提供高级的 PDF 理解能力,包括页面布局、阅读顺序、表格结构、代码和公式识别等。
核心特性
- 多格式解析:支持 PDF、DOCX、PPTX、XLSX、HTML、EPUB、Apple Pages/Numbers/Keynote、WAV/MP3 音频、WebVTT、Box Notes、邮件格式(EML/MSG)、图片(PNG/TIFF/JPEG)、LaTeX、纯文本等。
- 高级 PDF 理解:能够识别页面布局、阅读顺序、表格结构、代码块、公式和图像分类。
- 统一文档表示:使用
DoclingDocument格式统一表示解析后的文档内容。 - 多种导出格式:支持导出为 Markdown、HTML、WebVTT、DocLang、DocTags 和无损 JSON。
- 本地执行:可在本地运行,适合处理敏感数据和气隙环境。
- 无缝集成:与 LangChain、LlamaIndex、Crew AI、Haystack 等 AI 框架集成,支持 MCP 服务器和 API 服务。
- OCR 与视觉语言模型:支持扫描版 PDF 和图像的 OCR,并集成 GraniteDocling 等视觉语言模型。
- 音频与视频支持:通过 ASR 模型处理音频,并解析视频文件(MP4、AVI 等)生成转录文本和关键帧。
快速开始
安装
使用 pip 安装:
pip install docling
注意:从 docling 2.70.0 版本开始,不再支持 Python 3.9,请使用 Python 3.10 或更高版本。
命令行使用
docling https://arxiv.org/pdf/2206.01062
该命令会在当前目录生成一个包含结构化文档内容的 .md 文件。
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 非常适合需要将文档内容输入到 LLM 或构建 RAG 应用的场景。例如,从 PDF 中提取表格数据、将扫描件转换为可编辑文本、为 AI 代理准备多格式文档输入等。其本地执行能力也使其适用于对数据隐私要求较高的环境。
社区与支持
Docling 是 LF AI & Data 基金会下的项目,拥有活跃的社区。你可以通过 GitHub Discussions 获取帮助,或查阅官方文档和示例了解更多高级用法。
评论
- 暂无评论,来写第一条吧。