feat: implement TTS, Document processing, and Memory Service /facts API
- TTS: xtts-v2 integration with voice cloning support
- Document: docling integration for PDF/DOCX/PPTX processing
- Memory Service: added /facts/upsert, /facts/{key}, /facts endpoints
- Added required dependencies (TTS, docling)
This commit is contained in:
112
docker-compose.node3.yml
Normal file
112
docker-compose.node3.yml
Normal file
@@ -0,0 +1,112 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# DAGI Router для NODE3
|
||||
dagi-router-node3:
|
||||
build:
|
||||
context: ./services/router
|
||||
dockerfile: Dockerfile
|
||||
container_name: dagi-router-node3
|
||||
ports:
|
||||
- "9102:9102"
|
||||
environment:
|
||||
- NATS_URL=nats://host.docker.internal:4222
|
||||
- ROUTER_CONFIG_PATH=/app/router_config.yaml
|
||||
- LOG_LEVEL=info
|
||||
- NODE_ID=node-3-threadripper-rtx3090
|
||||
extra_hosts:
|
||||
- "host.docker.internal:host-gateway"
|
||||
volumes:
|
||||
- ./services/router/router_config.yaml:/app/router_config.yaml:ro
|
||||
- ./logs:/app/logs
|
||||
networks:
|
||||
- dagi-network
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:9102/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
# Swapper Service для NODE3
|
||||
swapper-service-node3:
|
||||
build:
|
||||
context: ./services/swapper-service
|
||||
dockerfile: Dockerfile
|
||||
container_name: swapper-service-node3
|
||||
ports:
|
||||
- "8890:8890"
|
||||
- "8891:8891" # Metrics
|
||||
environment:
|
||||
- OLLAMA_BASE_URL=http://host.docker.internal:11434
|
||||
- SWAPPER_CONFIG_PATH=/app/config/swapper_config.yaml
|
||||
- SWAPPER_MODE=single-active
|
||||
- MAX_CONCURRENT_MODELS=1
|
||||
- MODEL_SWAP_TIMEOUT=300
|
||||
- GPU_ENABLED=true
|
||||
- NODE_ID=node-3-threadripper-rtx3090
|
||||
volumes:
|
||||
- ./services/swapper-service/config/swapper_config_node3.yaml:/app/config/swapper_config.yaml:ro
|
||||
- ./logs:/app/logs
|
||||
networks:
|
||||
- dagi-network
|
||||
restart: unless-stopped
|
||||
# GPU support for RTX 3090 (requires nvidia-container-toolkit)
|
||||
# deploy:
|
||||
# resources:
|
||||
# reservations:
|
||||
# devices:
|
||||
# - driver: nvidia
|
||||
# count: 1
|
||||
# capabilities: [gpu]
|
||||
extra_hosts:
|
||||
- "host.docker.internal:host-gateway"
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "wget -qO- http://localhost:8890/health || exit 1"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
# Image Generation Service (FLUX.2 Klein 4B Base)
|
||||
image-gen-service:
|
||||
build:
|
||||
context: ./services/image-gen-service
|
||||
dockerfile: Dockerfile
|
||||
container_name: dagi-image-gen-node3
|
||||
ports:
|
||||
- "8892:8892"
|
||||
environment:
|
||||
- IMAGE_GEN_MODEL=${IMAGE_GEN_MODEL:-black-forest-labs/FLUX.2-klein-base-4B}
|
||||
- IMAGE_GEN_DEVICE=cuda
|
||||
- IMAGE_GEN_DTYPE=bfloat16
|
||||
- HF_HOME=/root/.cache/huggingface
|
||||
- CUDA_VISIBLE_DEVICES=0
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
- image-gen-cache-node3:/root/.cache/huggingface
|
||||
# GPU support for RTX 3090 (requires nvidia-container-toolkit)
|
||||
# deploy:
|
||||
# resources:
|
||||
# reservations:
|
||||
# devices:
|
||||
# - driver: nvidia
|
||||
# count: 1
|
||||
# capabilities: [gpu]
|
||||
networks:
|
||||
- dagi-network
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8892/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 120s
|
||||
|
||||
networks:
|
||||
dagi-network:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
image-gen-cache-node3:
|
||||
Reference in New Issue
Block a user