MinerU-大语言语料处理神器,CPU/GPU均可跑,开源免费“敲”好用

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 在7月4日举行的WAIC 2024科学前沿主论坛上,书生·浦语2.5正式发布,面向大模型研发与应用的全链条工具体系同时迎来升级。

引言

在7月4日举行的WAIC 2024科学前沿主论坛上,书生·浦语2.5正式发布,面向大模型研发与应用的全链条工具体系同时迎来升级。在数据处理环节,上海人工智能实验室(上海AI实验室)大模型数据基座OpenDataLab团队开源了全新的智能数据提取工具——MinerU

在这个信息爆炸的时代,AI研究者常常面临着从海量文档中提取高质量数据的挑战。无论是学术文献、行业报告、会议PPT、课本、说明书还是合同单据,这些文档往往以PDF或网页的形式存在,内容复杂,格式多样,而大语言模型的训练,通常需要将这些内容转换为类似markdown的格式才能使用,核心问题集中在两个方面:通过分析布局信息(包括文本、标题、说明、图片、表格和公式),识别不同的元素并处理这些布局组件之间的关系。

MinerU,作为一款全能、开源的文档与网页数据提取工具,致力于简化AI数据处理流程。不仅能将混合了图片、表格、公式等在内的多模态PDF文档精准转化为清晰、易于分析的Markdown格式;还能从包含广告等各种干扰信息的网页中快速解析、抽取正式内容;同时支持epub、mobi、docx等多种格式批量转化为Markdown……

MinerU 目前由2个部分组成,分别提供不同功能:

  • Magic-PDF  PDF文档提取,将 PDF 转化为 Markdown 格式。能够快速识别PDF版面元素,自动删除页眉、页脚、脚注等非正文内容,保留原文档的结构和格式,包括标题、段落、列表等,准确提取图片、表格和公式等多模态内容,并根据顺序,将文档转化为清晰、通顺、易读的Markdown格式。
  • Magic-Doc  网页与电子书提取,支持常见的文章、论坛、音乐、视频等类型网页信息提取,轻松剔出广告等干扰信息,快速搞定正文、评论、歌词、视频文字详情等关键内容转化。还可以快速将epud、mobi、pptx、docx、chm、azw、txt、rtf等8种以上格式电子书转化为Markdown,做到文本图片全适配。

魔搭社区体验链接:

https://modelscope.cn/studios/OpenDataLab/MinerU

代码开源链接:

https://github.com/opendatalab/MinerU/

MinerU开源模型(PDF-Extract-Kit):

https://modelscope.cn/models/OpenDataLab/PDF-Extract-Kit

技术解析

PDF文档相比网页、电子书等结构标准化的文件含有更多复杂的元素,处理更具挑战性和代表性,本文将以PDF为代表,重点介绍 MinerU 如何实现高质量文档数据提取。

image.png

(流程图)

MinerU PDF文档提取,主要由4大环节构成:

PDF文档分类预处理

MinerU支持不同类型的PDF文档提取,包括文本型PDF、图层型PDF、扫描版PDF;初始阶段,输入PDF文档,系统会启用文档分类模块,提取PDF元数据,检测是否有乱码,是否是扫描版,进行PDF类型识别预处理。

(注:文本型PDF:文字可以复制;图层型PDF:文字不可复制,解析乱码)

模型解析,PDF内容提取

紧接着,利用高质量PDF模型解析工具链进一步对PDF文档进行Layout区块布局检测,准确定位标题、正文、图片、表格、脚注、边注等重要元素位置,与此同时,结合公式检测模型定位公式区域。最后结合高质量公式识别及OCR技术提取准确的文本、公式内容,存储到JSON文件中。

image.png

用到的模型:

布局检测:使用 LayoutLMv3 微调出来的检测模型进行区域检测,如图像,表格、标题、文本等;

公式检测:使用基于 YOLOv8 自研的公式检测模型进行公式检测,包含行内公式和行间公式;

公式识别:使用自研的 UniMERNet 公式识别模型进行公式识别;

光学字符识别:使用 PaddleOCR 模型进行文本识别;

管线处理,支持多种格式输出

模型处理的数据会输入管线,进行后处理:确定块级别顺序,删减无用元素,依靠版面对内容排序、拼装,保证正文流畅。处理方式包括:坐标修复、高iou处理、图片、表格描述合并、公式替换、图标转储、Layout排序、无用移出、复杂布局过滤等。

管线处理好的文档信息会变为一个统一的中间态:middle-json(包含PDF解析出来的所有的信息),开发者可以按照使用需求自定义输出Layout、Span、Markdown、Content list等不同的格式。

(注:Content list是MinerU团队开发的一套列表样的序列结构格式,比Markdown格式能保留更多信息,可用于多模态、NLP等大模型训练)

PDF提取结果质检

团队利用由论文、教材、试卷、研报等多种类型文档组成的人工标注的PDF自测评测集,对整个流程进行检测,保证每次开发调优、算法改进后,提取效果越来越好;同时利用可视化质检工具,将PDF提取结果进行人工质检与标注,再反馈给模型训练,进一步提升模型能力。

魔搭最佳实践

使用魔搭社区免费算力实践MinerU,如果是离线任务对处理时长没有要求,可使用魔搭社区长期免费的CPU算力

image.png

环境安装:

pip install -U magic-pdf[full] --extra-index-url https://wheels.myhloli.com

❗️下载完成后,务必通过以下命令确认magic-pdf的版本是否正确

magic-pdf --version

下载模型

使用ModelScope CLI下载,自动校对模型SHA256:

modelscope download --model OpenDataLab/PDF-Extract-Kit --exclude models --local_dir /tmp

配置文件

wget https://gitee.com/myhloli/MinerU/raw/master/magic-pdf.template.json
cp magic-pdf.template.json ~/magic-pdf.json

【可选】如果使用魔搭GPU环境,修改【用户目录】中配置文件magic-pdf.json中"device-mode"的值为cuda

{
  "device-mode":"cuda"
}

运行demo

wget https://gitee.com/myhloli/MinerU/raw/master/demo/small_ocr.pdf
magic-pdf -p small_ocr.pdf

【可选】为ocr开启cuda加速(需要显存16G)

1.下载paddlepaddle-gpu, 安装完成后会自动开启ocr加速

python -m pip install paddlepaddle-gpu==3.0.0b1 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/

2.运行以下命令测试ocr加速效果

magic-pdf -p small_ocr.pdf

点击链接即可跳转模型详情~

https://modelscope.cn/models/OpenDataLab/PDF-Extract-Kit?from=alizishequ__text

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
1月前
|
算法 测试技术 AI芯片
CPU反超NPU,llama.cpp生成速度翻5倍!LLM端侧部署新范式T-MAC开源
【9月更文挑战第7天】微软研究院提出了一种名为T-MAC的创新方法,旨在解决大型语言模型在资源受限的边缘设备上高效部署的问题。T-MAC通过查表法在CPU上实现低比特LLM的高效推理,支持混合精度矩阵乘法,无需解量化。其通过位级查表实现统一且可扩展的解决方案,优化数据布局和重用率,显著提升了单线程和多线程下的mpGEMV及mpGEMM性能,并在端到端推理吞吐量和能效方面表现出色。然而,表量化和快速聚合技术可能引入近似和数值误差,影响模型准确性。论文详见:[链接](https://www.arxiv.org/pdf/2407.00088)。
89 10
|
2月前
|
机器学习/深度学习 人工智能 并行计算
【人工智能】CPU、GPU与TPU:人工智能领域的核心处理器概述
在人工智能和计算技术的快速发展中,CPU(中央处理器)、GPU(图形处理器)和TPU(张量处理器)作为核心处理器,各自扮演着不可或缺的角色。它们不仅在性能上各有千秋,还在不同的应用场景中发挥着重要作用
134 2
|
2月前
|
人工智能 Java 语音技术
开源上新|FunASR离线文件转写GPU软件包1.0
开源上新|FunASR离线文件转写GPU软件包1.0
|
3月前
|
并行计算 API 数据处理
GPU(图形处理单元)因其强大的并行计算能力而备受关注。与传统的CPU相比,GPU在处理大规模数据密集型任务时具有显著的优势。
GPU(图形处理单元)因其强大的并行计算能力而备受关注。与传统的CPU相比,GPU在处理大规模数据密集型任务时具有显著的优势。
|
3月前
|
机器学习/深度学习 人工智能 并行计算
GPU 和 CPU 处理器的架构
CPU(中央处理器)和 GPU(图形处理单元)是计算机系统中最重要的两种处理器。它们各自的架构设计和技术体系决定了其在不同应用领域中的性能和效率。
106 1
|
3月前
|
机器学习/深度学习 TensorFlow API
Keras是一个高层神经网络API,由Python编写,并能够在TensorFlow、Theano或CNTK之上运行。Keras的设计初衷是支持快速实验,能够用最少的代码实现想法,并且能够方便地在CPU和GPU上运行。
Keras是一个高层神经网络API,由Python编写,并能够在TensorFlow、Theano或CNTK之上运行。Keras的设计初衷是支持快速实验,能够用最少的代码实现想法,并且能够方便地在CPU和GPU上运行。
|
4月前
|
监控 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之使用自定义镜像部署GPU服务时,报错 "CPU is required but not provided",是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
4月前
|
机器学习/深度学习 并行计算 调度
对比GPU与CPU
对比GPU与CPU
92 0
|
5月前
|
测试技术 PyTorch 算法框架/工具
魔搭开源推理引擎 DashInfer,助力CPU服务器解锁大模型超强推理
ModelScope推出了预训练大语言模型(LLM)推理引擎DashInfer,采用C++ Runtime编写,提供C++和Python语言接口,具有生产级别的高性能表现,适用于多种CPU架构,包括x86和ARMv9。DashInfer支持连续批处理(Continuous Batching)和多NUMA推理(NUMA-Aware),能够充分利用服务器级CPU的算力,为推理14B及以下的LLM模型提供更多的硬件选择。该项工作已开源。
|
18天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
88 5