Was macht analyze-chatterbox-emotions?
Bewerte ein generiertes Chatterbox-Rendering als sprachqualitätsbezogenes Artefakt, nicht als Aussage über die tatsächliche Emotion des Sprechers.
Verwende dies, wenn ein Chatterbox- oder Persona-Dream-Rendering einen Nachweis benötigt, dass Emotionstags, Pausen, Tempo und Audioqualität wie gewünscht funktioniert haben.
Vertrag
Eingabe:
./run.sh analyze --audio path/to/render.wav \
--expected-text "optional source text" \
--target-label beruhigend \
--target-arousal 0.35 \
--target-valence 0.4 \
--out /tmp/chatterbox_voice_eval.json \
--report /tmp/chatterbox_voice_eval.md
Ausgabe-JSON-Schema: analyze_chatterbox_emotions.voice_eval.v1.
Der Evaluator berichtet:
affect: Ziellabel plus akustische Arousal/Valenz-Proxys und ein Kompatibilitäts-Score.prosody: Dauer, geschätzte Sprechrate, RMS/Lautstärke-Proxy, F0-Schätzungen falls verfügbar.pauses: Stille-Verhältnis, erkannte Pausenabschnitte und geplante-vs-gemessene Pausenvergleich, wenn ein Chatterbox-Render-Plan oder eine Konversationsrunde angegeben wird.quality: Clipping, Spitzenamplitude, Diskontinuitätsflags und Warnungen bei schwachem Signal.intelligibility: Wortanzahl des erwarteten Textes und optionale Transkriptionsfelder; dieser Skill erfindet keine ASR stillschweigend.
Optionale Eingaben
--render-plan path.json: Chatterboxrender_plan.json, Persona-Dream-Journal-Beleg, dynamischer Konversationsbeleg oder eine Konversationsrunde im JSON-Format mitchatterbox_pause_plan.--transcript "text": Vom Aufrufer bereitgestelltes ASR-Transkript. Wenn nicht angegeben, ist die Transkript-Ähnlichkeitnullund wird als Nicht-Behauptung aufgeführt.
Urteile
pass: Keine schwerwiegenden technischen Fehler und Score >= 75.review: Score 50-74 oder fehlende wichtige Beweise wie kein ASR-Transkript.fail: Schwerwiegendes technisches Problem, unbrauchbares Audio, schweres Clipping, fehlendes Audio oder Score < 50.
Der Score ist ein gewichtetes Evaluierungssignal, keine Grundwahrheit:
0.35 affect_match + 0.25 intelligibility + 0.20 prosody + 0.20 technical_quality
Wichtige Grenzen
- Sage nicht, dass die Person oder Persona „traurig/wütend/glücklich ist“. Sage, dass die Wellenform und die verfügbaren Klassifikatoren/Proxys kompatibel oder inkompatibel mit dem angeforderten Ziel sind.
- Sprach-Emotionserkennungsmodelle sind optionale Signale. Wenn nicht verfügbar, gibt dieser Skill dennoch akustische Proxy-Metriken aus und vermerkt
emotion_classifier.available=false. - Exakte Pausen werden nach Möglichkeit aus der Wellenform verifiziert;
pause_after_msin einem Render-Plan ist nur die angeforderte Pause.
Wartung
Führe aus:
./sanity.sh
../agentic-evals/run.sh run fixtures/agentic_eval.json --output /tmp/analyze-chatterbox-emotions-agentic-eval.json