基于MinerU的PDF解析API

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

产品概述

支持一键启动,已经打包到镜像中,自带模型权重,支持GPU推理加速。在GPU环境下,每页解析的速度比CPU环境下快数十倍。

主要功能

  • 删除冗余元素:能够删除页眉、页脚、脚注、页码等元素,确保文本语义连贯。

  • 优化多栏布局:对于多栏排版的文档,能够按照人类正常的阅读顺序输出文本。

  • 保持文档结构:保留原文档的结构特性,如标题、段落、列表等。

  • 多媒体内容提取:可以提取文档中的图像、图片标题、表格、表格标题。

  • 数学公式处理:自动识别文档中的数学公式,并将其转换为LaTeX格式。

  • 表格转换:自动识别文档中的表格,并将它们转换为LaTeX格式。

  • 乱码PDF处理:具备自动检测乱码PDF的功能,并启用OCR技术进行解析。

  • 跨平台支持:同时支持Windows、Linux和Mac操作系统。

技术原理

为了高效地从PDF文档中提取高质量的信息,本工具采用了以下核心技术:

  • 布局检测:采用LayoutLMv3模型来识别文档中的不同区域,例如图像、表格、标题和文本块。

  • 公式检测与识别:使用YOLOv8模型检测文档中的公式(包括行内和行间公式),并通过UniMERNet模型进行公式识别。

  • 表格识别:利用StructEqTable模型对文档中的表格进行识别。

  • 光学字符识别(OCR):通过PaddleOCR技术实现对文档中文本的识别,特别是对于乱码PDF文件。 以上技术的综合运用,使得本工具能够在多种环境中高效准确地处理PDF文档。

镜像地址:

阿里云地址: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是一个字典列表:

1
{ 'type': 'text', 'text': '现在我们知道:价值实体就是劳动;劳动量的尺度就是劳动持续时间。', 'page_idx': 5 }