102 lines
2.8 KiB
YAML
102 lines
2.8 KiB
YAML
services:
|
|
qdrant:
|
|
image: qdrant/qdrant:latest
|
|
container_name: qdrant-arc
|
|
ports:
|
|
- "6333:6333"
|
|
- "6334:6334"
|
|
environment:
|
|
- QDRANT__TELEMETRY_DISABLED=true
|
|
volumes:
|
|
- qdrant_storage:/qdrant/storage
|
|
networks:
|
|
- arc-network
|
|
|
|
download-model:
|
|
image: alpine:latest
|
|
container_name: download-embedding-model
|
|
volumes:
|
|
- model_storage:/models
|
|
command: >
|
|
sh -c "
|
|
if [ ! -f /models/snowflake-arctic-embed-m-v1.5-f16.gguf ]; then
|
|
echo 'Téléchargement du modèle (Contournement SSL Proxy activé)...';
|
|
wget --no-check-certificate 'https://huggingface.co/Snowflake/snowflake-arctic-embed-m-v1.5/resolve/main/gguf/snowflake-arctic-embed-m-v1.5-f16.gguf' -O /models/snowflake-arctic-embed-m-v1.5-f16.gguf;
|
|
echo 'Téléchargement terminé avec succès !';
|
|
else
|
|
echo 'Le modèle est déjà présent.';
|
|
fi
|
|
"
|
|
|
|
embedding-server:
|
|
image: ghcr.io/ggml-org/llama.cpp:server
|
|
container_name: embedding-arc
|
|
volumes:
|
|
- model_storage:/models
|
|
ports:
|
|
- "8002:8080"
|
|
command: "-m /models/snowflake-arctic-embed-m-v1.5-f16.gguf --embedding --host 0.0.0.0 --port 8080"
|
|
restart: unless-stopped
|
|
networks:
|
|
- arc-network
|
|
depends_on:
|
|
download-model:
|
|
condition: service_completed_successfully
|
|
|
|
download-gemma:
|
|
image: alpine:latest
|
|
container_name: download-gemma-model
|
|
volumes:
|
|
- model_storage:/models
|
|
command: >
|
|
sh -c "
|
|
if [ ! -f /models/gemma-4-E4B-it-UD-Q4_K_XL.gguf ]; then
|
|
echo 'Téléchargement de Gemma 4 (Contournement SSL Proxy)...';
|
|
wget --no-check-certificate 'https://huggingface.co/unsloth/gemma-4-E4B-it-GGUF/resolve/main/gemma-4-E4B-it-UD-Q4_K_XL.gguf' -O /models/gemma-4-E4B-it-UD-Q4_K_XL.gguf;
|
|
echo 'Téléchargement de Gemma 4 terminé !';
|
|
else
|
|
echo 'Le modèle Gemma 4 est déjà présent.';
|
|
fi
|
|
"
|
|
|
|
gemma-server:
|
|
image: ghcr.io/ggml-org/llama.cpp:server
|
|
container_name: gemma-arc
|
|
volumes:
|
|
- model_storage:/models
|
|
ports:
|
|
- "8003:8080"
|
|
command: "-m /models/gemma-4-E4B-it-UD-Q4_K_XL.gguf --host 0.0.0.0 --port 8080 -c 4096"
|
|
restart: unless-stopped
|
|
networks:
|
|
- arc-network
|
|
depends_on:
|
|
download-gemma:
|
|
condition: service_completed_successfully
|
|
|
|
app:
|
|
build: .
|
|
container_name: arc-app
|
|
ports:
|
|
- "8000:8000"
|
|
- "8001:8001"
|
|
volumes:
|
|
- .:/workspace
|
|
environment:
|
|
- PYTHONPATH=/workspace
|
|
- QDRANT_URL=http://qdrant:6333
|
|
- QDRANT_COLLECTION=arc_projects
|
|
- EMBEDDING_SERVER_URL=http://embedding-server:8080
|
|
depends_on:
|
|
- qdrant
|
|
- embedding-server
|
|
networks:
|
|
- arc-network
|
|
|
|
volumes:
|
|
qdrant_storage:
|
|
model_storage:
|
|
|
|
networks:
|
|
arc-network:
|
|
driver: bridge |