File: /home/kiwerkzeuge.de/ace-step-service/README.md
# ACE-Step 1.5 Music Generation Service
Dies ist der Backend-Service für den ACE-Step 1.5 Musikgenerator auf kiwerkzeuge.de.
**Wichtig:** Dieser Service läuft außerhalb von public_html auf Port 8015.
## Installation
### 1. ACE-Step Repository klonen
```bash
cd /home/kiwerkzeuge.de/ace-step-service
# Falls noch nicht geklont:
git clone https://github.com/ACE-Step/ACE-Step-1.5.git .
```
### 2. uv installieren (falls nicht vorhanden)
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
### 3. Abhängigkeiten installieren
```bash
# ACE-Step eigene Abhängigkeiten
uv sync
# Zusätzliche Pakete für den FastAPI-Service
uv pip install -r requirements.txt
```
### 4. systemd Service einrichten
```bash
sudo cp /home/kiwerkzeuge.de/ace-step-service/ace-step.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable ace-step
sudo systemctl start ace-step
```
### 5. Status prüfen
```bash
sudo systemctl status ace-step
sudo journalctl -u ace-step -f
```
## Konfiguration
### Umgebungsvariablen
| Variable | Standard | Beschreibung |
|----------|----------|--------------|
| `ACESTEP_UPLOAD_DIR` | `/home/kiwerkzeuge.de/public_html/uploads` | Verzeichnis für generierte Audio-Dateien |
| `ACESTEP_PUBLIC_URL_PREFIX` | `/uploads/` | URL-Pfad für Downloads |
| `ACESTEP_PORT` | `8015` | Port für den Service |
| `ACESTEP_HOST` | `127.0.0.1` | Host für den Service (local-only) |
| `ACESTEP_DEVICE` | `auto` | `auto`, `cuda` oder `cpu` |
| `ACESTEP_MODEL` | `ACE-Step/Ace-Step1.5` | Modell-Name/Pfad |
### API Endpunkte
- `GET /ping` - Health check
- `POST /generate` - Musik generieren
### POST /generate Payload
```json
{
"prompt": "Epic orchestral music, intense drums",
"duration_seconds": 60,
"seed": 1234,
"think_mode": false,
"diffusion_steps": 50,
"accept_noncommercial": true
}
```
## Troubleshooting
### CUDA Out of Memory
Reduziere die `diffusion_steps` oder nutze kürzere Dauer. Bei sehr langen Tracks (>3 Minuten) kann mehr VRAM benötigt werden.
### Modell lädt nicht
Stelle sicher, dass das ACE-Step Repository korrekt geklont wurde:
```bash
cd /home/kiwerkzeuge.de/ace-step-service
git lfs pull
uv sync
```
### Service startet nicht
```bash
sudo journalctl -u ace-step -f
```
## Hinweise
- ACE-Step 1.5 benötigt Python 3.11+
- Empfohlen: CUDA-fähige GPU (mindestens 4GB VRAM)
- CPU-Betrieb ist möglich, aber deutlich langsamer
- Die Non-Commercial-Lizenz muss bestätigt werden
- Der Service läuft unter Port 8015 (nicht öffentlich zugänglich)
## Entwicklung
Für Entwicklungszwecke kann der Service im Mock-Modus laufen (ohne echtes ACE-Step Modell). Er generiert dann einfache Test-Töne.
```bash
cd /home/kiwerkzeuge.de/ace-step-service
uv run python -m app.main
```