🐈⬛
dots.ocrの簡単起動docker-compose.yml
このOSSのocrを試そうと思ったら、
意外に詰まって時間取られたので簡単スクリプトにしておきました
ほぼこの記事を参考にさせていただきました
Dockerfile
FROM rednotehilab/dots.ocr:vllm-openai-v0.9.1 as base
RUN git clone https://github.com/rednote-hilab/dots.ocr.git && cd dots.ocr && pip install -e .
FROM base as gradio
WORKDIR /vllm-workspace/dots.ocr
RUN sed -i 's/127\.0\.0\.1/vllm/g' demo/demo_gradio.py
ENTRYPOINT python3 demo/demo_gradio.py 7860
FROM base as vllm
RUN cd dots.ocr && python3 tools/download_model.py
ENV HF_MODEL_PATH="/vllm-workspace/dots.ocr/weights/DotsOCR"
ENV PYTHONPATH="/vllm-workspace/dots.ocr/weights"
RUN sed -i '/^from vllm\.entrypoints\.cli\.main import main$/a\
from DotsOCR import modeling_dots_ocr_vllm' `which vllm`
ENTRYPOINT vllm serve ${HF_MODEL_PATH} --host 0.0.0.0 --tensor-parallel-size 1 --gpu-memory-utilization 0.95 --chat-template-content-format string --served-model-name model --trust-remote-code
docker-compose.yml
services:
vllm:
build:
context: .
dockerfile: Dockerfile
target: vllm
ports:
- "8000:8000"
restart: unless-stopped
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
gradio:
build:
context: .
dockerfile: Dockerfile
target: gradio
ports:
- "7860:7860"
restart: unless-stopped
Discussion