首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >docling,强大的文档解析转换工具,开源免费!

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

作者头像
一只牛博
发布2025-05-31 09:08:26
发布2025-05-31 09:08:26
2.3K00
代码可运行
举报
运行总次数:0
代码可运行

Docling是开源的一款多功能文档解析与转换工具,github的star数达到29.5k专门用于将各类文档转化为适合生成式AI使用的结构化格式 。它支持PDF、DOCX、PPTX、图片、HTML、Markdown等多种流行文档格式的导入,并能将这些格式导出为Markdown和JSON

github地址:https://github.com/docling-project/docling?tab=readme-ov-file

image-20250512205437812
image-20250512205437812

特点

  • 先进的PDF理解能力,包括页面布局分析、阅读顺序确定和表格结构识别
  • 统一的DoclingDocument表示格式,提供富有表现力的文档数据结构
  • 无缝集成LlamaIndex和LangChain,为RAG(检索增强生成)和QA(问答)应用提供强大支持
  • 可选的OCR支持,能够处理扫描版PDF和图像中的文字

写作提示:可以以一个实际案例开头,比如"你是否曾花费数小时手动从PDF报告中提取表格数据?Docling的出现让这一过程缩短到几分钟…"

安装和使用

因为本人太菜,安装 过程可谓是大费周章,它本来是容易的

说明一下:如果你也是根据官网中的pip install docling进行安装,大致可能出现一些问题如下:

  • pydantic版本问题(这个好像是我的环境污染导致的)
  • click和typer版本问题

建议大家隔离环境进行安装,执行如下命令

代码语言:javascript
代码运行次数:0
运行
复制
# 创建一个隔离环境
conda create -n docling python=3.11
# 激活
conda activate docling
# 下载
pip install typer==0.9.0 click==8.1.7
pip install docling

按照上面的执行,应该就不会出现问题了,最后执行一下docling --help,如果不报错就没问题了。

image-20250512210333909
image-20250512210333909

基础转换代码示例:

代码语言:javascript
代码运行次数:0
运行
复制
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())

命令行界面操作:

代码语言:javascript
代码运行次数:0
运行
复制
# 单个文件转Markdown(默认)
docling myfile.pdf

# 转换为Markdown和JSON且不使用OCR
docling myfile.pdf --to json --to md --no-ocr

# 批量转换目录中的PDF文件
docling ./input/dir --from pdf --output ./scratch
image-20250512210821537
image-20250512210821537

用后感受

它对多行代码块的识别不是那么智能,最起码我测试的是这样!可能他并不知道这个多行代码块是json还是java。对于别的我认为识别和转化是很优秀的,尤其是表格的识别

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 特点
  • 安装和使用
  • 用后感受
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档