backup stack: whisper-cpp-sycl [2026-11-05]

This commit is contained in:
moonside committed 2026-11-05 05:01:21 +00:00
1 parent 76265f8347
commit 74b0961902
1 file changed
+57
+57
View File
@@ -0,0 +1,57 @@
services:
# One-shot helper: downloads models into the models folder if missing, then exits.
whisper-models:
image: alpine:3
container_name: whisper-models
restart: "no"
volumes:
- /home/fireball/docker/whisper-cpp/models:/models
command:
- sh
- -c
- |
set -e
apk add --no-cache wget >/dev/null
get() {
if [ -s "/models/$$1" ]; then echo "have $$1"; else
echo "downloading $$1"
wget -q --show-progress -O "/models/$$1.part" "$$2" && mv "/models/$$1.part" "/models/$$1"
fi
}
get ggml-large-v3.bin https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3.bin
get ggml-silero-v5.1.2.bin https://huggingface.co/ggml-org/whisper-vad/resolve/main/ggml-silero-v5.1.2.bin
whisper-sycl:
image: ghcr.io/linktothedata/whisper-sycl:latest
container_name: whisper-sycl
restart: unless-stopped
depends_on:
whisper-models:
condition: service_completed_successfully
ports:
- "8081:8080" # whisper-server UI + /inference
devices:
- /dev/dxg:/dev/dxg
# - /dev/dri:/dev/dri # add if your ollama-sycl service maps it
volumes:
- /usr/lib/wsl:/usr/lib/wsl # WSL GPU libs (match ollama-sycl)
- /home/fireball/docker/whisper-cpp/models:/models
environment:
- ONEAPI_DEVICE_SELECTOR=level_zero:0 # force the Arc, not the CPU
- SYCL_CACHE_PERSISTENT=1 # faster restarts
# Image entrypoint may be the CLI, so find whisper-server explicitly.
entrypoint: ["/bin/sh", "-c"]
command:
- >
exec "$$(find / -name whisper-server -type f 2>/dev/null | head -1)"
--host 0.0.0.0 --port 8080
-m /models/ggml-large-v3.bin
--convert --language auto
--vad -vm /models/ggml-silero-v5.1.2.bin
healthcheck:
# bash /dev/tcp avoids needing curl in the image
test: ["CMD-SHELL", "bash -c '</dev/tcp/127.0.0.1/8080' || exit 1"]
interval: 30s
timeout: 5s
retries: 3
start_period: 120s