基于MinerU的PDF解析API

基于MinerU的PDF解析API

复制代码
- MinerU的GPU镜像构建
- 基于FastAPI的PDF解析接口

支持一键启动,已经打包到镜像中,自带模型权重,支持GPU推理加速,GPU速度相比CPU每页解析要快几十倍不等

主要功能

  • 删除页眉、页脚、脚注、页码等元素,保持语义连贯
  • 对多栏输出符合人类阅读顺序的文本
  • 保留原文档的结构,包括标题、段落、列表等
  • 提取图像、图片标题、表格、表格标题
  • 自动识别文档中的公式并将公式转换成latex
  • 自动识别文档中的表格并将表格转换成latex
  • 乱码PDF自动检测并启用OCR
  • 支持CPU和GPU环境
  • 支持windows/linux/mac平台

具体原理

请见PDF-Extract-Kit:https://github.com/opendatalab/PDF-Extract-Kit/blob/main/README-zh_CN.md

PDF文档中包含大量知识信息,然而提取高质量的PDF内容并非易事。为此,我们将PDF内容提取工作进行拆解:

  • 布局检测:使用LayoutLMv3模型进行区域检测,如图像,表格,标题,文本等;
  • 公式检测:使用YOLOv8进行公式检测,包含行内公式和行间公式;
  • 公式识别:使用UniMERNet进行公式识别;
  • 表格识别:使用StructEqTable进行表格识别;
  • 光学字符识别:使用PaddleOCR进行文本识别;

镜像地址:

阿里云地址:docker pull registry.cn-beijing.aliyuncs.com/quincyqiang/mineru:0.2-models
dockerhub地址:docker pull quincyqiang/mineru:0.2-models

启动命令:

docker run -itd --name=mineru_server --gpus=all -p 8888:8000 quincyqiang/mineru:0.2-models

具体截图请见博客:https://blog.csdn.net/yanqianglifei/article/details/141979684

启动日志:

输入参数:

访问地址:

复制代码
http://localhost:8888/docs

http://127.0.01:8888/docs

解析效果:

返回内容字段包括:dict_keys(['layout', 'info', 'content'])

其中content是一个字典列表:

json 复制代码
{
  'type': 'text', 
  'text': '现在我们知道:价值实体就是劳动;劳动量的尺度就是劳动持续时间。', 
  'page_idx': 5
}
相关推荐
reembarkation38 分钟前
使用pdfjs-dist 预览pdf,并添加文本层的实现
前端·javascript·pdf
reembarkation40 分钟前
vue-pdf 实现blob数据的预览
javascript·vue.js·pdf
Light607 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度(一气呵成)
linux·spring boot·pdf·gpcl6/ghostpcl·s3/oss·权限与审计·异步与进度
伟贤AI之路9 小时前
【分享】中小学教材课本 PDF 资源获取指南
人工智能·pdf
东风西巷16 小时前
PDFgear:免费全能的PDF处理工具
前端·pdf·软件需求
Sunny_yiyi1 天前
Java根据模版导出PDF文件
java·开发语言·pdf
小*-^-*九2 天前
php 使用html 生成pdf word wkhtmltopdf 系列2
pdf·html·php
千册2 天前
pyside6 的pdf显示测试 -- 01
开发语言·python·pdf
qq_172805592 天前
Go 语言 PDF 生成库综合比较与实践指南
开发语言·golang·pdf
E_ICEBLUE2 天前
如何使用 OCR 提取扫描件 PDF 的文本(Python 实现)
java·数据库·pdf