Fix Seed-VC startup readiness and clarify Applio models

This commit is contained in:
Mikei386
2026-09-09 21:29:06 +02:00
parent 13a6714b2b
commit 4cdd837482
7 changed files with 18 additions and 10 deletions
+2 -2
View File
@@ -11,7 +11,7 @@ nicht automatisch ein ungenutzter Rest.
| Container | Modell oder wesentliche Komponente | Aufgabe | | Container | Modell oder wesentliche Komponente | Aufgabe |
|---|---|---| |---|---|---|
| `mike-ai-backup` | kein Modell; Offen Docker Volume Backup | Sichert `/data`, `/etc/mike-ai`, den Stack und die persistenten Docker-Volumes im Fünf-Stunden-Takt. | | `mike-ai-backup` | kein Modell; Offen Docker Volume Backup | Sichert `/data`, `/etc/mike-ai`, den Stack und die persistenten Docker-Volumes im Fünf-Stunden-Takt. |
| `mike-ai-applio-studio` | Applio/RVC; Stimmenmodelle werden nutzerseitig ergänzt | Vollständige RVC-Oberfläche für Inferenz, Modellverwaltung und Training auf der RTX 5080. | | `mike-ai-applio-studio` | Applio/RVC; Stimmenmodelle werden nutzerseitig ergänzt | Vollständige RVC-Oberfläche für Inferenz, Modellverwaltung und Training auf der RTX 5080. Für eine Konvertierung ist ein importiertes oder trainiertes `.pth`-Modell nötig; eine Referenzaufnahme allein reicht nicht. |
| `mike-ai-image-worker` | FLUX.2 Klein 9B FP8, Qwen3-8B NF4 Textencoder und VAE | Erzeugt und bearbeitet Bilder transaktional; nutzt während eines Auftrags RTX 5080 und RTX 3060. | | `mike-ai-image-worker` | FLUX.2 Klein 9B FP8, Qwen3-8B NF4 Textencoder und VAE | Erzeugt und bearbeitet Bilder transaktional; nutzt während eines Auftrags RTX 5080 und RTX 3060. |
| `mike-ai-llama-beta1` | Qwen3.8-27B GSQ-RCO `IQ3_S-MTP`, Qwen-MMProj BF16 | Experimentelles Beta-Profil mit 112.000 Token Kontext; wird nur auf Anforderung geladen. | | `mike-ai-llama-beta1` | Qwen3.8-27B GSQ-RCO `IQ3_S-MTP`, Qwen-MMProj BF16 | Experimentelles Beta-Profil mit 112.000 Token Kontext; wird nur auf Anforderung geladen. |
| `mike-ai-llama-dashboard` | kein Modell | Zeigt Telemetrie, Profile, GPU-Nutzung und Betriebsarten an und bietet die Modusumschaltung. | | `mike-ai-llama-dashboard` | kein Modell | Zeigt Telemetrie, Profile, GPU-Nutzung und Betriebsarten an und bietet die Modusumschaltung. |
@@ -28,7 +28,7 @@ nicht automatisch ein ungenutzter Rest.
| `mike-ai-profile-controller` | kein Modell | Startet und stoppt ausschließlich freigegebene Modellprofile und Spezialworker in einer sicheren Reihenfolge. | | `mike-ai-profile-controller` | kein Modell | Startet und stoppt ausschließlich freigegebene Modellprofile und Spezialworker in einer sicheren Reihenfolge. |
| `mike-ai-qwen3-tts` | `Qwen/Qwen3-TTS-12Hz-1.7B-Base`, Stimme Serena | Hochwertige deutsche Sprachausgabe auf der RTX 3060 im LLM-Betrieb. | | `mike-ai-qwen3-tts` | `Qwen/Qwen3-TTS-12Hz-1.7B-Base`, Stimme Serena | Hochwertige deutsche Sprachausgabe auf der RTX 3060 im LLM-Betrieb. |
| `mike-ai-router` | kein eigenes Modell | Einzige OpenAI-kompatible Modelladresse; koordiniert Profile, Bildaufträge, Sprache und Betriebsarten. | | `mike-ai-router` | kein eigenes Modell | Einzige OpenAI-kompatible Modelladresse; koordiniert Profile, Bildaufträge, Sprache und Betriebsarten. |
| `mike-ai-seed-vc-studio` | Seed-VC V1; Gewichte werden beim ersten Auftrag geladen | Zero-Shot-Sprach- und Gesangswandlung anhand einer Referenzaufnahme auf der RTX 5080. | | `mike-ai-seed-vc-studio` | Seed-VC V1; Gewichte werden beim ersten Modusstart vollständig geladen | Zero-Shot-Sprach- und Gesangswandlung anhand einer Referenzaufnahme auf der RTX 5080. Der Dienst gilt erst nach geladenen Teilmodellen als bereit; Gewichte bleiben persistent. |
| `mike-ai-stem-separator` | BS-RoFormer Viperx 1297, `htdemucs_ft`, `htdemucs_6s`, `MossFormer2_SE_48K` | Trennt Gesang, Instrumente oder Sprache/Hintergrundgeräusche im exklusiven Separationsmodus. | | `mike-ai-stem-separator` | BS-RoFormer Viperx 1297, `htdemucs_ft`, `htdemucs_6s`, `MossFormer2_SE_48K` | Trennt Gesang, Instrumente oder Sprache/Hintergrundgeräusche im exklusiven Separationsmodus. |
| `mike-ai-tts-gateway` | kein eigenes Modell | Normalisiert Text, leitet TTS an Qwen3-TTS weiter und fällt bei Bedarf auf Piper zurück. | | `mike-ai-tts-gateway` | kein eigenes Modell | Normalisiert Text, leitet TTS an Qwen3-TTS weiter und fällt bei Bedarf auf Piper zurück. |
| `mike-ai-voice-studio` | `k2-fsa/OmniVoice` 0.2.1 mit Whisper-ASR | Erzeugt Text-to-Speech mit einer Referenzstimme; kein Audio-to-Audio-Voice-Changer. | | `mike-ai-voice-studio` | `k2-fsa/OmniVoice` 0.2.1 mit Whisper-ASR | Erzeugt Text-to-Speech mit einer Referenzstimme; kein Audio-to-Audio-Voice-Changer. |
+3 -1
View File
@@ -82,7 +82,9 @@ fixiert; Gewichte werden beim ersten Auftrag persistent zwischengespeichert.
Applio ist unter `http://192.168.1.212:8011` erreichbar. Der RVC-Pfad besitzt Applio ist unter `http://192.168.1.212:8011` erreichbar. Der RVC-Pfad besitzt
eine eigene Modellbibliothek, Inferenz und Training. Hochwertige Inferenz eine eigene Modellbibliothek, Inferenz und Training. Hochwertige Inferenz
benötigt ein passendes RVC-Stimmenmodell. Der Code ist auf Commit benötigt zwingend ein zuvor importiertes oder trainiertes RVC-Stimmenmodell
(`.pth`, optional `.index`). Eine bloße Referenzaufnahme genügt bei Applio
nicht. Der Code ist auf Commit
`7fa68ec2166ab1331c539704159fa14901e94e5a` fixiert. `7fa68ec2166ab1331c539704159fa14901e94e5a` fixiert.
Hermes benötigt dafür kein Plugin. Exakt eingegebene Steuerbefehle werden vom Hermes benötigt dafür kein Plugin. Exakt eingegebene Steuerbefehle werden vom
+2 -1
View File
@@ -62,7 +62,8 @@ Titelgenerierung und Kontextkompression in Hermes.
| 09.09.2026 | `chenxie95/X-VC`, Code `49df8c591eafc48b096e466d96f9839f9c0dd739`, UI-Basis `d761cd6421e85376b2656dfefd8471d7f35a42be` | Offizielles Beispiel Ende-zu-Ende gewandelt: 5,20 s Audio in 1,07 s (RTF 0,21), gültiges 16-kHz-Mono-PCM-WAV; Modell belegt rund 2,9 GiB auf der RTX 5080. GLM-4-Voice-Tokenizer dokumentiert Chinesisch und Englisch | **technischer Start- und Konvertierungstest bestanden**; deutsche Hörabnahme offen | | 09.09.2026 | `chenxie95/X-VC`, Code `49df8c591eafc48b096e466d96f9839f9c0dd739`, UI-Basis `d761cd6421e85376b2656dfefd8471d7f35a42be` | Offizielles Beispiel Ende-zu-Ende gewandelt: 5,20 s Audio in 1,07 s (RTF 0,21), gültiges 16-kHz-Mono-PCM-WAV; Modell belegt rund 2,9 GiB auf der RTX 5080. GLM-4-Voice-Tokenizer dokumentiert Chinesisch und Englisch | **technischer Start- und Konvertierungstest bestanden**; deutsche Hörabnahme offen |
| 09.09.2026 | Resemble Enhance 0.0.1, Modellrevision `4e3510ce4a8391159f665903544c5150bee7b2cb` | 14,56 s native X-VC-Ausgabe bei 16 kHz wurden auf der RTX 5080 in 3,55 s zu 44,1-kHz-PCM-WAV restauriert. 3,27 % der gemessenen Signalenergie lagen danach oberhalb 8 kHz; damit ist der Pfad keine bloße Neuabtastung. Wegen der alten Upstream-Pins läuft die reine Inferenz mit NumPy 1.26.4/SciPy 1.11.4 auf dem bestehenden Torch-2.8/CUDA-12.8-Unterbau | **technisch produktiv als optionaler A/B-Pfad**; Hörabnahme entscheidet, ob die rekonstruierten Höhen subjektiv besser oder künstlicher klingen | | 09.09.2026 | Resemble Enhance 0.0.1, Modellrevision `4e3510ce4a8391159f665903544c5150bee7b2cb` | 14,56 s native X-VC-Ausgabe bei 16 kHz wurden auf der RTX 5080 in 3,55 s zu 44,1-kHz-PCM-WAV restauriert. 3,27 % der gemessenen Signalenergie lagen danach oberhalb 8 kHz; damit ist der Pfad keine bloße Neuabtastung. Wegen der alten Upstream-Pins läuft die reine Inferenz mit NumPy 1.26.4/SciPy 1.11.4 auf dem bestehenden Torch-2.8/CUDA-12.8-Unterbau | **technisch produktiv als optionaler A/B-Pfad**; Hörabnahme entscheidet, ob die rekonstruierten Höhen subjektiv besser oder künstlicher klingen |
| 09.09.2026 | `Plachtaa/seed-vc` V1, Code `51383efd921027683c89e5348211d93ff12ac2a8` | Gepinntes CUDA-12.8-/Torch-2.7.1-Image auf RTX 5080 gestartet; offizielle Gradio-Oberfläche und Healthcheck antworten. Gewichte folgen beim ersten echten Auftrag in den persistenten Hugging-Face-Cache | **technischer Starttest bestanden**; Konvertierungs- und Hörtest offen | | 09.09.2026 | `Plachtaa/seed-vc` V1, Code `51383efd921027683c89e5348211d93ff12ac2a8` | Gepinntes CUDA-12.8-/Torch-2.7.1-Image auf RTX 5080 gestartet; offizielle Gradio-Oberfläche und Healthcheck antworten. Gewichte folgen beim ersten echten Auftrag in den persistenten Hugging-Face-Cache | **technischer Starttest bestanden**; Konvertierungs- und Hörtest offen |
| 09.09.2026 | `IAHispano/Applio`, Code `7fa68ec2166ab1331c539704159fa14901e94e5a` | Gepinntes CUDA-12.8-fähiges Image auf RTX 5080 gestartet; vollständige Applio/RVC-Oberfläche antwortet. Rund 1,8 GiB Basisgewichte und die Konfiguration wurden persistent ausgelagert; kein Zielstimmenmodell vorinstalliert | **technischer Start- und Persistenztest bestanden**; Konvertierungstest mit einem ausgewählten RVC-Modell offen | | 09.09.2026 | Seed-VC V1, Code `51383efd921027683c89e5348211d93ff12ac2a8` | Sämtliche V1-Teilmodelle werden nun vor Freigabe der Oberfläche geladen und persistent gespeichert. Reale Beispielwandlung mit 10 Diffusionsschritten auf der RTX 5080 abgeschlossen; vollständige WAV erzeugt, etwa 3,6 GiB VRAM belegt | **technischer Start-, Persistenz- und Konvertierungstest bestanden**; der erste Start benötigt wegen der Downloads mehrere Minuten, spätere Starts verwenden den Cache |
| 09.09.2026 | `IAHispano/Applio`, Code `7fa68ec2166ab1331c539704159fa14901e94e5a` | Gepinntes CUDA-12.8-fähiges Image auf RTX 5080 gestartet; vollständige Applio/RVC-Oberfläche antwortet und CUDA ist verfügbar. Rund 1,8 GiB Basisgewichte und die Konfiguration wurden persistent ausgelagert. Es ist kein Zielstimmenmodell installiert; Applio kann aus einer Referenzaufnahme allein kein Modell ableiten | **technischer Start- und Persistenztest bestanden**; Konvertierung erst nach Import oder Training einer `.pth`-Stimme möglich |
## Musikgenerierung ## Musikgenerierung
+4 -2
View File
@@ -3,7 +3,8 @@ FROM nvidia/cuda:12.8.1-cudnn-runtime-ubuntu22.04
ARG SEED_VC_COMMIT=51383efd921027683c89e5348211d93ff12ac2a8 ARG SEED_VC_COMMIT=51383efd921027683c89e5348211d93ff12ac2a8
ENV DEBIAN_FRONTEND=noninteractive \ ENV DEBIAN_FRONTEND=noninteractive \
PIP_DISABLE_PIP_VERSION_CHECK=1 \ PIP_DISABLE_PIP_VERSION_CHECK=1 \
HF_HOME=/models/huggingface HF_HOME=/models/huggingface \
PYTHONUNBUFFERED=1
RUN apt-get update && apt-get install -y --no-install-recommends \ RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential ca-certificates curl ffmpeg git libsndfile1 python3 python3-dev python3-pip \ build-essential ca-certificates curl ffmpeg git libsndfile1 python3 python3-dev python3-pip \
@@ -17,7 +18,8 @@ RUN git clone https://github.com/Plachtaa/seed-vc.git . \
torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 \ torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 \
--index-url https://download.pytorch.org/whl/cu128 \ --index-url https://download.pytorch.org/whl/cu128 \
&& python3 -m pip install --no-cache-dir -r requirements.txt \ && python3 -m pip install --no-cache-dir -r requirements.txt \
&& sed -i 's/demo\.launch()/demo.launch(server_name="0.0.0.0", server_port=7860)/' app.py && sed -i 's/demo\.launch()/demo.launch(server_name="0.0.0.0", server_port=7860)/' app.py \
&& sed -i '/if args.enable_v1:/a\ print("Loading V1 models...", flush=True)\n from seed_vc_wrapper import SeedVCWrapper\n vc_wrapper_v1 = SeedVCWrapper()\n print("V1 models ready.", flush=True)' app.py
EXPOSE 7860 EXPOSE 7860
CMD ["python3", "app.py", "--enable-v1"] CMD ["python3", "app.py", "--enable-v1"]
+5 -3
View File
@@ -9,6 +9,8 @@ Gradio-Oberfläche. Der Build ist auf Upstream-Commit
- GPU: RTX 5080, exklusiv zu LLM, Musik- und anderen Voice-Modi - GPU: RTX 5080, exklusiv zu LLM, Musik- und anderen Voice-Modi
- Persistenz: Hugging-Face-Cache unter `/data/huggingface` - Persistenz: Hugging-Face-Cache unter `/data/huggingface`
Das Image enthält den Programmcode. Die benötigten Modellgewichte werden beim Das Image enthält den Programmcode. Beim Moduswechsel werden sämtliche
ersten tatsächlichen Einsatz in den persistenten Cache geladen. V1-Teilmodelle geladen, bevor der Healthcheck den Dienst als bereit meldet. Die
benötigten Modellgewichte bleiben unter `/data/voice/seed-vc/checkpoints`
erhalten; dadurch blockiert nicht mehr der erste Konvertierungsauftrag scheinbar
ohne Fortschritt.
+1
View File
@@ -15,6 +15,7 @@ services:
- "127.0.0.1:8010:7860" - "127.0.0.1:8010:7860"
volumes: volumes:
- /data/voice/seed-vc/huggingface:/models/huggingface - /data/voice/seed-vc/huggingface:/models/huggingface
- /data/voice/seed-vc/checkpoints:/app/checkpoints
- /data/voice/seed-vc/output:/app/results - /data/voice/seed-vc/output:/app/results
healthcheck: healthcheck:
test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:7860/ >/dev/null"] test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:7860/ >/dev/null"]
+1 -1
View File
@@ -639,7 +639,7 @@ HTML = r'''<!doctype html>
</style></head><body><main> </style></head><body><main>
<div class="top"><div><div class="eyebrow">Mike AI · Live Telemetry</div><h1>Athena llama.cpp Dashboard</h1></div><div class="live"><span class="dot" id="dot"></span><span id="updated">verbinde …</span></div></div> <div class="top"><div><div class="eyebrow">Mike AI · Live Telemetry</div><h1>Athena llama.cpp Dashboard</h1></div><div class="live"><span class="dot" id="dot"></span><span id="updated">verbinde …</span></div></div>
<section class="grid"> <section class="grid">
<article class="card span12"><div class="mode-row"><div><div class="label">Athena Betriebsmodus</div><div class="value" id="operatingMode">–</div><div class="sub" id="modeStatus">Status wird geladen …</div></div><div class="mode-buttons"><button id="llmMode" onclick="setMode('llm')">LLM-Betrieb</button><button id="musicMode" onclick="setMode('music')">Musikstudio</button><button id="separationMode" onclick="setMode('separation')">Audio trennen</button><button id="voiceMode" onclick="setMode('voice')">Voice Studio</button><button id="voiceChangeMode" onclick="setMode('voicechange')">X-VC</button><button id="seedVcMode" onclick="setMode('seedvc')">Seed-VC</button><button id="applioMode" onclick="setMode('applio')">Applio / RVC</button><span id="musicOpen" hidden><a class="stable" href="__MUSIC_ORIGINAL_UI_URL__" target="_blank" rel="noopener">Original UI · stabil</a><a class="experimental" href="__MUSIC_COMMUNITY_UI_URL__" target="_blank" rel="noopener">Community UI · experimentell</a></span><span id="separatorOpen" hidden><a class="stable" href="__SEPARATOR_UI_URL__" target="_blank" rel="noopener">Separator öffnen</a></span><span id="voiceOpen" hidden><a class="stable" href="__VOICE_UI_URL__" target="_blank" rel="noopener">Voice Studio öffnen</a></span><span id="voiceChangeOpen" hidden><a class="experimental" href="__VOICE_CHANGE_UI_URL__" target="_blank" rel="noopener">X-VC öffnen</a></span><span id="seedVcOpen" hidden><a class="experimental" href="__SEED_VC_UI_URL__" target="_blank" rel="noopener">Seed-VC öffnen</a></span><span id="applioOpen" hidden><a class="experimental" href="__APPLIO_UI_URL__" target="_blank" rel="noopener">Applio öffnen</a></span></div></div></article> <article class="card span12"><div class="mode-row"><div><div class="label">Athena Betriebsmodus</div><div class="value" id="operatingMode">–</div><div class="sub" id="modeStatus">Status wird geladen …</div></div><div class="mode-buttons"><button id="llmMode" onclick="setMode('llm')">LLM-Betrieb</button><button id="musicMode" onclick="setMode('music')">Musikstudio</button><button id="separationMode" onclick="setMode('separation')">Audio trennen</button><button id="voiceMode" onclick="setMode('voice')">Voice Studio</button><button id="voiceChangeMode" onclick="setMode('voicechange')">X-VC</button><button id="seedVcMode" onclick="setMode('seedvc')">Seed-VC</button><button id="applioMode" onclick="setMode('applio')">Applio / RVC · Modell nötig</button><span id="musicOpen" hidden><a class="stable" href="__MUSIC_ORIGINAL_UI_URL__" target="_blank" rel="noopener">Original UI · stabil</a><a class="experimental" href="__MUSIC_COMMUNITY_UI_URL__" target="_blank" rel="noopener">Community UI · experimentell</a></span><span id="separatorOpen" hidden><a class="stable" href="__SEPARATOR_UI_URL__" target="_blank" rel="noopener">Separator öffnen</a></span><span id="voiceOpen" hidden><a class="stable" href="__VOICE_UI_URL__" target="_blank" rel="noopener">Voice Studio öffnen</a></span><span id="voiceChangeOpen" hidden><a class="experimental" href="__VOICE_CHANGE_UI_URL__" target="_blank" rel="noopener">X-VC öffnen</a></span><span id="seedVcOpen" hidden><a class="experimental" href="__SEED_VC_UI_URL__" target="_blank" rel="noopener">Seed-VC öffnen</a></span><span id="applioOpen" hidden><a class="experimental" href="__APPLIO_UI_URL__" target="_blank" rel="noopener">Applio öffnen · RVC-Modell erforderlich</a></span></div></div></article>
<article class="card span3"><div class="label">Aktives Profil</div><div class="value" id="profile">–</div><div class="sub" id="profileSub">Router wird abgefragt</div></article> <article class="card span3"><div class="label">Aktives Profil</div><div class="value" id="profile">–</div><div class="sub" id="profileSub">Router wird abgefragt</div></article>
<article class="card span3"><div class="label">Modell</div><div class="value" id="model">–</div><div class="sub" id="modelSub">–</div></article> <article class="card span3"><div class="label">Modell</div><div class="value" id="model">–</div><div class="sub" id="modelSub">–</div></article>
<article class="card span3"><div class="label">CPU</div><div class="value" id="cpu">–</div><div class="bar"><div class="fill" id="cpuBar"></div></div><div class="sub" id="load">–</div></article> <article class="card span3"><div class="label">CPU</div><div class="value" id="cpu">–</div><div class="bar"><div class="fill" id="cpuBar"></div></div><div class="sub" id="load">–</div></article>