ia-test/Dockerfile
2025-08-16 18:33:30 +02:00

33 lines
1.1 KiB
Docker

# Variante 1 (ta base actuelle)
FROM quay.io/go-skynet/local-ai:latest
# (facultatif) si l'image ne contient pas curl :
# RUN apk add --no-cache curl || (apt-get update && apt-get install -y curl ca-certificates)
ENV MODELS_PATH=/models \
DEBUG=false \
THREADS=2 \
CONTEXT_SIZE=1024
# Crée le dossier des modèles
RUN mkdir -p /models
# Télécharge un petit modèle chat (TinyLlama 1.1B quantisé Q4) AU BUILD
# => Embarqué dans l'image, pas besoin de réseau à l'exécution pour ce fichier.
RUN curl -L -o /models/tinyllama-1.1b-chat.Q4_K_M.gguf \
https://huggingface.co/Skynet-LocalAI/tinyllama-1.1b-chat.Q4_K_M.gguf
# IMPORTANT : on utilise un heredoc NON quoted (<<YAML) pour EXPANSION des variables
# (n_ctx/n_threads prendront les valeurs de CONTEXT_SIZE/THREADS AU BUILD)
RUN cat > /models/gpt-oss-20b.yaml <<YAML
name: gpt-oss-20b
backend: llama
parameters:
model: tinyllama-1.1b-chat.Q4_K_M.gguf
n_ctx: ${CONTEXT_SIZE}
n_threads: ${THREADS}
temperature: 0.2
top_p: 0.9
YAML
# Le démarrage du serveur est piloté par docker-compose via `command`