first
This commit is contained in:
commit
6c9c3f663b
30
Dockerfile
Normal file
30
Dockerfile
Normal file
@ -0,0 +1,30 @@
|
||||
FROM quay.io/go-skynet/local-ai:latest
|
||||
|
||||
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**
|
||||
# -> Il sera **embarqué** dans l'image finale. Aucune connexion réseau n'est
|
||||
# nécessaire **à l'exécution**.
|
||||
RUN curl -L --fail --progress-bar \
|
||||
-o /models/tinyllama-1.1b-chat.Q4_K_M.gguf \
|
||||
https://huggingface.co/TheBloke/TinyLlama-1.1B-Chat-v1.0-GGUF/resolve/main/tinyllama-1.1b-chat-v1.0.Q4_K_M.gguf
|
||||
|
||||
# Mappe le nom du modèle **gpt-oss-20b** (compat) vers le fichier téléchargé
|
||||
# => côté Symfony on référence simplement "gpt-oss-20b"
|
||||
RUN printf "name: gpt-oss-20b
|
||||
backend: llama
|
||||
parameters:
|
||||
model: tinyllama-1.1b-chat.Q4_K_M.gguf
|
||||
n_ctx: %s
|
||||
n_threads: %s
|
||||
temperature: 0.2
|
||||
top_p: 0.9
|
||||
" "$CONTEXT_SIZE" "$THREADS" > /models/gpt-oss-20b.yaml
|
||||
|
||||
# L'entrée du serveur (déjà gérée par docker-compose via `command`)
|
||||
18
docker-compose.yml
Normal file
18
docker-compose.yml
Normal file
@ -0,0 +1,18 @@
|
||||
version: "3.9"
|
||||
services:
|
||||
localai:
|
||||
build: .
|
||||
container_name: localai
|
||||
ports:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
- MODELS_PATH=/models
|
||||
- THREADS=2 # ajustez selon vos cores (léger par défaut)
|
||||
- CONTEXT_SIZE=1024 # contexte réduit pour tests
|
||||
- DEBUG=false
|
||||
command: ["--models-path", "/models", "--address", "0.0.0.0:8080"]
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-fsS", "http://localhost:8080/v1/models"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
Loading…
Reference in New Issue
Block a user