feat(voice_loop): --stream-text (Antworttext live am Monitor)
- neuer Flag --stream-text setzt stream:true im /ws/voice-Start-Frame; token-Events werden inline ausgegeben (Wort fuer Wort, waehrend die KI generiert) - mit --stream-audio kombinierbar; bei semantic wird die Live-Zeile abgeschlossen - Token-Events sind winzig -> Audio-Startzeit praktisch unveraendert (gemessen: Text 1. Token lokal ~1 s, Cloud ~3 s; erster Ton wie zuvor) - Test: /ws/voice mit stream:true liefert token-Events; 66 Tests gruen - Doku ergaenzt (Optionen + Feature-Hinweis) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
2e6f2efef6
commit
5296459b07
3 changed files with 36 additions and 3 deletions
|
|
@ -110,6 +110,7 @@ Ablauf je Runde:
|
|||
Nützliche Optionen:
|
||||
```bash
|
||||
python scripts/voice_loop.py --stream-audio # satzweises Vorlesen: Antwort beginnt frueher
|
||||
python scripts/voice_loop.py --stream-text # Antworttext live anzeigen (kombinierbar mit --stream-audio)
|
||||
python scripts/voice_loop.py --recorder pw-record # PipeWire-Aufnahme (Standard bei 'auto')
|
||||
python scripts/voice_loop.py --recorder arecord --device hw:1,0 # ALSA, bestimmtes Mikrofon
|
||||
python scripts/voice_loop.py --llm-provider openrouter --tts-provider openrouter
|
||||
|
|
@ -177,8 +178,10 @@ curl -s -X POST "$URL/api/chat?debug=true" \
|
|||
- **Echtzeit-Streaming:** WebSocket `/ws/chat` mit `{"text":"…","stream":true}` liefert
|
||||
die Antwort wortweise; `"audio_stream":true` zusätzlich das Audio satzweise. Im
|
||||
Sprech-Loop aktivierst du das satzweise Vorlesen mit `--stream-audio` (das Vorlesen
|
||||
beginnt dann schon nach dem ersten Satz, statt erst nach der ganzen Antwort).
|
||||
Provider-Overrides und `--stream-audio` wirken auch über `/ws/voice` (start-Frame).
|
||||
beginnt dann schon nach dem ersten Satz, statt erst nach der ganzen Antwort) und die
|
||||
**Live-Anzeige des Antworttextes** mit `--stream-text` (erscheint Wort für Wort,
|
||||
während die KI generiert — beides kombinierbar). Provider-Overrides, `--stream-audio`
|
||||
und `--stream-text` wirken auch über `/ws/voice` (start-Frame).
|
||||
- **Unterbrechen (Barge-in):** während der Assistent spricht `{"type":"interrupt"}`
|
||||
senden → laufende Antwort wird abgebrochen.
|
||||
- **Automatische Sprechpausen-Erkennung (VAD):** im Start-Frame von `/ws/voice`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue