ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"experiment": "7-6",
|
||||
"status": "complete",
|
||||
"generated_at_utc": "2026-07-30T04:47:32.164712+00:00",
|
||||
"run_dir": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730",
|
||||
"git_commit": "f119cf510f3746cd5d071d0bce0051617f02f163",
|
||||
"command": "GEMINI_API_KEY= OPENROUTER_API_KEY= python demo.py --providers openai,fishaudio --gemini --limit 4 --output validation/mistral_multimodal_20260730",
|
||||
"status_reasons": [
|
||||
"Eight of eight cells completed across two real synthesis providers and four challenge texts. Every cell supplied a content-hashed candidate MP3 and the same content-hashed real reference MP3 to Mistral voxtral-small-latest.",
|
||||
"The judge returned all four manuscript rubric dimensions as integers in [1,5]. The structured completion gates recompute to manuscript_core_complete=true.",
|
||||
"Synthesis audio was retained from the preceding real provider run rather than regenerated under the currently exhausted OpenAI account. synthesis_source_results.json independently records the same eight audio hashes and shows those cells had reached the earlier multimodal-judge stage."
|
||||
],
|
||||
"provider_receipt_count": 8,
|
||||
"inputs": [
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/config.py",
|
||||
"bytes": 8642,
|
||||
"sha256": "891396771cd7beb32ab8e4b316f9a6f73683951e0327dcae6504d858ffd92ba1"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/demo.py",
|
||||
"bytes": 17662,
|
||||
"sha256": "75260a454a3425b749cc294aad87cd4751ef8a9c6882aae1dd577f6a121e38b1"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/pipeline.py",
|
||||
"bytes": 32401,
|
||||
"sha256": "0815da5ff74acd099a189a097a9a1e1aa02ade2e22ba230a2245b021374eb901"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/synthesis_source_results.json",
|
||||
"bytes": 7525,
|
||||
"sha256": "965ecf983521894175404106108d4c32ba8c9ff97a2ae5f740af679d04d204d8"
|
||||
},
|
||||
{
|
||||
"path": "chapter9/controllable-tts/reference_audio/neutral_normal_formal.mp3",
|
||||
"bytes": 73977,
|
||||
"sha256": "2cf4c64bb8222399ab54c63cc41049c572ea5f1b819ffdcbc496014daae004c0"
|
||||
}
|
||||
],
|
||||
"artifacts": [
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/tts1-alloy-1.0__num.mp3",
|
||||
"bytes": 132960,
|
||||
"sha256": "954eca94164d5af7d4a849def397e16a192d22a86168fab86f76ccd2443fb3ed"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/tts1-alloy-1.0__polyphone.mp3",
|
||||
"bytes": 130560,
|
||||
"sha256": "fa6e6ca29a3d17d33167c04c32b132d6aee2cb406d2acbf7bbeb13529af98abb"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/tts1-alloy-1.0__long.mp3",
|
||||
"bytes": 273600,
|
||||
"sha256": "c04786022e111c49f635eb361cb4cae3b786334291af86f7f36e69fff7909d1a"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/tts1-alloy-1.0__emotion.mp3",
|
||||
"bytes": 116160,
|
||||
"sha256": "86215ce027003e1b0a721545b594ef0325745738a46bbf927a7843da3a15b514"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/fishaudio-s1-clone__num.mp3",
|
||||
"bytes": 101981,
|
||||
"sha256": "6e9717e58f422db10b8e9538aa3812de456a1dde4bd9028fde928c2eaac42ad3"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/fishaudio-s1-clone__polyphone.mp3",
|
||||
"bytes": 95293,
|
||||
"sha256": "6bff6109ec7682f85680d8b60ea58dd48fbe5b3eeda59fb326d2288d250c85b5"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/fishaudio-s1-clone__long.mp3",
|
||||
"bytes": 206052,
|
||||
"sha256": "89542f05312bac767d5151f7552d0c75065cc7ecdf739dcc180b3c92a67b21c5"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/fishaudio-s1-clone__emotion.mp3",
|
||||
"bytes": 104488,
|
||||
"sha256": "81608431645b08be6bf7171dbb250f391b1ba7f5714d535c0e2ce323d7f6ca29"
|
||||
},
|
||||
{
|
||||
"path": "chapter7/tts-quality-eval/validation/mistral_multimodal_20260730/results.json",
|
||||
"bytes": 12890,
|
||||
"sha256": "9d5ae20c9fb9852882732bdc73d7dc78714f7ad5e0025574f90b8584b2841b86"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,384 @@
|
||||
{
|
||||
"schema_version": "2.0",
|
||||
"experiment": "7-6",
|
||||
"generated_at_utc": "2026-07-30T04:47:32.164712+00:00",
|
||||
"command_scope": {
|
||||
"providers": [
|
||||
"fishaudio",
|
||||
"openai"
|
||||
],
|
||||
"configurations": [
|
||||
{
|
||||
"name": "tts1-alloy-1.0",
|
||||
"provider": "openai",
|
||||
"model": "tts-1",
|
||||
"voice": "alloy",
|
||||
"speed": 1.0
|
||||
},
|
||||
{
|
||||
"name": "fishaudio-s1-clone",
|
||||
"provider": "fishaudio",
|
||||
"model": "s1",
|
||||
"voice": "6df3c1e14c9440e9ac978556536bf116",
|
||||
"speed": 1.0
|
||||
}
|
||||
],
|
||||
"corpus_ids": [
|
||||
"num",
|
||||
"polyphone",
|
||||
"long",
|
||||
"emotion"
|
||||
],
|
||||
"expected_records": 8,
|
||||
"direct_audio_judge": true,
|
||||
"optional_asr_enabled": false
|
||||
},
|
||||
"reference_audio": {
|
||||
"path": "../../../../chapter9/controllable-tts/reference_audio/neutral_normal_formal.mp3",
|
||||
"sha256": "2cf4c64bb8222399ab54c63cc41049c572ea5f1b819ffdcbc496014daae004c0"
|
||||
},
|
||||
"rubric_dimensions": [
|
||||
"准确性",
|
||||
"自然度",
|
||||
"情感表达",
|
||||
"音色一致性"
|
||||
],
|
||||
"completion": {
|
||||
"successful_records": 8,
|
||||
"direct_audio_four_dimension_records": 8,
|
||||
"expected_records": 8,
|
||||
"all_cells_complete": true,
|
||||
"multi_provider": true,
|
||||
"manuscript_core_complete": true
|
||||
},
|
||||
"records": [
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "num",
|
||||
"challenge": "数字/百分比/日期",
|
||||
"provider": "openai",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "tts1-alloy-1.0__num.mp3",
|
||||
"audio_sha256": "954eca94164d5af7d4a849def397e16a192d22a86168fab86f76ccd2443fb3ed",
|
||||
"audio_bytes": 132960,
|
||||
"duration": 6.648,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.061371841155235,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 3,
|
||||
"音色一致性": 2
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音准确无误地朗读了原文,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿,特别是在数字和百分点的表达上。",
|
||||
"情感表达": "合成语音的语调和语速基本符合中性情感,但缺乏参考说话人语音中的自然感和情感表达。",
|
||||
"音色一致性": "合成语音的音色与参考说话人语音存在明显差异,音色不一致。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "polyphone",
|
||||
"challenge": "多音字(行/长/重/还)",
|
||||
"provider": "openai",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "tts1-alloy-1.0__polyphone.mp3",
|
||||
"audio_sha256": "fa6e6ca29a3d17d33167c04c32b132d6aee2cb406d2acbf7bbeb13529af98abb",
|
||||
"audio_bytes": 130560,
|
||||
"duration": 6.528,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.28921568627451,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音与原文完全一致,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿和重音。",
|
||||
"情感表达": "语调和语速基本符合中性情感,但强调稍显不足。",
|
||||
"音色一致性": "合成语音的音色与参考说话人有一定差异,但总体还算接近。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "long",
|
||||
"challenge": "长句/新闻文体",
|
||||
"provider": "openai",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "tts1-alloy-1.0__long.mp3",
|
||||
"audio_sha256": "c04786022e111c49f635eb361cb4cae3b786334291af86f7f36e69fff7909d1a",
|
||||
"audio_bytes": 273600,
|
||||
"duration": 13.68,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.45906432748538,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音与原文完全一致,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿和重音。",
|
||||
"情感表达": "语调和语速基本符合中性情感,但强调不够明显。",
|
||||
"音色一致性": "合成语音的音色与参考说话人有一些差异,但总体还算接近。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "emotion",
|
||||
"challenge": "专有名词 + 感叹情感",
|
||||
"provider": "openai",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "tts1-alloy-1.0__emotion.mp3",
|
||||
"audio_sha256": "86215ce027003e1b0a721545b594ef0325745738a46bbf927a7843da3a15b514",
|
||||
"audio_bytes": 116160,
|
||||
"duration": 5.808,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 5.3374655647382925,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "没有漏读、错读、添读、数字、专名和多音字。",
|
||||
"自然度": "有一些机器感,但总体流畅度较好。",
|
||||
"情感表达": "语调和语速表现出兴奋,但强调不够明显。",
|
||||
"音色一致性": "音色与参考说话人有一些差异,但总体相似。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "num",
|
||||
"challenge": "数字/百分比/日期",
|
||||
"provider": "fishaudio",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "fishaudio-s1-clone__num.mp3",
|
||||
"audio_sha256": "6e9717e58f422db10b8e9538aa3812de456a1dde4bd9028fde928c2eaac42ad3",
|
||||
"audio_bytes": 101981,
|
||||
"duration": 6.373813,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.236082859663439,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音准确无误地朗读了原文,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿和重音。",
|
||||
"情感表达": "合成语音的语调和语速基本符合中性情感,但强调不够明显。",
|
||||
"音色一致性": "合成语音的音色与参考说话人有一些差异,但总体还算相似。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "polyphone",
|
||||
"challenge": "多音字(行/长/重/还)",
|
||||
"provider": "fishaudio",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "fishaudio-s1-clone__polyphone.mp3",
|
||||
"audio_sha256": "6bff6109ec7682f85680d8b60ea58dd48fbe5b3eeda59fb326d2288d250c85b5",
|
||||
"audio_bytes": 95293,
|
||||
"duration": 5.955813,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.701289311803443,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音与原文完全一致,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿和重音。",
|
||||
"情感表达": "语调和语速基本符合中性情感,但强调稍显不足。",
|
||||
"音色一致性": "合成语音的音色与参考说话人有一定差异,但总体还算接近。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "long",
|
||||
"challenge": "长句/新闻文体",
|
||||
"provider": "fishaudio",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "fishaudio-s1-clone__long.mp3",
|
||||
"audio_sha256": "89542f05312bac767d5151f7552d0c75065cc7ecdf739dcc180b3c92a67b21c5",
|
||||
"audio_bytes": 206052,
|
||||
"duration": 12.87825,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.7366684137984585,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "合成语音与原文完全一致,没有漏读、错读、添读、数字、专名和多音字的问题。",
|
||||
"自然度": "合成语音流畅度较好,但有一些不自然的停顿和重音。",
|
||||
"情感表达": "合成语音的语调和语速基本符合中性情感,但缺乏一些细微的情感变化。",
|
||||
"音色一致性": "合成语音的音色与参考说话人有一些差异,但总体上还算相似。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "emotion",
|
||||
"challenge": "专有名词 + 感叹情感",
|
||||
"provider": "fishaudio",
|
||||
"ok": true,
|
||||
"error": null,
|
||||
"audio_path": "fishaudio-s1-clone__emotion.mp3",
|
||||
"audio_sha256": "81608431645b08be6bf7171dbb250f391b1ba7f5714d535c0e2ce323d7f6ca29",
|
||||
"audio_bytes": 104488,
|
||||
"duration": 6.5305,
|
||||
"hypothesis": null,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"speed": 4.746956588316362,
|
||||
"scores": {
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
"reasons": {
|
||||
"准确性": "没有漏读、错读、添读、数字、专名和多音字。",
|
||||
"自然度": "有轻微的机器感,但总体流畅度较好。",
|
||||
"情感表达": "语调和语速表现出兴奋,但强调稍显不足。",
|
||||
"音色一致性": "音色与参考说话人有明显差异。"
|
||||
},
|
||||
"judge_model": "mistral/voxtral-small-latest",
|
||||
"evidence_mode": "direct-audio-with-reference",
|
||||
"judge_provider_attempts": [
|
||||
{
|
||||
"provider": "Mistral Voxtral API",
|
||||
"model": "voxtral-small-latest",
|
||||
"status": "ok",
|
||||
"attempts": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"summary": [
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"n_ok": 4,
|
||||
"n": 4,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 4,
|
||||
"音色一致性": 3
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"n_ok": 4,
|
||||
"n": 4,
|
||||
"cer": null,
|
||||
"asr_accuracy": null,
|
||||
"准确性": 5,
|
||||
"自然度": 4,
|
||||
"情感表达": 3.75,
|
||||
"音色一致性": 2.75
|
||||
}
|
||||
]
|
||||
}
|
||||
+208
@@ -0,0 +1,208 @@
|
||||
{
|
||||
"schema_version": "2.0",
|
||||
"experiment": "7-6",
|
||||
"generated_at_utc": "2026-07-30T04:17:40.702999+00:00",
|
||||
"command_scope": {
|
||||
"providers": [
|
||||
"fishaudio",
|
||||
"openai"
|
||||
],
|
||||
"configurations": [
|
||||
{
|
||||
"name": "tts1-alloy-1.0",
|
||||
"provider": "openai",
|
||||
"model": "tts-1",
|
||||
"voice": "alloy",
|
||||
"speed": 1.0
|
||||
},
|
||||
{
|
||||
"name": "fishaudio-s1-clone",
|
||||
"provider": "fishaudio",
|
||||
"model": "s1",
|
||||
"voice": "6df3c1e14c9440e9ac978556536bf116",
|
||||
"speed": 1.0
|
||||
}
|
||||
],
|
||||
"corpus_ids": [
|
||||
"num",
|
||||
"polyphone",
|
||||
"long",
|
||||
"emotion",
|
||||
"sad",
|
||||
"question"
|
||||
],
|
||||
"expected_records": 12,
|
||||
"direct_audio_judge": true,
|
||||
"optional_asr_enabled": false
|
||||
},
|
||||
"reference_audio": {
|
||||
"path": "../../../chapter9/controllable-tts/reference_audio/neutral_normal_formal.mp3",
|
||||
"sha256": "2cf4c64bb8222399ab54c63cc41049c572ea5f1b819ffdcbc496014daae004c0"
|
||||
},
|
||||
"rubric_dimensions": [
|
||||
"准确性",
|
||||
"自然度",
|
||||
"情感表达",
|
||||
"音色一致性"
|
||||
],
|
||||
"completion": {
|
||||
"successful_records": 0,
|
||||
"direct_audio_four_dimension_records": 0,
|
||||
"expected_records": 12,
|
||||
"all_cells_complete": false,
|
||||
"multi_provider": true,
|
||||
"manuscript_core_complete": false
|
||||
},
|
||||
"records": [
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "num",
|
||||
"challenge": "数字/百分比/日期",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "tts1-alloy-1.0__num.mp3",
|
||||
"audio_sha256": "954eca94164d5af7d4a849def397e16a192d22a86168fab86f76ccd2443fb3ed",
|
||||
"audio_bytes": 132960,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "polyphone",
|
||||
"challenge": "多音字(行/长/重/还)",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "tts1-alloy-1.0__polyphone.mp3",
|
||||
"audio_sha256": "fa6e6ca29a3d17d33167c04c32b132d6aee2cb406d2acbf7bbeb13529af98abb",
|
||||
"audio_bytes": 130560,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "long",
|
||||
"challenge": "长句/新闻文体",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "tts1-alloy-1.0__long.mp3",
|
||||
"audio_sha256": "c04786022e111c49f635eb361cb4cae3b786334291af86f7f36e69fff7909d1a",
|
||||
"audio_bytes": 273600,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "emotion",
|
||||
"challenge": "专有名词 + 感叹情感",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "tts1-alloy-1.0__emotion.mp3",
|
||||
"audio_sha256": "86215ce027003e1b0a721545b594ef0325745738a46bbf927a7843da3a15b514",
|
||||
"audio_bytes": 116160,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "sad",
|
||||
"challenge": "悲伤情感/低语速低语调",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RateLimitError: Error code: 429 - {'error': {'message': 'You have no credits remaining. Add credits to continue using the API at https://platform.openai.com/settings/organization/billing/.', 'type': 'insufficient_quota', 'param': None, 'code': 'credit_balance_exhausted'}}",
|
||||
"failed_stage": "synthesis"
|
||||
},
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"sample": "question",
|
||||
"challenge": "对话文体/疑问句升调",
|
||||
"provider": "openai",
|
||||
"ok": false,
|
||||
"error": "RateLimitError: Error code: 429 - {'error': {'message': 'You have no credits remaining. Add credits to continue using the API at https://platform.openai.com/settings/organization/billing/.', 'type': 'insufficient_quota', 'param': None, 'code': 'credit_balance_exhausted'}}",
|
||||
"failed_stage": "synthesis"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "num",
|
||||
"challenge": "数字/百分比/日期",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__num.mp3",
|
||||
"audio_sha256": "6e9717e58f422db10b8e9538aa3812de456a1dde4bd9028fde928c2eaac42ad3",
|
||||
"audio_bytes": 101981,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "polyphone",
|
||||
"challenge": "多音字(行/长/重/还)",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__polyphone.mp3",
|
||||
"audio_sha256": "6bff6109ec7682f85680d8b60ea58dd48fbe5b3eeda59fb326d2288d250c85b5",
|
||||
"audio_bytes": 95293,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "long",
|
||||
"challenge": "长句/新闻文体",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__long.mp3",
|
||||
"audio_sha256": "89542f05312bac767d5151f7552d0c75065cc7ecdf739dcc180b3c92a67b21c5",
|
||||
"audio_bytes": 206052,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "emotion",
|
||||
"challenge": "专有名词 + 感叹情感",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__emotion.mp3",
|
||||
"audio_sha256": "81608431645b08be6bf7171dbb250f391b1ba7f5714d535c0e2ce323d7f6ca29",
|
||||
"audio_bytes": 104488,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "sad",
|
||||
"challenge": "悲伤情感/低语速低语调",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__sad.mp3",
|
||||
"audio_sha256": "bf16b438885b651681197f15ad969a447b8b5cf781a298600580af5bea049f4c",
|
||||
"audio_bytes": 87352,
|
||||
"failed_stage": "multimodal_judge"
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"sample": "question",
|
||||
"challenge": "对话文体/疑问句升调",
|
||||
"provider": "fishaudio",
|
||||
"ok": false,
|
||||
"error": "RuntimeError: OpenRouter audio HTTP 401: {\"error\":{\"message\":\"User not found.\",\"code\":401}}",
|
||||
"audio_path": "fishaudio-s1-clone__question.mp3",
|
||||
"audio_sha256": "1d5f16e92d66e1855c57b264e3ec1ddaf9e09aa9cfedca38fb5dfd623f829ad3",
|
||||
"audio_bytes": 76067,
|
||||
"failed_stage": "multimodal_judge"
|
||||
}
|
||||
],
|
||||
"summary": [
|
||||
{
|
||||
"config": "tts1-alloy-1.0",
|
||||
"n_ok": 0,
|
||||
"n": 6
|
||||
},
|
||||
{
|
||||
"config": "fishaudio-s1-clone",
|
||||
"n_ok": 0,
|
||||
"n": 6
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user