Persist Piper settings in restored OpenWebUI
This commit is contained in:
@@ -39,6 +39,7 @@ Chats oder privaten Nutzdaten.
|
|||||||
| Leistungsdaten | Benchmarkdaten sollten sichtbar sein, ohne private Chat-Inhalte zu protokollieren. | Ein globaler Abschlussfilter schreibt ausschließlich technische Zahlen in eine lokal rotierende JSONL-Datei und zeigt eine knappe Statuszeile. |
|
| Leistungsdaten | Benchmarkdaten sollten sichtbar sein, ohne private Chat-Inhalte zu protokollieren. | Ein globaler Abschlussfilter schreibt ausschließlich technische Zahlen in eine lokal rotierende JSONL-Datei und zeigt eine knappe Statuszeile. |
|
||||||
| Antwortaktionen | Wiederkehrende Nachbearbeitungen sollten bewusst per Klick statt als permanenter Zusatzprompt laufen. | Eine versionierte globale Action bietet lokale Kurzfassung, Checkliste, Diagnose, Unsicherheits-/Quellenprüfung, Thinking-Verbesserung und Markdown-Kopie; keine Schreib- oder Profilwechselaktion. |
|
| Antwortaktionen | Wiederkehrende Nachbearbeitungen sollten bewusst per Klick statt als permanenter Zusatzprompt laufen. | Eine versionierte globale Action bietet lokale Kurzfassung, Checkliste, Diagnose, Unsicherheits-/Quellenprüfung, Thinking-Verbesserung und Markdown-Kopie; keine Schreib- oder Profilwechselaktion. |
|
||||||
| Sprachausgabe | Beim ersten Leerhostaufbau war kein TTS-Dienst Bestandteil des Compose-Stacks. | Piper `piper-tts` 1.6.0 läuft als eigener interner CPU-Container mit persistenter deutscher Stimme; Open WebUI nutzt ihn ausschließlich über den authentifizierten Router. |
|
| Sprachausgabe | Beim ersten Leerhostaufbau war kein TTS-Dienst Bestandteil des Compose-Stacks. | Piper `piper-tts` 1.6.0 läuft als eigener interner CPU-Container mit persistenter deutscher Stimme; Open WebUI nutzt ihn ausschließlich über den authentifizierten Router. |
|
||||||
|
| Persistente Audioeinstellungen | Die restaurierte OpenWebUI-Datenbank überstimmte Compose mit dem alten Modell `tts-1` und der Stimme `coral`; der Router antwortete deshalb mit HTTP 400. | Der OpenWebUI-Konfigurator setzt bei Installation und Restore gezielt Engine `openai`, Modell `piper`, Stimme `alloy` und die interne Router-URL. Andere Audio- oder Nutzereinstellungen bleiben unangetastet. |
|
||||||
|
|
||||||
## Abnahmezustand am 21. August 2026
|
## Abnahmezustand am 21. August 2026
|
||||||
|
|
||||||
|
|||||||
@@ -78,6 +78,8 @@ curl http://<WIREGUARD-IP>:8081/health
|
|||||||
Die TTS-Verbindung wird für eine frische Open-WebUI-Datenbank automatisch als
|
Die TTS-Verbindung wird für eine frische Open-WebUI-Datenbank automatisch als
|
||||||
OpenAI-kompatibler Audio-Endpunkt des Routers vorbelegt. Der Router reicht sie
|
OpenAI-kompatibler Audio-Endpunkt des Routers vorbelegt. Der Router reicht sie
|
||||||
intern an Piper weiter; Port 8085 wird nicht am Host veröffentlicht. Ein
|
intern an Piper weiter; Port 8085 wird nicht am Host veröffentlicht. Ein
|
||||||
|
Restore setzt zusätzlich die vier persistenten Audiofelder gezielt neu, damit
|
||||||
|
alte Werte wie `tts-1` oder `coral` die Compose-Vorgaben nicht überstimmen. Ein
|
||||||
Ende-zu-Ende-Test ohne Ausgabe des API-Schlüssels:
|
Ende-zu-Ende-Test ohne Ausgabe des API-Schlüssels:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -119,10 +119,25 @@ with con:
|
|||||||
""",
|
""",
|
||||||
("task.follow_up.enable", "false", now),
|
("task.follow_up.enable", "false", now),
|
||||||
)
|
)
|
||||||
|
for key, value in (
|
||||||
|
("audio.tts.engine", "openai"),
|
||||||
|
("audio.tts.model", "piper"),
|
||||||
|
("audio.tts.voice", "alloy"),
|
||||||
|
("audio.tts.openai.api_base_url", "http://router:8081/v1"),
|
||||||
|
):
|
||||||
|
con.execute(
|
||||||
|
"""
|
||||||
|
insert into config (key,value,updated_at) values (?,?,?)
|
||||||
|
on conflict(key) do update set
|
||||||
|
value=excluded.value,
|
||||||
|
updated_at=excluded.updated_at
|
||||||
|
""",
|
||||||
|
(key, json.dumps(value), now),
|
||||||
|
)
|
||||||
print(
|
print(
|
||||||
"OpenWebUI konfiguriert: Default Off=10, Thinking=20, "
|
"OpenWebUI konfiguriert: Default Off=10, Thinking=20, "
|
||||||
"Stability Guard=30, Secret Redaction=40, Local Metrics=90, "
|
"Stability Guard=30, Secret Redaction=40, Local Metrics=90, "
|
||||||
"Quick Actions=100, Folgefragen=aus"
|
"Quick Actions=100, Folgefragen=aus, Piper-TTS=aktiv"
|
||||||
)
|
)
|
||||||
PY
|
PY
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user