Files
Loki/docker-compose.yml
T
MichaelandClaude Opus 5.5 4a9a5a1712 Moteur Strata : un second moteur, choisi par preset (ENGINE=strata)
Strata (github.com/Niko1221/Strata, MIT) fait tourner Qwen3.8 Flash Next
(MoE 125 B) sur une carte de joueur en répartissant les experts entre VRAM,
RAM et disque. Intégration reprise d'AJEAN (backend_moe.go, « AJEAN MoE
1.0 ») : paquet figé de la release moe-v1.0, vérifié par SHA-256.

- backend_strata.go : détection de la machine, quant conseillé, installation
  en tâche (même suivi que llama.cpp), preset ENGINE=strata, lancement du
  serveur de Strata par `loki serve`, réglages d'un modèle installé
- pré-vol, vision, liste des presets, journal de chargement : Strata reconnu
- proxy OpenAI et relais : Host local pour Strata (il refuse un Host inconnu)
- benchmark et optimiseur refusés sur Strata (protocole propre à llama-server)
- UI : ligne Strata dans Paramètres → Moteur (visible aussi avec le moteur de
  l'image), fenêtre d'installation et de réglages, moteur actif affiché
- image : python3 + python3-venv ; compose : memlock illimité

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 09:03:22 +02:00

45 lines
1.8 KiB
YAML

# Loki — fork conteneurisé d'AJEAN (https://github.com/nathaninline/ajean, MIT)
# Un seul service : le conteneur embarque le moteur llama.cpp (CUDA) ET l'UI.
#
# cp .env.example .env # ajuste si besoin
# docker compose up --build # build local en quelques minutes (llama-server
# # vient précompilé de l'image officielle llama.cpp)
#
# Interface : http://localhost:8090
# Pré-requis GPU : NVIDIA Container Toolkit sur l'hôte.
services:
loki:
build:
context: .
# Pour épingler la version du moteur ou passer en CPU/Vulkan :
# args: { LLAMACPP_IMAGE: "ghcr.io/ggml-org/llama.cpp:server-cuda-b10423" }
container_name: loki
ports:
- "${LOKI_WEB_PORT:-8090}:${LOKI_WEB_PORT:-8090}"
environment:
- LOKI_WEB_PORT=${LOKI_WEB_PORT:-8090}
# Semé UNE fois au premier démarrage (modifiable ensuite dans l'UI) :
- LOKI_MODEL=${LOKI_MODEL:-}
- LOKI_CTX=${LOKI_CTX:-}
- LOKI_NGL=${LOKI_NGL:-}
# Accès par nom de domaine (reverse proxy) sans clé de pilotage : nom(s)
# autorisé(s), séparés par des virgules — sinon l'API répond 403.
- LOKI_TRUSTED_HOSTS=${LOKI_TRUSTED_HOSTS:-}
volumes:
# /data = LOKI_HOME : config, base bbolt, mémoire, workspace, modèles téléchargés
- ./data:/data
# /models : dossier(s) de modèles GGUF supplémentaires (LOKI_MODEL_DIRS)
- ./models:/models
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: ["gpu"]
# Moteur Strata (Qwen3.8 Flash Next) : il verrouille ses experts en RAM
# (mlock, 30 à 50 Go). La limite Docker par défaut (64 Ko) l'en empêche.
ulimits:
memlock: -1
restart: unless-stopped