analyze-chatterbox-emotions 是做什麼的?
將生成的 Chatterbox 渲染視為語音品質製品進行評估,而非關於說話者真實情感的主張。
當 Chatterbox 或 Persona Dream 渲染需要證明情感標籤、停頓、語速及音訊品質如預期運作時,使用此技能。
合約
輸入:
./run.sh analyze --audio path/to/render.wav \
--expected-text "可選的原始文字" \
--target-label reassuring \
--target-arousal 0.35 \
--target-valence 0.4 \
--out /tmp/chatterbox_voice_eval.json \
--report /tmp/chatterbox_voice_eval.md
輸出 JSON 架構:analyze_chatterbox_emotions.voice_eval.v1。
評估器報告以下項目:
affect:目標標籤加上聲學喚醒/效價代理及相容性評分。prosody:時長、估計語速、RMS/響度代理、F0 估計值(如有)。pauses:靜音比例、偵測到的停頓區段,以及當提供 Chatterbox 渲染計畫或對話輪次時的計畫與測量停頓比較。quality:削波、峰值振幅、不連續性標記及低訊號警告。intelligibility:預期文字的詞數及可選轉錄欄位;此技能不會自行發明 ASR。
可選輸入
--render-plan path.json:Chatterboxrender_plan.json、Persona Dream 日誌收據、動態對話收據,或帶有chatterbox_pause_plan的對話輪次 JSON。--transcript "文字":呼叫者提供的 ASR 轉錄。若省略,則轉錄相似度為null,並列為非主張。
判定
pass:無重大技術失敗且分數 >= 75。review:分數 50-74,或缺少重要證據(如無 ASR 轉錄)。fail:重大技術問題、音訊無法使用、嚴重削波、缺少音訊,或分數 < 50。
分數是加權評估訊號,非真實值:
0.35 affect_match + 0.25 intelligibility + 0.20 prosody + 0.20 technical_quality
重要界限
- 不要說該人物或角色「是悲傷/生氣/快樂」。應說明波形與可用分類器/代理與請求目標相容或不相容。
- 語音情感辨識模型為可選訊號。若不可用,此技能仍會輸出聲學代理指標,並記錄
emotion_classifier.available=false。 - 確切停頓盡可能從波形驗證;渲染計畫中的
pause_after_ms僅為請求的停頓。
維護
執行:
./sanity.sh
../agentic-evals/run.sh run fixtures/agentic_eval.json --output /tmp/analyze-chatterbox-emotions-agentic-eval.json