Sign inSign up

alexsuntop/mineru

By alexsuntop

•Updated 3 months ago

MinerU latest images, for vLLM backend.

Image
Machine learning & AI
Web servers
10

50K+

alexsuntop/mineru repository overview

⁠MinerU Docker Images

MinerU⁠ image, use official Dockerfile⁠. Source repo: Sun-ZhenXing/compose-anything⁠.

You may be looking for a high-performance, memory-safe SDK compatible with this VLM that also supports Rust, Python, and Node.js—and yes, that’s mineru-rs⁠.

⁠Docker Compose

docker-compose.yaml

x-defaults: &defaults
  restart: unless-stopped
  logging:
    driver: json-file
    options:
      max-size: 100m
      max-file: "3"

x-mineru-vllm: &mineru-vllm
  <<: *defaults
  image: ${GLOBAL_REGISTRY:-}alexsuntop/mineru:${MINERU_VERSION:-3.4.2}
  environment:
    TZ: ${TZ:-UTC}
    MINERU_MODEL_SOURCE: local
  ulimits:
    memlock: -1
    stack: 67108864
  ipc: host
  deploy:
    resources:
      limits:
        cpus: "16.0"
        memory: 32G
      reservations:
        cpus: "8.0"
        memory: 16G
        devices:
          - driver: nvidia
            device_ids: ["0"]
            capabilities: [gpu]

services:
  mineru-openai-server:
    <<: *mineru-vllm
    profiles:
      - "openai-server"
      - ${COMPOSE_PROFILES:-}
    ports:
      - ${MINERU_PORT_OVERRIDE_VLLM:-30000}:30000
    entrypoint: mineru-openai-server
    command:
      --host 0.0.0.0
      --port 30000
      # --data-parallel-size 2  # If using multiple GPUs, increase throughput using vllm's multi-GPU parallel mode
      # --gpu-memory-utilization 0.9 # If running on a single GPU and encountering VRAM shortage, reduce the KV cache size by this parameter, if VRAM issues persist, try lowering it further to `0.4` or below.
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:30000/health || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

  mineru-api:
    <<: *mineru-vllm
    profiles: ["api"]
    ports:
      - ${MINERU_PORT_OVERRIDE_API:-8000}:8000
    entrypoint: mineru-api
    command:
      --host 0.0.0.0
      --port 8000
      # parameters for vllm-engine
      # --data-parallel-size 2  # If using multiple GPUs, increase throughput using vllm's multi-GPU parallel mode
      # --gpu-memory-utilization 0.5  # If running on a single GPU and encountering VRAM shortage, reduce the KV cache size by this parameter, if VRAM issues persist, try lowering it further to `0.4` or below.
    healthcheck:
      test:
        [
          "CMD",
          "wget",
          "--no-verbose",
          "--tries=1",
          "--spider",
          "http://localhost:8000/health",
        ]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

  mineru-gradio:
    <<: *mineru-vllm
    profiles: ["gradio"]
    ports:
      - ${MINERU_PORT_OVERRIDE_GRADIO:-7860}:7860
    entrypoint: mineru-gradio
    command:
      --server-name 0.0.0.0
      --server-port 7860
      # --enable-api false  # If you want to disable the API, set this to false
      # --max-convert-pages 20  # If you want to limit the number of pages for conversion, set this to a specific number
      # parameters for vllm-engine
      # --data-parallel-size 2  # If using multiple GPUs, increase throughput using vllm's multi-GPU parallel mode
      # --gpu-memory-utilization 0.5  # If running on a single GPU and encountering VRAM shortage, reduce the KV cache size by this parameter, if VRAM issues persist, try lowering it further to `0.4` or below.
    healthcheck:
      test:
        [
          "CMD",
          "wget",
          "--no-verbose",
          "--tries=1",
          "--spider",
          "http://localhost:7860/",
        ]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

VLM backend server:

docker compose up -d

Document parse API:

docker compose --profile api up -d

Gradio WebUI:

docker compose --profile gradio up -d

Test vLLM backend:

uvx mineru -o ./output -b vlm-http-client -u http://localhost:30000 -p demo.pdf

# or

uvx mineru-rs -o ./output -u http://localhost:30000 -p demo.pdf

⁠LICENSE

Version 3.4.2 is currently licensed under an open-source license. Please refer to the MinerU Restricted Apache License 2.0⁠ for more details regarding commercial use.

This project is not affiliated with any official project, does not represent any official entity, and offers no guarantees.

Tag summary

Content type

Image

Digest

sha256:79881dcce…

Size

12.1 GB

Last updated

3 months ago

docker pull alexsuntop/mineru:3.4.2