MinerU 2.1 Docker部署及DIFY-MinerU插件配置教程

引言 /

   需要英伟达显卡,比较吃内存吃机子。目前不支持国产显卡

什么是 MinerU?

学术范来说,MinerU 是由 OpenDataLab 开源的一款多模态智能文档处理平台,它结合了大语言模型(LLM)与向量数据库(Vector DB)的能力,提供一站式的文档解析、嵌入生成、结构化信息提取与智能问答服务。通俗一点来说,MinerU 是一个支持本地运行的“智能文档问答”系统,可以让你上传 PDF、Word 等文档,直接提问并获得基于内容的智能回答。相比 ChatGPT,MinerU 更适合处理自己的资料、报告、合同、研究文档等。

本教程将介绍如何在本地部署MinerU。同时在 Dify 中接入MinerU 插件 ,适用于需要自定义私有化部署、文档解析与嵌入式问答的场景。

GitHub 项目地址: https://github.com/opendatalab/MinerU

   

准备工作

在开始之前,请确保你已经准备好以下条件:Docker:需安装 Docker Desktop,需配置好代理。

  • CUDA 版本≥12.6(MinerU 2.1 版本及以上需要)。CUDA 安装可参: https://mp.weixin.qq.com/s/oFvyzTEtvKbTHTOUoW3VWQ

  • 需安装 DIFY

  • 安装 NVIDIA Container Toolkit(让容器能访问显卡) 官方安装教程: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html

  • 完整版(vlm-sglang)部署显存需大于 8G,其余版本显存需求分别是 8G(vlm-transformers)和 6G(pipeline)

  • Python 版本:3.10-3.13

  • 安装过程全程开启Docker Desktop


1. 使用 Docker 部署 MinerU(vlm-sglang 版本)服务 /

   

1.1 下载镜像构建文件

打开浏览器,在以下网址中下载Dockerfile文件,存放至MinerU的安装目录。

https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/docker/china/Dockerfile

此网址会下载一个专用于境内的 Dockerfile 文件,用来构建镜像。

关于Docker和Dockerfile的详细介绍可参考:https://mp.weixin.qq.com/s/vQ-pLIGyX8nOrfbpMm68tg

   

1.2 通过 Dockerfile 构建 mineru-sglang 镜像

在Dockerfile 文件存放文件夹(此截图文件夹为MinerU0805)进入CMD

图片

进入之后直接输入以下命令:

docker build -t mineru-sglang:latest -f Dockerfile .
  • -t mineru-sglang:latest:将镜像命名为mineru-sglang:latest

  • -f Dockerfile .:告诉Docker使用当前目录下的Dockerfile构建镜像;其中 .是空格+点,不是输入错误

运行过程如下:

图片

由于网络原因,可能会卡顿,直接关闭再重新运行即可。如果不行多试几次。

   

1.3 通过 compose.ymal 启动服务

如果使用以下命令启动服务:

docker run --gpus all \  --shm-size 32g \  -p 30000:30000 -p 7860:7860 -p 8000:8000 \  --ipc=host \  -it mineru-sglang:latest \  /bin/bash

window执行

docker run --gpus all --shm-size 32g -p 30000:30000 -p 7860:7860 -p 8000:8000 --ipc=host  -it mineru-sglang:latest  /bin/bash

这会打开一个交互式终端进入容器(/bin/bash是进入容器的命令)中,你可以在里面运行MinerU命令,但是本教程最终目的是使用Dify+MinerU,建议采用compose.ymal文件来启动服务。

使用PowerShell下载compose.ymal文件方式如下:

在文件夹(与Dockerfile文件夹一致)地址栏输入PowerShell

Invoke-WebRequest -Uri "https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/docker/compose.yaml" -OutFile "compose.yaml"

这会下载 compose.yaml文件,包含了 MinerU 所有服务的启动配置。

在得到compose.yaml文件之后,就可以在此文件夹中继续使用CMD命令,逐行输入以下命令:

# 启动网页界面操作(图形界面)docker compose -f compose.yaml --profile gradio up -d 
# 在浏览器调用 API / 代码访问 (DIFY-MinerU本地部署核心前置条件)docker compose -f compose.yaml --profile api up -d
# 使用大模型加速docker compose -f compose.yaml --profile sglang-server up -d

图片

启动之后再Docker Desktop可以观察到:

图片

这样就成功启动了MinerU所有的服务。接下来就进入到DIFY的MinerU 插件的部署环节了。

2. DIFY-MinerU 插件配置部署好的本地 MinerU /

   

2.1 DIFY 先行配置修改

在进入DIFY网页之前,需要进行DIFY文件下的docker目录中的.env文件和docker-compose.yaml的修改。修改主要步骤为:

  • .env文件修改

  • docker-compose.yaml文件修改

以下是详细步骤:

图片

   

2.1.1 .env文件修改

找到DIFY部署目录,打开.env 文件(为避免错误,建议使用专门的代码编译软件打开,笔本教程使用的是Visual Studio Code打开文件),修改 FILES_URL 配置项,根据你的 IP 地址填写:FILES_URL=http://xxx.xxx.x.xxx:5001 (xxx.xxx.x.xxx为你的IP地址,IP地址可在 CMD 命令中输入ipconfig命令查询)

图片

图片

   

2.1.2 docker-compose.yaml文件修改

  • DIFY下的docker-compose.yaml文件修改,增加Ports,暴露5001端口

图片

   

2.1.3 防火墙需开放 5001 端口

进入防火墙开放5001 防火墙端口

图片

图片

图片

一直点击下一页,直到命名一下就可以了。

   

2.1.4 重启dify_docker服务

  • 前往 DIFY 的安装目录,首先停止掉 DIFY 的服务。不建议直接通过 Docker Desktop 重启服务,因为配置修改了部分(2.1.1-2.1.3),需要清理干净运行痕迹(方便下次重新启动)。所以需要进入 DIFY 安装目录的 docker 文件夹中,在地址栏输入 CMD 命令,随后输入以下命令:

docker compose -p dify_docker down 

说明:

  • docker compose :使用 Docker 的 compose(组合服务)功能。

  • -p dify_docker 指定关闭 dify_docker 项目下的所有服务。

  • down停止并移除容器、网络、默认卷(如果使用了)等所有资源。

docker compose -p dify_docker  up -d 

说明:

  • -p dify_docker 指定这个项目叫 dify_docker,和之前保持一致

  • up 启动服务。如果容器不存在,会自动创建;已存在的容器会重新启动

  • -d(detached) 后台运行模式。不会占用终端,适合长期运行的服务

   

2.2 DIFY 内 MinerU 插件设置

   

2.2.1 于 DIFY 工具箱中寻找 MinerU 插件

图片

点击DIFY的工具一栏(顶层中间),搜索mineru,将mineru 插件安装。如果安装不成功多试几次。

   

2.2.2 MinerU 插件授权

图片

图片

授权的 Base URL 为:http://xxx.xxx.x.xxx:8000,其中xxx.xxx.x.xxx为IP 地址(IP 地址同 2.1.1 章节);服务类型选择本地部署,随后点击保存即可。

经过上述步骤,就可以在 DIFY 中工作流直接使用 MinerU 了!(工作流的设置就不过多介绍)

图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值