Ascend-SACT/Mineru-Optimization
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

MinerU 性能优化


引言

MinerU 简介

MinerU 是一款开源的智能文档解析工具,由OpenDataLab团队开发维护。它能够将复杂的文档内容(PDF、图片、扫描件等)转换为结构化的Markdown格式,广泛应用于知识库构建、智能问答、文档数字化等场景。

核心能力

能力说明
文本识别高精度OCR,支持多语言(中文、英文等)
公式解析数学公式识别并转换为LaTeX格式
表格识别复杂表格结构解析,保持原始布局
图片处理图片OCR、图表识别、内容提取
版面分析智能识别文档结构(标题、段落、列表等)

技术架构

MinerU采用多种AI模型组合:

  • Pipeline模式: 传统OCR流程,包含版面分析、OCR、公式识别、表格识别等模块
  • VLM模式: 视觉语言模型端到端解析,适合复杂排版文档
  • Hybrid模式: OCR与VLM混合,平衡精度与速度

开源地址

  • GitHub: https://github.com/opendatalab/MinerU
  • 文档: https://mineru.readthedocs.io

一、软件运行环境

1.1 核心软件版本配套表

软件组件版本说明
MinerU3.1.1文档解析主程序
torch2.9.0+cpuPyTorch深度学习框架
torch_npu2.9.0.post1+gitee7ba04PyTorch NPU扩展
torchvision0.24.0PyTorch视觉库
torchaudio2.9.0PyTorch音频库
vllm0.18.0+emptyVLLM推理引擎
vllm_ascend0.18.0rc1VLLM NPU适配版本
transformers4.57.6HuggingFace Transformers
mineru_vl_utils0.2.6MinerU视觉语言工具

1.2 NPU驱动与固件

项目版本
NPU-SMI25.2.0
NPU型号Ascend 910B3
AICore架构Da Vinci
HBM显存64GB per NPU

1.3 模型版本

模型版本/路径大小
Pipeline模型PDF-Extract-Kit-1.02.4GB
VLM模型MinerU2.5-Pro-2604-1.2B2.2GB
公式模型unimernet_small776MB
中文公式模型pp_formulanet_plus_m591MB

1.4 环境变量配置

# 模型源配置
export MINERU_MODEL_SOURCE=local
export MINERU_MODEL_DIR=/root/.cache/mineru_models

# NPU配置
export HCCL_OP_EXPANSION_MODE=AIV
export MINERU_DEVICE_MODE=npu

# 性能参数
export MINERU_API_MAX_CONCURRENT_REQUESTS=12
export MINERU_HYBRID_BATCH_RATIO=16
export MINERU_PDF_RENDER_THREADS=8

1.5 版本兼容性说明

组件组合兼容性说明
torch + torch_npu✓ 兼容版本号一致(2.9.0)
vllm + vllm_ascend✓ 兼容版本号一致(0.18.0)
torch_npu + NPU驱动✓ 兼容需匹配CANN版本
transformers + mineru✓ 兼容4.57.6支持最新模型

注意:

  • torch_npu版本必须与torch版本严格一致
  • vllm_ascend版本必须与vllm版本匹配
  • 建议使用官方推荐版本组合

二、硬件部署

2.1 硬件配置总览

项目配置
NPU型号Huawei Ascend 910B3
NPU数量单卡/多卡
单卡显存64GB HBM

2.2 部署策略

方案一:单实例模式

# 启动单实例
./start_optimized.sh

方案二:Router模式(2卡部署)

# 启动2卡Router模式
./start_router.sh

# 或前台运行(调试)
./start_router_foreground.sh

2.3 硬件调优建议

参数推荐值说明
gpu-memory-utilization0.85-0.90根据显存容量调整
batch_ratio16 (≥32GB)根据显存自动计算
max-concurrencyNPU数×1.5Router模式可更高

三、部署方式

参考MinerU安装

3.1 方式一:使用官方仓库镜像

获取镜像

获取当前仓库打包的镜像mineru-ascend.tar

运行容器

# 基本启动

# 优化配置启动
docker run -it -u root -d --net=host \
  --privileged \
  --ipc=host \
  --device=/dev/davinci_manager \
  --device=/dev/devmm_svm \
  --device=/dev/hisi_hdc \
  -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
  -v /usr/local/dcmi:/usr/local/dcmi \
  -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
  -v /usr/local/sbin:/usr/local/sbin \
  -v /usr/local/Ascend/driver/tools/hccn_tool:/usr/local/Ascend/driver/tools/hccn_tool \
  -v /root/.cache/modelscope/hub/models:/root/.cache/modelscope/hub/models \
  --name mineru-v2 \
  mineru:npu-latest \
  /bin/bash

3.2 方式二:自定义构建镜像

获取Dockerfile

# 下载官方Dockerfile
wget https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/docker/china/npu.Dockerfile

# 或从GitHub下载
wget https://raw.githubusercontent.com/opendatalab/MinerU/master/docker/china/npu.Dockerfile

修改vllm-ascend版本

# 查看当前vllm-ascend版本配置
grep "vllm-ascend" npu.Dockerfile

# 修改为指定版本(0.18.0)
sed -i 's/vllm-ascend.*$/vllm-ascend==0.18.0/' npu.Dockerfile

# 或手动编辑
vim npu.Dockerfile
# 找到pip install vllm-ascend相关行
# 修改为:pip install vllm-ascend==0.18.0

构建镜像

# 构建镜像(使用host网络加速下载)
docker build --network=host -t mineru:npu-vllm-0.18.0 -f npu.Dockerfile .

# 构建过程输出
# [+] Building 123.4s (15/15) FINISHED
# => [internal] load build definition from npu.Dockerfile
# => [internal] load .dockerignore
# => [internal] load metadata
# => [1/10] FROM ubuntu:22.04
# => [2/10] RUN apt-get update && apt-get install -y ...
# => [3/10] RUN pip install torch==2.9.0 torch_npu==2.9.0 ...
# => [4/10] RUN pip install vllm==0.18.0 vllm-ascend==0.18.0 ...
# => [5/10] RUN pip install mineru==3.1.1 ...
# ...

# 查看构建结果

验证镜像

# 查看镜像信息
docker inspect mineru:npu-vllm-0.18.0

# 查看镜像内软件版本
docker run --rm mineru:npu-vllm-0.18.0 pip list | grep -E "torch|vllm|mineru"

# 测试启动(不挂载NPU)
docker run --rm mineru:npu-vllm-0.18.0 mineru-api --help

3.3 修改代码

修改/usr/local/lib/python3.10/site-packages/mineru/cli/router.py文件,支持mineru route 多卡部署,如果不适用mineru route 可以不做修改。

diff --git a/mineru/cli/router.py b/mineru/cli/router.py
index 8d924f3..6cad6d9 100644
--- a/mineru/cli/router.py
+++ b/mineru/cli/router.py
@@ -349,7 +349,10 @@ class ManagedLocalServer:
         env["MINERU_API_OUTPUT_ROOT"] = str(output_root)
         env["MINERU_API_DISABLE_ACCESS_LOG"] = "1"
         if self.gpu is not None:
-            env["CUDA_VISIBLE_DEVICES"] = str(self.gpu)
+            if os.getenv("MINERU_DEVICE_MODE") == "npu":
+                env["ASCEND_RT_VISIBLE_DEVICES"] = str(self.gpu)
+            else:
+                env["CUDA_VISIBLE_DEVICES"] = str(self.gpu)
 
         command = [
             sys.executable,
-- 

修改内容如上所示。


四、性能精度调优方法

4.1 调优依据参数

参数默认值优化值调优依据
max-concurrency3128卡NPU可支持更高并发;实测并发测试验证
gpu-memory-utilization0.850.9061GB显存充足,提高利用率不影响稳定性
max-num-batched-tokens40968192VLM批处理token翻倍,提升吞吐
MINERU_API_MAX_CONCURRENT_REQUESTS312API层面并发限制,与max-concurrency匹配
MINERU_HYBRID_BATCH_RATIOauto1661GB显存→推荐16(32GB+:16, 16GB+:8)
MINERU_PDF_RENDER_THREADS48多核CPU可并行渲染更多页面

4.2 Batch Ratio计算依据

根据源码逻辑 (hybrid_analyze.py),Batch Ratio根据显存自动计算:

# Batch Ratio计算逻辑
if gpu_memory >= 32GB: batch_ratio = 16
elif gpu_memory >= 16GB: batch_ratio = 8
elif gpu_memory >= 12GB: batch_ratio = 4
elif gpu_memory >= 8GB: batch_ratio = 2
else: batch_ratio = 1

当前61GB显存 → 最优batch_ratio = 16

4.3 精度评估方法

由于在调优过程还涉及到使用不同的模型,需要明确精度评估方式,全面评估解析质量:

方法一:字符级精度(原始精度)

项目说明
公式字符级精度 = 提取字符数 / 最大字符数 × 100%
包含内容所有字符(含空格、换行、Markdown标记)
敏感因素格式差异(标题级别、空格数量)
适用场景快速对比提取量

方法二:内容级精度(核心精度)

项目说明
公式标准化后内容匹配度
标准化处理移除空格、标题标记、公式标记
忽略因素格式差异(# vs ##,空格数量等)
适用场景评估核心内容提取质量

差异类型分类

差异类型示例内容级精度说明
格式差异标题# vs ##一致仅格式不同
空格差异空格数量/位置不同一致仅排版不同
公式格式行内$ vs 块$$一致仅格式不同
内容缺失公式/表格未提取降低实质内容丢失
识别错误文字识别错误降低内容错误

实测精度对比示例

文档Backend字符数字符级精度内容级精度结论
纯文本pipeline1664100%一致无差异
纯文本hybrid166299.9%一致仅格式差异
公式hybrid(full)1963100%一致公式完整
公式pipeline(lite)96149%缺失公式不提取
表格pipeline(full)2808100%一致表格完整
表格hybrid(full)151854%缺失表格不完整

五、测试结果

用户可以根据自己的需求选择合适的模型参数,如果是速度优先,优选pipeline模型,并关掉不相关的内容提取方法。

5.1 单请求性能结论

场景推荐Backend推荐配置耗时范围精度适用情况
纯文本文档pipelineocr1.64-1.76s100%最快且精度最高
含公式文档hybridfull17s100%公式解析刚需
含表格文档pipelinefull2-7s100%表格解析需求
含图片文档pipelinelite1.68s100%图片OCR
综合文档pipelinefull7s100%全内容解析
用户可以根据自己的文档选择合适的backend

决策树

用户需求分析
    │
    ├─ 需要公式解析?
    │   ├─ YES → hybrid-auto-engine(full) 或 pipeline(full)
    │   │         精度优先: hybrid (17s, 100%)
    │   │         速度优先: pipeline (16s, 89%)
    │   │
    │   └─ NO → 继续判断
    │
    ├─ 需要表格解析?
    │   ├─ YES → pipeline(full) 或 hybrid(full)
    │   │         推荐: pipeline (2-7s, 100%)
    │   │
    │   └─ NO → 继续判断
    │
    ├─ 需要图片OCR?
    │   ├─ YES → pipeline(lite) 或 hybrid(lite)
    │   │         推荐: pipeline (1.68s, 100%)
    │   │
    │   └─ NO → pipeline(lite/ocr)
    │             推荐: pipeline(ocr) (1.59-1.64s, 最快)
    │
    └─ 复杂排版/VLM需求?
        └─ YES → vlm-auto-engine (6-9s)
        └─ NO → pipeline(lite)

详细结果

纯文本文档 (doc1_text_only)

Backend配置优化耗时默认耗时提升精度
pipelineocr1.64s1.76s+7%100%
pipelinelite2.21s1.68s-32%100%
pipelinefull2.14s1.62s-32%100%
hybridlite3.92s4.36s+10%99.9%
hybridfull7.63s5.02s-52%99.9%
vlmlite4.30s4.30s0%99.9%
vlmfull4.90s4.87s-1%99.9%

结论: Pipeline(ocr)最快且精度最高

公式文档 (doc2_text_formula)

Backend配置优化耗时默认耗时提升精度
pipelinelite1.59s2.17s+27%49%
pipelineocr1.63s1.86s+12%49%
pipelinefull16.47s9.04s-83%88.7%
hybridlite8.31s8.44s+1%59%
hybridfull17.02s16.07s-6%100%
vlmlite9.03s8.56s-5%58.9%
vlmfull9.18s8.63s-6%65.1%

结论:

  • 精度优先 → Hybrid(full): 1963 chars (100%)

表格文档 (doc3_text_table)

Backend配置优化耗时默认耗时提升精度
pipelinelite1.71s1.61s-6%24%
pipelineocr1.71s1.63s-5%24%
pipelinefull2.05s5.22s+61%100%
hybridlite5.83s5.92s+2%24%
hybridfull7.01s6.73s-4%54%
vlmlite5.27s5.19s-2%24%
vlmfull5.54s5.36s-3%54%

结论: Pipeline(full)优化后提升61%

综合文档 (doc6_all_content)

Backend配置优化耗时默认耗时提升精度
pipelinelite2.08s2.53s+18%52.7%
pipelineocr2.04s2.58s+21%52.7%
pipelinefull6.90s7.12s+3%100%
hybridlite6.65s7.13s+7%52.6%
hybridfull10.46s10.56s+1%77.5%
vlmlite6.19s6.11s-1%54.3%
vlmfull6.73s6.15s-9%70.0%

结论: Pipeline(lite)优化后提升18%

5.2、并发测试对比

并发性能对比汇总

并发数默认吞吐优化吞吐吞吐提升默认最慢优化最慢最慢改善
10.11 req/s0.10 req/s-9%9.45s9.83s-4%
20.13 req/s0.14 req/s+8%15.42s14.69s+5%
40.14 req/s0.15 req/s+7%29.29s26.38s+10%
80.14 req/s0.18 req/s+29% ⭐55.36s45.41s+18% ⭐

关键发现:

  1. 默认配置最佳并发数为4(受max-concurrency=3限制)
  2. 优化配置最佳并发数为8(充分利用max-concurrency=12)
  3. 8并发时吞吐量提升29%,最慢请求改善18%

mineru route 支持

mineru route部署提供了异步接口用来进行快速提交pdf解析任务,模型排队进行处理,但是对于同步请求而言,请求时延mineru-api耗时更短。

类型pdf_doc_only耗时
mineru-api1.6
mineru-route2.9
异步获取内容方式。
URL="http://localhost:8000"
FILE="$1"
ID=$(curl -s -X POST "$URL/tasks" -F "files=@$FILE" | python3 -c "import sys,json;print(json.load(sys.stdin)['task_id'])")
echo "Task: $ID"
while true; do
    R=$(curl -s "$URL/tasks/$ID")
    S=$(echo "$R" | python3 -c "import sys,json;print(json.load(sys.stdin)['status'])")
    [ "$S" = "completed" ] && echo "$R" && break
    [ "$S" = "failed" ] && echo "$R" && exit 1
    sleep 2
done

六、如何指定不同Backend请求

6.1 API请求参数说明

参数类型说明可选值
backendstring解析引擎pipeline, hybrid-auto-engine, vlm-auto-engine
formula_enableboolean公式解析true, false
table_enableboolean表格解析true, false
return_mdboolean返回Markdowntrue, false
response_format_zipbooleanZIP格式返回true, false

6.2 不同Backend请求示例

Pipeline Backend(最快)

# 最快模式 - 仅OCR
curl -X POST http://127.0.0.1:8000/file_parse \
  -F "files=@your_pdf.pdf" \
  -F "backend=pipeline" \
  -F "formula_enable=false" \
  -F "table_enable=false" \
  -F "return_md=true" \
  -F "response_format_zip=true"

# 完整模式 - 含公式表格
curl -X POST http://127.0.0.1:8000/file_parse \
  -F "files=@your_pdf.pdf" \
  -F "backend=pipeline" \
  -F "formula_enable=true" \
  -F "table_enable=true" \
  -F "return_md=true" \
  -F "response_format_zip=true"

Hybrid-auto-engine Backend(平衡)

# 精度优先
curl -X POST http://127.0.0.1:8000/file_parse \
  -F "files=@your_pdf.pdf" \
  -F "backend=hybrid-auto-engine" \
  -F "formula_enable=true" \
  -F "table_enable=true" \
  -F "return_md=true" \
  -F "response_format_zip=true"

# 速度优先(lite模式)
curl -X POST http://127.0.0.1:8000/file_parse \
  -F "files=@your_pdf.pdf" \
  -F "backend=hybrid-auto-engine" \
  -F "formula_enable=false" \
  -F "table_enable=false" \
  -F "return_md=true" \
  -F "response_format_zip=true"

VLM-auto-engine Backend(高精度)

# VLM模式 - 端到端解析
curl -X POST http://127.0.0.1:8000/file_parse \
  -F "files=@your_pdf.pdf" \
  -F "backend=vlm-auto-engine" \
  -F "return_md=true" \
  -F "response_format_zip=true"

6.3 Python请求示例

import requests

API_URL = "http://127.0.0.1:8000/file_parse"

def parse_pdf(pdf_path, backend="pipeline", formula=True, table=True):
    """解析PDF文档"""
    with open(pdf_path, 'rb') as f:
        files = {'files': f}
        data = {
            'backend': backend,
            'formula_enable': str(formula).lower(),
            'table_enable': str(table).lower(),
            'return_md': 'true',
            'response_format_zip': 'true'
        }
        response = requests.post(API_URL, files=files, data=data)
        return response.content

# 使用示例
# 最快解析
result = parse_pdf("doc.pdf", backend="pipeline", formula=False, table=False)

# 精度解析
result = parse_pdf("doc.pdf", backend="hybrid-auto-engine", formula=True, table=True)

# VLM解析
result = parse_pdf("doc.pdf", backend="vlm-auto-engine")

6.4 批量处理脚本

#!/bin/bash
# batch_process.sh - 批量处理PDF文档

PDF_DIR="$1"
BACKEND="${2:-pipeline}"
OUTPUT_DIR="${3:-batch_output}"

mkdir -p "$OUTPUT_DIR"

for pdf in "$PDF_DIR"/*.pdf; do
    filename=$(basename "$pdf" .pdf)
    echo "Processing: $filename"
    
    curl -s -X POST http://127.0.0.1:8000/file_parse \
        -F "files=@$pdf" \
        -F "backend=$BACKEND" \
        -F "formula_enable=false" \
        -F "table_enable=false" \
        -F "return_md=true" \
        -F "response_format_zip=true" \
        -o "$OUTPUT_DIR/${filename}.zip"
    
    unzip -o "$OUTPUT_DIR/${filename}.zip" -d "$OUTPUT_DIR/$filename"
done

echo "Batch processing completed!"

6.5 启动脚本

单实例模式启动脚本

文件说明
start.sh默认配置启动(后台运行)
start_optimized.sh优化配置启动(后台运行,推荐)
start_foreground.sh优化配置启动(前台运行,调试用)

Router模式启动脚本

文件NPU数量运行模式并发优化参数说明
start_router.sh2卡后台24✓ 全套优化2卡Router模式(推荐入门)
start_router_foreground.sh2卡前台24✓ 全套优化2卡Router模式(调试用)
start_router_8npu.sh8卡后台96✓ 全套优化8卡Router模式(全卡部署)
start_router_8npu_foreground.sh8卡前台96✓ 全套优化8卡Router模式(调试用)

优化参数说明:

  • GPU Memory Utilization: 0.90(从0.85优化)
  • Max Concurrent Requests: 12(新增)
  • Prefix Caching: enabled(新增)
  • Max Batched Tokens: 8192(新增)
  • Batch Ratio: 16(继承)
  • Processing Window: 64(继承)

Router模式选择建议

场景推荐脚本理由
入门测试start_router.sh (2卡)资源占用少,易于调试
生产部署start_router_8npu.sh (8卡)最大吞吐量,充分利用硬件
问题排查*_foreground.sh实时日志输出,便于定位问题

启动方式说明

MinerU支持两种启动方式:

1. 后台运行(nohup方式)

# 使用启动脚本(推荐)
cd /root/mineru_start/bin
./start_optimized.sh

# 或手动启动
nohup mineru-api --enable-vlm-preload true --max-concurrency 12 --host 0.0.0.0 --port 8000 > mineru.log 2>&1 &

特点:

  • 进程在后台运行
  • 日志输出到文件
  • 适合生产环境长期运行

2. 前台运行(调试方式)

# 直接启动(前台运行)
cd /root/mineru_start/bin
mineru-api --enable-vlm-preload true --max-concurrency 12 --host 0.0.0.0 --port 8000

# 或使用优化参数前台运行
env MINERU_MODEL_SOURCE=local MINERU_MODEL_DIR=/root/.cache/mineru_models \
    HCCL_OP_EXPANSION_MODE=AIV \
    MINERU_DEVICE_MODE=npu \
    MINERU_API_MAX_CONCURRENT_REQUESTS=12 \
    MINERU_HYBRID_BATCH_RATIO=16 \
    mineru-api \
    --enable-vlm-preload true \
    --max-concurrency 12 \
    --enable_prefix_caching true \
    --gpu-memory-utilization 0.90 \
    --max-num-batched-tokens 8192 \
    --host 0.0.0.0 --port 8000

特点:

  • 进程在前台运行
  • 日志实时输出到终端
  • 方便调试和问题排查
  • Ctrl+C 可直接停止

前台运行启动脚本(新增)

#!/bin/bash
# start_foreground.sh - 前台运行启动脚本

export MINERU_MODEL_SOURCE=local
export MINERU_MODEL_DIR=/root/.cache/mineru_models
export HCCL_OP_EXPANSION_MODE=AIV
export MINERU_DEVICE_MODE=npu
export MINERU_API_MAX_CONCURRENT_REQUESTS=12
export MINERU_HYBRID_BATCH_RATIO=16
export MINERU_PDF_RENDER_THREADS=8
export MINERU_LOG_LEVEL=INFO

echo "=========================================="
echo "MinerU API Server (Foreground Mode)"
echo "=========================================="
echo "Press Ctrl+C to stop the server"
echo "=========================================="

mineru-api \
    --enable-vlm-preload true \
    --max-concurrency 12 \
    --enable_prefix_caching true \
    --gpu-memory-utilization 0.90 \
    --max-num-batched-tokens 8192 \
    --host 0.0.0.0 --port 8000

Router模式启动脚本(多卡部署)

2卡Router模式(后台运行)

#!/bin/bash
# start_router.sh - 2卡Router模式启动脚本(优化配置)

export MINERU_ROUTER_LOCAL_GPUS=0,1
export MINERU_ROUTER_ENABLE_VLM_PRELOAD=true
export MINERU_ROUTER_GPU_MEMORY_UTILIZATION=0.90
export MINERU_API_MAX_CONCURRENT_REQUESTS=12

# 传递额外CLI参数给每个worker(JSON格式)
export MINERU_ROUTER_WORKER_ARGS_JSON='["--enable_prefix_caching", "true", "--max-num-batched-tokens", "8192"]'

nohup mineru-router \
    --host 0.0.0.0 \
    --port 8000 \
    --local-gpus "0,1" \
    --enable-vlm-preload true \
    > mineru_router.log 2>&1 &

2卡Router模式(前台运行)

#!/bin/bash
# start_router_foreground.sh - 2卡Router前台运行(优化配置)

export MINERU_ROUTER_LOCAL_GPUS=0,1
export MINERU_ROUTER_ENABLE_VLM_PRELOAD=true
export MINERU_ROUTER_GPU_MEMORY_UTILIZATION=0.90
export MINERU_API_MAX_CONCURRENT_REQUESTS=12
export MINERU_ROUTER_WORKER_ARGS_JSON='["--enable_prefix_caching", "true", "--max-num-batched-tokens", "8192"]'

echo "MinerU Router (2-NPU, Foreground)"
echo "Press Ctrl+C to stop"

mineru-router \
    --host 0.0.0.0 \
    --port 8000 \
    --local-gpus "0,1" \
    --enable-vlm-preload true

Router优化参数说明

参数环境变量说明
GPU显存利用率MINERU_ROUTER_GPU_MEMORY_UTILIZATION=0.90与单实例优化配置一致
最大并发请求MINERU_API_MAX_CONCURRENT_REQUESTS=12每个worker的并发限制
前缀缓存MINERU_ROUTER_WORKER_ARGS_JSON传递--enable_prefix_caching true
批量Token数MINERU_ROUTER_WORKER_ARGS_JSON传递--max-num-batched-tokens 8192
批处理比率MINERU_HYBRID_BATCH_RATIO=16继承单实例优化配置
处理窗口MINERU_PROCESSING_WINDOW_SIZE=64继承单实例优化配置

MINERU_ROUTER_WORKER_ARGS_JSON格式说明:

# JSON数组格式,传递CLI参数给每个worker
export MINERU_ROUTER_WORKER_ARGS_JSON='["--enable_prefix_caching", "true", "--max-num-batched-tokens", "8192"]'

# 多个参数示例
export MINERU_ROUTER_WORKER_ARGS_JSON='["--enable_prefix_caching", "true", "--max-num-batched-tokens", "8192", "--max-concurrency", "12"]'