近期,MinerU 与 Dify 联合研发的 MinerU 插件在 Dify 市场上架了!大量社区的小伙伴们在社群里询问,应该如何使用 Dify 中 MinerU 插件来搭建工作流。今天,使用教程,它来啦!
MinerU Dify 插件主页:https://marketplace.dify.ai/plugins/langgenius/mineru
我们先来看一下大家使用 Dify 和 MinerU 插件的场景,大致可分为如下环境:
针对不同的使用场景,一些配置会有些许不同,一定要注意我们的提示哦(都是社区小伙伴们部署时的血泪教训),接下来就跟着小编一步步地操作,就能在 Dify 中愉快地使用 MinerU 了。
01 场景一:在 Dify MinerU 插件中配置 MinerU 官方在线 API 服务
1. 登录你的 Dify 平台;
2. 进入 【工具】 -> 【插件市场】,搜索 MinerU
插件并添加。
传送门:https://marketplace.dify.ai/plugins/langgenius/mineru
3. 配置 MinerU
插件参数:
● 先访问 MinerU 官网申请在线 API,审批通过后方可使用:https://mineru.net/apiManage
(* 注意关闭代理,否则页面无法访问)
● 在 Dify 平台逐项填写授权字段:
# MinerU服务的Base URL
https://mineru.net
#令牌
(MinerU 官网申请后自己创建的 API token)
#服务类型
MinerU官方API
4. 保存配置,就可以在 Dify 应用中成功使用 MinerU 工具来处理 PDF等文件啦!
填写示意:
02 场景二:在 Dify MinerU 插件中配置 MinerU 本地服务
💡提示:此场景前提是您已在本地部署了 MinerU,并参照 MinerU GitHub Repo 中 projects 文件夹中的 web_api 项目,构建部署了 MinerU 本地 API 服务,然后在 Dify 中进行授权配置。
MinerU web_api 传送门:https://github.com/opendatalab/MinerU/tree/master/projects/web_api
1. 登录你的 Dify 平台
2. 进入【工具】 -> 【插件市场】,搜索 MinerU
插件并添加
3. 获取本机 IP 地址
为了让 Dify 正确访问 MinerU API,需要使用局域网 IP 地址(不能使用 127.0.0.1
或 localhost
)。请根据你的系统获取本机 IP:
● Windows:打开命令提示符 cmd,输入下方命令,查找 "IPv4 地址":
ipconfig
● macOS:打开终端(Terminal),输入下方命令,查找 IP
#无线网络:
ipconfig getifaddr en0
#有线网络:
ipconfig getifaddr en1
● Linux:打开终端,执行:
ip hostname -I
或
ip addr
记录下你的 IP 地址,例如:192.168.1.100
。
4. 配置 MinerU
插件参数:
# MinerU服务的Base URL
http://192.168.1.100:8888
(填入'http://你的本机IP地址:8888', 注意不是https哦)
#令牌
(留空,本地不需要Token)
#服务类型
本地部署
5. 保存配置,就可以在 Dify 应用中成功使用 MinerU 工具来处理 PDF等文件啦!
填写示意:
03 使用 Dify 中 MinerU 插件的常见问题
本地部署的 Dify,在执行过程中遇到如下错误怎么办
1Run failed: Failed to transform tool message: PluginInvokeError: {"args":{},"error_type":"Exception","message":"Error extracting page from PDF: Request URL is missing an 'http://' or 'https://' protocol."}
(报错示意)
为了解决上述问题,接下来你需要设置 Dify 的配置文件:
1. 找到 Dify 部署目录,打开 .env
文件,修改 FILES_URL
配置项,依据你的部署方式填写:
● Docker Compose 部署:FILES_URL
设置为 ‘http://api:5001'
● 其他部署方式:FILES_URL
设置为 'http://Dify宿主机IP:5001'
(如 http://192.168.1.100:5001
,这里的 IP 通常是运行 Dify 的机器的 IP,即前文提到的“本地IP”端口。5001
是 Dify API 服务的默认端口)。
2. 确认 Dify API 服务的 5001
端口已对外暴露(可检查 docker-compose.yaml
文件的端口映射)。
3. 保存 .env
文件。
4. 重启 Dify 服务以使配置生效。
💡 提示:
1. 如果你使用本机 IP 设置
FILES_URL
,那么当你的网络环境发生变化 (例如连接了不同的 WiFi),你的本机 IP 地址可能会改变。届时需要:● 重新获取本机 IP 地址;
● 更新 Dify 中 MinerU 插件的 Base URL 配置;
● 如有必要 (如果 Dify 的
FILES_URL
配置的是 IP 地址而不是api
),更新 Dify 的.env
文件并重启 Dify 服务。2. 在使用 Dify 的 MinerU 插件时,尤其是在处理文件上传时,如果不配置此步骤,可能会遇到类似 ‘
Request URL is missing an 'http://' or 'https://' protocol
’的错误。这是常是因为 Dify 的API
服务无法正确访问其自身的文件服务。
04 实践案例:用 MinerU 插件在 Dify 中搭建工作流
接下来,我们将带你在 Dify 中通过 MinerU 插件快速搭建一个文件问答工作流,帮助你更高效地使用 MinerU 进行文档解析和问答。
1. 环境准备
首先,请根据前文提示完成以下配置:
● 安装并启用 MinerU 插件;
● 在 Dify 设置中,配置好模型供应商及对应的 Token(API 密钥)。
2. 创建空白工作流应用
● 进入 Dify,点击【工作室】按钮,选择“创建空白应用”;
● 类型选择【工作流】;
● 设置应用名称与图标,可选填应用描述。
(点击放大查看)
3. 在【开始】节点中添加两个输入字段:
● uploadfile:用于上传文件;
● question:用户提问文本。
4. 添加 MinerU 插件节点:
● 点击【开始】节点下方的【添加】按钮;
● 选择【工具】类型,添加【MinerU 插件】节点;
● 在插件输入变量中,绑定【开始】节点的 uploadfile
字段作为输入。
5. 添加 LLM 节点,进行问答处理:
● 在【MinerU 插件】节点下方点击【添加】,选择【LLM】节点;
● 设置 LLM 节点的提示词(Prompts)如下:
- 上下文字段(Context):引用【MinerU 插件】节点输出的 Parse File
字段;
- System 字段提示词:可填写说明,如:Parse File 是用户上传文件解析出的内容,用户提到的“文件”“文档”等即指该内容;
- User 字段提示词:引用【开始】节点中的 question
字段作为用户问题输入。
6. 设置【结束】节点输出:
● 在【结束】节点中,选择【LLM】节点的输出字段 text
作为最终输出变量。
7. 运行并测试工作流:
● 点击页面右上角【运行】按钮,测试上传文件与提问功能;
● 测试通过后,点击【发布】下拉菜单中的【运行】按钮,即可在浏览器中打开最终应用页面。
通过以上教程,相信你已经掌握了 MinerU 插件的基本使用方法。如果在操作过程中还有疑问,欢迎在后台回复关键词 “MinerU插件”,即可获取我们为你准备的完整配置文件(YAML)。后续,MinerU插件也会接入 Dify 的知识库,相关功能,研发小哥正在努力开发中。
当然,我们更期待你发挥创意,基于 Dify 中的 MinerU 插件打造更多高效实用的工作流!
MinerU Dify 插件 Github Repo 如下,欢迎大家 Star,并疯狂提交 pr :https://github.com/langgenius/dify-official-plugins/tree/fd9c1f8acb6047a15a1b2cc80bd529171072799b/tools/mineru
如果你在使用 MinerU 插件过程中探索出了更优的工作流方案,欢迎投稿分享给我们!一经采用,我们将赠送 OpenDataLab 精美周边礼品 作为感谢。