diff --git a/servers/unraid/firered-ocr/README.md b/servers/unraid/firered-ocr/README.md new file mode 100644 index 0000000..5fcd702 --- /dev/null +++ b/servers/unraid/firered-ocr/README.md @@ -0,0 +1,11 @@ +# FireRed OCR + +Arcane-managed FireRed-OCR vLLM endpoint on unRaid GPU1. + +- API: `http://192.168.50.100:8001` +- Model data: `/mnt/cache-appdata/firered-ocr` +- GPU: physical device 1, exposed as CUDA device 0 +- Image: pinned to the digest already present on unRaid + +The service was migrated from the `llama_cpp` Compose Manager project. The +model bind mount is reused in place; no model data is copied into Arcane. diff --git a/servers/unraid/firered-ocr/compose.yaml b/servers/unraid/firered-ocr/compose.yaml new file mode 100644 index 0000000..7be7c43 --- /dev/null +++ b/servers/unraid/firered-ocr/compose.yaml @@ -0,0 +1,47 @@ +services: + firered-ocr: + image: vllm/vllm-openai@sha256:2296a2a7e1ce1dc59c6577ba5900f4e9910b76c4a0cb134833a8137f92404dfa + pull_policy: never + container_name: firered-ocr + restart: unless-stopped + entrypoint: ["/bin/sh", "-c"] + command: + - >- + pip install qwen-vl-utils -q && + vllm serve /models/firered-ocr + --served-model-name firered-ocr + --load-format safetensors + --trust-remote-code + --dtype half + --gpu-memory-utilization 0.30 + --max-num-seqs 1 + --max-model-len 4096 + --enforce-eager + --host 0.0.0.0 + --port 8001 + environment: + NVIDIA_VISIBLE_DEVICES: "1" + CUDA_VISIBLE_DEVICES: "0" + NVIDIA_DRIVER_CAPABILITIES: compute,utility + ports: + - "8001:8001" + volumes: + - /mnt/cache-appdata/firered-ocr:/models/firered-ocr + deploy: + resources: + reservations: + devices: + - driver: nvidia + device_ids: ["1"] + capabilities: [gpu] + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8001/health"] + interval: 30s + timeout: 10s + start_period: 90s + retries: 3 + labels: + com.getarcaneapp.arcane.icon: firered-ocr + net.unraid.docker.icon: https://github.com/FireRedTeam.png?size=128 + net.unraid.docker.webui: http://[IP]:[PORT:8001]/docs +