Files
AI-Profile-Router/experiments/acestep15-xl-sft/compose.yaml
T

92 lines
3.5 KiB
YAML

services:
music-worker:
image: ghcr.io/ace-step/ace-step-1.5:latest@sha256:95652cd780c78a1b1a7f6f0335530430f0ae53d96c7c12d59f9f39fa23d38567
container_name: mike-ai-music-acestep-test
labels:
com.mike-ai.music-worker: "acestep"
profiles: ["music-test"]
environment:
ACESTEP_MODE: gradio
ACESTEP_CONFIG_PATH: acestep-v15-xl-sft
ACESTEP_LM_MODEL_PATH: acestep-5Hz-lm-1.7B
ACESTEP_LLM_BACKEND: pt
ACESTEP_INIT_SERVICE: "true"
ACESTEP_INIT_LLM: "true"
ACESTEP_DEVICE: cuda
# The image entrypoint forwards only ACESTEP_EXTRA_ARGS to the UI CLI.
# One result per run avoids the batch=2 VRAM/time penalty.
# Named Gradio endpoints are consumed by the separate ace-step-ui service.
ACESTEP_EXTRA_ARGS: "--batch_size 1 --enable-api"
TOKENIZERS_PARALLELISM: "false"
NVIDIA_VISIBLE_DEVICES: ${ACESTEP_GPU_UUID:?set ACESTEP_GPU_UUID to the RTX 5080 UUID}
deploy:
resources:
reservations:
devices:
- driver: nvidia
device_ids: ["${ACESTEP_GPU_UUID:?set ACESTEP_GPU_UUID to the RTX 5080 UUID}"]
capabilities: [gpu]
ports:
# Raw Gradio remains available for diagnostics; users open music-ui below.
- "127.0.0.1:${ACESTEP_GRADIO_PORT:-7862}:7860"
volumes:
- ${ACESTEP_CHECKPOINTS_DIR:-/data/models/acestep/checkpoints}:/app/checkpoints
- ${ACESTEP_HF_CACHE_DIR:-/data/models/acestep/hf-cache}:/root/.cache/huggingface
- ${ACESTEP_OUTPUT_DIR:-/data/music/acestep}:/app/gradio_outputs
- ${ACESTEP_OUTPUT_DIR:-/data/music/acestep}:/app/output
# Version-pinned UI defaults for XL-SFT quality and lossless output.
- ./overrides/model_config.py:/app/acestep/ui/gradio/events/generation/model_config.py:ro
- ./overrides/generation_advanced_output_controls.py:/app/acestep/ui/gradio/interfaces/generation_advanced_output_controls.py:ro
- ./overrides/user_preferences.py:/app/acestep/ui/gradio/interfaces/user_preferences.py:ro
- ./overrides/user_preferences.js:/app/acestep/ui/gradio/interfaces/user_preferences.js:ro
shm_size: "2gb"
restart: "no"
healthcheck:
test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:7860/ >/dev/null"]
interval: 30s
timeout: 10s
start_period: 300s
retries: 3
networks:
- music
- frontend
music-ui:
build:
context: ./ace-step-ui
args:
ACE_STEP_UI_COMMIT: a1fdf91829ec6f7b98844f80e323529cd155dbf2
image: mike-ai/ace-step-ui:a1fdf918
container_name: mike-ai-music-ui
environment:
NODE_ENV: production
PORT: "3001"
FRONTEND_URL: ${ACESTEP_UI_PUBLIC_URL:-http://192.168.1.212:7861}
ACESTEP_API_URL: http://music-worker:7860
DATABASE_PATH: /data/acestep.db
AUDIO_DIR: /data/audio
DATASETS_DIR: /data/datasets
DATASETS_UPLOADS_DIR: /data/datasets/uploads
JWT_SECRET: ${ACESTEP_UI_JWT_SECRET:?set ACESTEP_UI_JWT_SECRET}
ports:
- "127.0.0.1:${ACESTEP_UI_PORT:-7861}:3000"
volumes:
- ${ACESTEP_UI_DATA_DIR:-/data/music/ace-step-ui}:/data
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:3000/ >/dev/null && curl -fsS http://127.0.0.1:3001/health >/dev/null"]
interval: 30s
timeout: 10s
start_period: 30s
retries: 3
networks:
- music
- frontend
networks:
music:
name: mike-ai-music
frontend:
external: true
name: mike-ai_frontend