Files
ai-bayarea/bayarea-ai-server/docker-compose-llama-gemma12b-vulkan.yml
2026-07-10 10:34:50 -05:00

62 lines
1.8 KiB
YAML

# llama.cpp + Gemma-4-12B (Vision) - VULKAN-Backend statt ROCm.
#
# Grund fuer den Wechsel: Gemma-4-Vision unter ROCm geraet in eine
# Endlosschleife (<unused>-Flood, llama.cpp Issue #21416) - ein ROCm-Backend-Bug.
# Der Report bestaetigt: "With vulkan it works on the same hardware."
# Gleiche Karte (R9700), gleiches Modell, gleicher Client - nur Backend anders.
#
# Wichtige Unterschiede zu ROCm:
# - KEIN /dev/kfd noetig (Vulkan nutzt den Grafik-Stack, nicht ROCm-Compute)
# - Gruppe 'render' zusaetzlich (Zugriff auf /dev/dri/renderD*)
# - --device Vulkan0 explizit, sonst evtl. CPU-Fallback (llvmpipe)
#
# Laeuft ALLEIN auf der GPU (Qwen vorher stoppen).
#
# Start: docker compose -f docker-compose-llama-gemma12b.yml up -d
# Logs: docker compose -f docker-compose-llama-gemma12b.yml logs -f
services:
llamacpp-gemma12b:
image: ghcr.io/ggml-org/llama.cpp:server-vulkan
container_name: llamacpp-gemma12b
restart: unless-stopped
init: true
devices:
- /dev/dri:/dev/dri
group_add:
- video
- "991" # GID der render-Gruppe (getent group render -> 991)
security_opt:
- seccomp=unconfined
ipc: host
environment:
# Nur die erste (einzige) GPU sichtbar machen; CPU-Fallback vermeiden
- GGML_VK_VISIBLE_DEVICES=0
ports:
- "8000:8080"
volumes:
- ~/.cache/llama.cpp:/root/.cache/llama.cpp
command:
- -hf
- unsloth/gemma-4-12b-it-GGUF:UD-Q4_K_XL
- --host
- 0.0.0.0
- --port
- "8080"
- --device
- Vulkan0
- -ngl
- "99"
- --ctx-size
- "8192"
- --parallel
- "1"
- --jinja
- --reasoning
- "off"
- --cache-ram
- "0"
- --ctx-checkpoints
- "0"
- --alias
- gemma-4-12b