安装和使用docling

4.5K+ Star!Docling:一个文档解析工具 Docling[1]是一个文档解析工具,它能够轻松快速地将文档导出为所需的格式。可以帮助用户从各种文档中提取信息,并将其转换为更易于处理的数据格式。 阅读详情
AI摘要

Docling是强大的文档解析和转换工具,能将多种格式文档转换为HTML、Markdown和JSON格式,支持OCR。它与MinerU、MarkItDown功能有相似处。安装Docling时官网代码因网络问题可能下载失败,可自定义模型路径,新版本还能离线安装,需注意OCR模型语言支持。

安装和使用docling

1 介绍

‌Docling是一个功能强大的文档解析和转换工具,能够将PDF, DOCX, PPTX, XLSX, Images, HTML, AsciiDoc 和Markdown文档转换为HTML、Markdown 和JSON格式。Docling不支持将公式转为Markdown格式。支持OCR(EasyOCR、Tesseract等),安装配置简单。

Docling与MinerU、Marker的功能相似,其中MinerU支持PDF(支持较好)转Markdown、JSON、HTML、Office,支持将公式转为Markdown格式。支持OCR(PaddleOCR),安装配置相对Docling复杂一些。

MarkItDown是微软开源的将Office的文件转化为markdown的项目,支持Office、音频、PDF、OCR等,不过PDF和OCR的支持不太好。

Docling参考地址

# Docling的Github地址
https://github.com/docling-project/docling
# Docling官网网址
https://docling-project.github.io/docling/


# EasyOCR的GitHub地址
https://github.com/JaidedAI/EasyOCR
# 模型下载地址
https://www.jaided.ai/easyocr/modelhub/
# EasyOCR官网
https://www.jaided.ai/

MinerU

# Github地址
https://github.com/opendatalab/MinerU

MarkItDown

# Github地址
https://github.com/microsoft/markitdown

2 安装Docling

⚠️ 如果代码执行有问题,请更换软件版本

# 安装docling
pip install docling

# 安装OCR工具
pip install easyocr

3 代码

3.1 EasyOCR简单使用

import easyocr
ocr_model_path = "E:/model/ocr/EasyOCR/model"
reader = easyocr.Reader(
    # 设置识别图片中语言的模型
    lang_list=['ch_sim', 'en'],
    # 注意会自动下载模型到路径下,可以不指定模型目录,会自动下载到C盘下
    # 包括三个模型
    # 文本检测模型:CRAFT -- craft_mlt_25k.pth
    # 中文简体模型:ch_sim -- zh_sim_g2.pth
    # 英文模型:en -- latin_g2.pth
    model_storage_directory=ocr_model_path
)
result = reader.readtext("E:/test/test.png")
print(result)

3.2 Docling简单使用

官网代码

官网代码会自动将Docling和OCR模型下载到C盘中,由于国内HuggingFace不能直接访问,因此下载Docling会失败,无法执行代码。

from docling.document_converter import DocumentConverter

source = "https://arxiv.org/pdf/2408.09869"  # document per local path or URL
converter = DocumentConverter()
result = converter.convert(source)
print(result.document.export_to_markdown())  # output: "## Docling Technical Report[...]"

自定义模型路径

在modelscop上查找“docling-models”,并下载下来;或者在HuggingFace上查找,并下载“ds4sd/docling-models”。

from docling.datamodel.base_models import InputFormat
from docling.datamodel.pipeline_options import PdfPipelineOptions, EasyOcrOptions
from docling.document_converter import PdfFormatOption, DocumentConverter

# 参考接口地址
# https://ds4sd.github.io/docling/v2/#access-document-structures

# 配置OCR模型,设置EasyOCR模型的路径
easyocr_model_storage_directory = "E:/model/ocr/EasyOCR/model"
easyocr_options = EasyOcrOptions()
easyocr_options.model_storage_directory = easyocr_model_storage_directory

# 配置pdf模型,设置Docling模型的路径
pdf_artifacts_path = "E:/model/docling-models"
pdf_pipeline_options = PdfPipelineOptions(artifacts_path=pdf_artifacts_path)
pdf_pipeline_options.ocr_options = easyocr_options

# 转换模型
converter = DocumentConverter(
    format_options={
        InputFormat.PDF: PdfFormatOption(pipeline_options=pdf_pipeline_options),
        InputFormat.IMAGE: ImageFormatOption(pipeline_options=pdf_pipeline_options),
        InputFormat.PPTX: PowerpointFormatOption(pipeline_options=pdf_pipeline_options),
        InputFormat.DOCX: WordFormatOption(pipeline_options=pdf_pipeline_options),
        InputFormat.XLSX: ExcelFormatOption(pipeline_options=pdf_pipeline_options),
        InputFormat.HTML: HTMLFormatOption(pipeline_options=pdf_pipeline_options)
    }
)

source = "E:/test/test.pdf"
result = converter.convert(source)
print(result.document.export_to_markdown())


3.3 新版本离线安装

参考地址

https://docling-project.github.io/docling/usage/#model-prefetching-and-offline-usage

3.3.1 下载模型

⚠️ 注意:OCR模型默认下载的只用英文不支持中文,中文需要下载相应的模型并指定语言。

# 整理的模型,下载后可直接使用
https://github.com/MasonYyp/docling-models

命令下载模型

# 命令下载,注意默认下载到用户目录下
docling-tools models download

代码下载模型

from pathlib import Path
from docling.utils import model_downloader

# 指定下载目录
output_dir = Path("E:/docling-models")
test = model_downloader.download_models(
    output_dir=output_dir
)
print(test)

3.3.2 Python代码

import pathlib

from docling.datamodel.base_models import InputFormat
from docling.datamodel.pipeline_options import PdfPipelineOptions, EasyOcrOptions
from docling.document_converter import DocumentConverter, PdfFormatOption

# 指定模型路径
artifacts_path = "E:/docling-models"

# 指定OCR模型
easyocr_options = EasyOcrOptions()
# 支持中文和英文,注意必须下载中文简体的支持(zh_sim_g2.pth)
# 可以不设置,默认语言:["fr", "de", "es", "en"]
easyocr_options.lang = ['ch_sim','en']

pipeline_options = PdfPipelineOptions(artifacts_path=artifacts_path)
# 设置支持OCR
pipeline_options.do_ocr = True
# 设置支持表结构
pipeline_options.do_table_structure = True

# 指定OCR模型,可以不设置
pipeline_options.ocr_options = easyocr_options

converter = DocumentConverter(
    format_options={
        InputFormat.PDF: PdfFormatOption(pipeline_options=pipeline_options)
    }
)

source = "E:/test/test-5-2.pdf"
result = converter.convert(source)
md_text= result.document.export_to_markdown()

# 存储markdown
pathlib.Path("E:/test/test-5-2.md").write_bytes(md_text.encode())
文档处理利器Docling,基于LangChain打造RAG应用 大家好,人工智能应用持续发展,对文档信息的有效处理、理解与检索提出了更高要求。大语言模型虽已在诸多领域发挥重要作用,但在文档处理方面仍有提升空间。本文将详细阐述如何整合Docling 和 LangChain,创建检索增强生成(RAG)系统,以突破局限,为大语言模型赋能,提升其处理文档信息的能力。 阅读详情

相关推荐

Docling:开源的文档解析工具,支持多种格式的解析和转换,可与其他 AI 工具集成

Docling 是一个开源的文档解析工具,支持多种格式的文档解析和转换,具备高级 PDF 理解、OCR 功能,并且易于与其他 AI 工具集成。

士多啤梨先生の博客 3369

玩转文档处理,用 Docling 就对了!

Docling 是一个强大的 Python 第三方库,专注于文档处理和转换。它支持多种文档格式,包括PDF、DOCX、PPTX、HTML、图片等。Docling 的核心功能是深度解析 PDF,能够识别页面布局、阅读顺序、表格结构,甚至支持 OCR功能,处理扫描版文档。此外,Docling 还提供了统一的文档表示格式(DoclingDocument),方便开发者进行后续处理。Python复制:自定义 PDF 转换选项。和:控制表格结构的解析方式。Docling。

AIGC搞起 3098

docling,强大的文档解析转换工具,开源免费!

Docling是一款开源的多功能文档解析与转换工具,支持PDF、DOCX、PPTX、图片、HTML、Markdown等多种格式的导入,并能将其转换为Markdown和JSON。它具有先进的PDF理解能力,包括页面布局分析、表格结构识别等,并支持OCR处理扫描版PDF和图像中的文字。Docling无缝集成LlamaIndex和LangChain,适用于RAG和QA应用。安装过程可能遇到版本问题,建议在隔离环境中进行。使用Docling可以快速将文档转换为结构化格式,在表格识别和转换方面表现优秀。

todoitbo的博客 1万+

对比6个RAG知识库文档处理工具

最近在给智能客服项目选择 RAG 知识库的数据处理工具,就重新看了一遍目前主流的文档处理项目,包括 olmOCR、Marker、MinerU、Docling、Markitdown、Llamaparse 这6个工具,并且对它们进行了简单对比。1. olmOCR技术架构:基于大语言模型构建了完整的 PDF 处理流程。它采用分布式架构,支持单机和多节点并行处理,并利用sglang实现GPU加速推理。

m0_65555479的博客 4736

【编译原理】LL(1)分析方法 生成语法树(c++实现)

基本流程 输入文法->消除左递归->提取左公共因子->求FIRST集->求FOLLOW集->LL(1)分析表->表驱动的预测语法分析过程->输出语法分析结果和语法树

qq_43417265的博客 1万+

分布式存储系统关于GDPR条例中的数据清除原则

文章目录前言HDFS存储系统数据的完全删除基于加解密的输入输出流的数据保护方案 前言 关于GDPR是什么,可能许多同学之前并不太了解,至少笔者在之前也是不清楚的。GDPR全称为通用数据保护条例,General Data Protection Regulation。它是一项来自欧盟的关于计算机数据保护相关的条约,旨在规范系统如何收集,管控用户私人数据的种种行为。但是当前的一些存储系统并没有完全符合...

走在前往架构师的路上 3624

AI大模型RAG:LlamaIndex与Qwen2的检索增强生成技术解析

在人工智能的浪潮中,大模型技术以其卓越的数据处理和语言理解能力,成为智能化进程的加速器。特别是检索增强生成(RAG)技术,它通过结合检索系统的高效性和生成模型的创造性,为智能问答系统的发展提供了新动力。本文将深入探讨如何利用LlamaIndex和Qwen2,实现RAG技术的快速部署和智能交互。

m0_59164304的博客 1120

光伏发电系统模拟及其发电预测开源python工具pvlib

本文介绍光伏发电系统模拟及其发电预测开源python工具pvlib,以及举例介绍获取辐照度方法、光伏发电预测思路。

肖永威的专栏 1万+

docling - 多格式文档解析和导出工具

这是一个由 IBM 开源的 Python 工具,专门用于将各类文档转化为适合生成式 AI 使用的工具。它能够将 PDF、DOCX、PPTX、图片、HTML、Markdown 等多种流行文档格式,导出为 Markdown 和 JSON 格式,支持多种 OCR 引擎(PDF)、统一的文档对象(DoclingDocument),轻松集成检索增强生成(RAG)和问答应用,适用于需要将文档作为生成式 AI 模型输入的场景。

2307

从PHY芯片看工业网络精准时钟:IEEE 1588v2(PTP)协议实现与选型指南

本文深入解析了工业网络中IEEE 1588v2(PTP)协议的实现与PHY芯片选型要点。通过对比KG7101、RTL8211F等芯片的关键参数,揭示硬件时间戳对纳秒级时钟同步的决定性作用,并提供PTP网络设计中的拓扑布局与配置优化技巧,助力工业自动化场景实现精准时间同步。

weixin_42628688的博客 501

8.5华为OD机试真题 新系统 - IPv4 等长子网划分与自动分配系统 (Java/Py/C/C++/Js/Go)

8.5华为OD机试真题 新系统 - IPv4 等长子网划分与自动分配系统 (Java/Py/C/C++/Js/Go)

算法大师! 526

Docling 如何用 docling-slim 按需选择 extras 只安装需要的依赖?

如果你的工作流只需要 Docling 的某一部分能力——比如只解析 PDF,或者只处理 Office 文档,又或者只需要调用远程 Docling Serve API——完整安装 `docling` 会带入一批用不上的重型依赖(PyTorch、各格式解析库、OCR 引擎等)。这时应该使用 `docling-slim`:它是同一份 Docling 代码的最小依赖版本,基础安装只有约 50MB,具体功能

gitblog_00161的博客 192

uniapp [全端兼容] - 实现连接蓝牙电子秤+监听数据转换并实时返回示例代码,uniApp实现BLE蓝牙连接多个电子秤设备、蓝牙通讯协议对接详细教程(全平台兼容H5、微信小程序、苹果安卓App)

uniapp连接蓝牙电子秤,uniapp如何连接电子秤蓝牙,蓝牙称重,实现监听数据转换并实时返回,多蓝牙,uni-app电子秤16进制蓝牙通讯协议对接,uniapp微信小程序蓝牙获取电子秤的值,uniapp蓝牙称重电子秤,蓝牙电子秤硬件,APP端连接蓝牙秤获取重量实时显示在页面上蓝牙秤,插件组件,蓝牙连接失败,uniapp安卓苹果ios连接蓝牙电子秤没反应,uniapp微信小程序 蓝牙低功耗连接发送数据监听接收,uni-app小程序蓝牙连接、读写数据全过程,uniapp连接蓝牙体脂秤,蓝牙搜索不到怎么办,如

🏆 前端领域优质创作者 1万+

Docling 如何用 DoclingServiceClient 调用自托管的 docling-serve 转换服务?

如果你的 Python 应用不想在本进程里跑 Docling,而是希望把文档转换委托给一个独立部署的 HTTP 服务,那么组合是:**docling-serve** 作为服务端,**`DoclingServiceClient`** 作为客户端 SDK。客户端调用 `convert()` / `convert_all()` 返回的 `ConversionResult` 与本地 `DocumentCo

gitblog_00867的博客 353

C#操作MySQL从入门到精通(3)——新建数据库、新建表

我们要首先新建一个数据库,并且在数据库中新建一系列的表来管理数据库。

qq_34059233的博客 951

请举手回答,LDO和DC-DC有什么不同?

文章目录1 LDO是什么2 LDO典型电路3 DC-DC是什么4 DC-DC典型电路5 LDO和DC-DC区别10.2.6 小结一下 大家好,我是记得诚。 DC-DC和LDO都是电源芯片,两者差异很大,用法也不同,这篇博客讲述LDO和DC-DC的一些差异,帮助更好的认识LDO和DC-DC并进行选型。 1 LDO是什么 LDO是low dropout regulator的简称,即低压差线性稳压器,这是相对于传统的线性稳压器来说的,传统的稳压器,输入比输出要高出很多,否则无法工作,LDO可能输入比输出高1~2V

记得诚 1万+

Docling实战:从安装到高级用法的完整指南

本文全面介绍了Docling文档处理工具的安装配置、基础转换功能、CLI高级参数使用以及VLM模型加速处理。从pip安装和环境配置开始,详细讲解了系统要求、可选组件安装和OCR引擎配置;接着展示了基础文档转换与Markdown导出功能,包括批量处理和复杂文档结构处理;然后深入探讨了CLI命令行工具的高级参数,涵盖格式控制、处理管道选择、OCR配置和性能调优;最后重点介绍了SmolDocling等V

gitblog_00242的博客 2724

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Docling Service Client 深度解析:将文档转换卸载到 docling-serve 远程服务的完整指南

Docling Service Client(`docling.service_client`)是 Docling 提供的客户端 SDK,它把文档解析与转换工作交给远程运行的 `docling-serve` 服务执行,而不是在本地加载任何模型。读完本文,你将掌握 Service Client 的安装与配置、单文档/并发/分块等核心 API、异步与 Job 生命周期管理、`docling conve

gitblog_00727的博客 825

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Docling - 文档解析工具

一、关于 Docling 功能/特点 即将发布的功能 安装 二、概念 示例文档结构 基本结构 Grouping 三、使用 1、转换 2、CLI 3、高级选项 3.1 调整管道功能 3.1.1 控制PDF表提取选项 3.1.2 提供特定的工艺品路径 3.2 对文档大小施加限制 3.3 从二进制PDF流转换 3.4 限制资源使用 4、Chunking

AI工程化、开源分享、文档翻译、代码笔记 2171

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

8.7 文档解析工具使用踩坑

版本问题,注意docling==2.41.0, 有坑,加载不到模型。但是,我相信你跟我一样,网速不行。因此你的模型下载失败,所以你需要独立下载!假设你网速很快,运行下面的命令在终端进行安装。

qq_28611929的博客 1027

docling CLI工具实战:命令行快速转换文档到Markdown/HTML

还在为文档格式转换而烦恼?面对PDF、DOCX、PPTX等各种格式的文档,想要快速转换为Markdown或HTML格式进行后续处理?docling CLI工具正是你需要的解决方案!本文将带你全面掌握docling命令行工具的使用技巧,实现文档格式的快速转换。 ## 什么是docling? docling是一个强大的文档处理工具,专门用于解析多种文档格式并提供与生成式AI(Gen AI)生态系统

gitblog_00594的博客 1187

Docling 安装与入门终极指南:3 分钟装好文档解析 SDK 并跑通第一份 PDF

Docling 是一个文档解析 SDK + CLI 工具,把 PDF、DOCX、HTML、扫描件、音频等格式统一解析成 DoclingDocument,再导出为 Markdown / HTML / JSON,直接喂给生成式 AI 应用。下面不绕弯子:先让你 3 分钟内看到结果,再回头讲环境、引擎选型和踩坑急救。 ## 3 分钟跑通:pip 一行安装 + 最短可运行代码 先建个干净的虚拟环境,然

gitblog_00744的博客 1112

Docling Skill(SKILL.md)实战指南:从 CLI 到 SDK 的文档转换、结构化抽取、RAG 切块与远程服务全链路

本篇以仓库中面向 Agent 的技能定义文件 [SKILL.md](https://link.gitcode.com/i/08e1a89bdd383bf7295e271f6926210c) 为主体,系统讲解 Docling 的四种使用形态——`docling` CLI、Python SDK(`DocumentConverter` + `PipelineOptions`)、远程 `docling-s

gitblog_01167的博客 222

如何用 book-to-skill 把技术书 PDF 转成 AI 技能:technical 模式与 Docling 保表格代码实战指南

book-to-skill 是一个开源的"书籍转技能"工具:它能把你手头的技术书 PDF(还支持 EPUB、DOCX、HTML 等格式)一键转换成 Claude Code、Copilot CLI 等 AI 代理可直接加载的结构化 Skill。对新手来说,最关键的抉择只有两个——**用 technical 模式还是 text 模式**,以及 **Docling 如何帮你保住书里的表格和代码**。本文

gitblog_00834的博客 412

IBM开源Docling实战:复杂PDF轻松转Markdown

在知识库建设和文档结构化处理中,PDF内容提取始终是一大难题。传统工具往往只能抽取字符,无法理解版面结构,导致阅读顺序错乱、表格关系丢失。文档解析技术(如版面分析、阅读顺序还原、表格结构识别)因此成为关键。IBM开源的Docling提供了一套完整的文档理解流水线,通过深度学习模型识别标题、正文、表格、公式等元素,并结合OCR处理扫描件,最终输出结构化的Markdown或JSON。这一能力在RAG知识库、合同归档、论文整理等场景中极具价值,能够显著减少清洗工作,提高下游任务质量。本文结合实践,分享Doclin

weixin_32501329的博客 199

告别格式混乱:docling多模态文档标准化导出全指南

你是否还在为不同格式的文档转换而头疼?PDF中的表格错乱、Word里的图片丢失、PPT中的文本无法提取——这些问题不仅浪费时间,还可能导致重要信息丢失。现在,有了docling导出工具,你可以轻松实现多模态文档的标准化输出,让文档处理变得简单高效。 读完本文,你将学会: - 如何使用docling将多种格式文档统一转换 - 掌握不同导出格式的应用场景 - 通过实例了解docling导出工具的核心

gitblog_00023的博客 516
上一篇: 使用PyMuPdf将pdf文件转化为img
下一篇: Docker私有仓库管理工具Registry
MasonYyp
博客等级 码龄9年 301粉丝 297原创
评论 13
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值