docker部署mineru并配置dify插件
·
docker部署mineru
首先在linux系统某个路径下先把项目拉取下来
git clone https://github.com/opendatalab/MinerU.git
定位到web_api
cd MinerU/projects/web_api
修改download_models.py,主要是用魔塔替换huggingface,并在layoutreader_pattern中添加
更多后缀,因为后续测试发现如果不修改.bin文件没下载成功。当然这里也可以参考另一篇博客:
https://blog.csdn.net/m0_45070559/article/details/147308581?spm=1001.2014.3001.5502

#!/usr/bin/env python
from modelscope import snapshot_download
if __name__ == "__main__":
mineru_patterns = [
# "models/Layout/LayoutLMv3/*",
"models/Layout/YOLO/*",
"models/MFD/YOLO/*",
"models/MFR/unimernet_hf_small_2503/*",
"models/OCR/paddleocr_torch/*",
# "models/TabRec/TableMaster/*",
# "models/TabRec/StructEqTable/*",
]
model_dir = snapshot_download(
"opendatalab/PDF-Extract-Kit-1.0",
allow_patterns=mineru_patterns,
local_dir="/opt/",
)
layoutreader_pattern = [
"*.json",
"*.safetensors",
"*.bin",
"*.safetensors",
"*.h5",
"*.index",
"*.msgpack",
]
layoutreader_model_dir = snapshot_download(
"ppaanngggg/layoutreader",
allow_patterns=layoutreader_pattern,
local_dir="/opt/layoutreader/",
)
model_dir = model_dir + "/models"
print(f"model_dir is: {model_dir}")
print(f"layoutreader_model_dir is: {layoutreader_model_dir}")
在requirements.txt添加modelscope
Dockerfile中添加pip镜像源
COPY requirements.txt .
RUN python -m venv /app/venv && \
. /app/venv/bin/activate && \
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple && \
pip install -r requirements.txt
Dockerfile中改变download_models.py的运行方式,解决权限问题
# Download models
COPY download_models.py .
RUN . /app/venv/bin/activate && \
python ./download_models.py
运行配置命令
docker build -t mineru-api .
docker部署完成后运行命令
docker run -d -it --gpus=all -p 8000:8000 mineru-api
浏览器输入服务器ip:8000/docs,显示如下即为成功:
dify配置mineru

添加mineru,选择本地部署输入服务器ip:8000即可
更多推荐
所有评论(0)