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:
+631
@@ -0,0 +1,631 @@
|
||||
{
|
||||
"schema_version": 2,
|
||||
"experiment": "10-6",
|
||||
"generated_at": "2026-08-01T04:33:55+0000",
|
||||
"execution_mode": "simulated_user",
|
||||
"acceptance_path": true,
|
||||
"end_to_end_status": "pass",
|
||||
"players": 8,
|
||||
"user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_players": [],
|
||||
"simulated_user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_role_randomized_to": null,
|
||||
"simulated_user_role_randomized_to": "村民",
|
||||
"role_counts": {
|
||||
"狼人": 2,
|
||||
"预言家": 1,
|
||||
"女巫": 1,
|
||||
"村民": 4
|
||||
},
|
||||
"completed_day_night_vote_cycles": 3,
|
||||
"winner": "好人阵营",
|
||||
"information_isolation_pass": true,
|
||||
"strategy_audit": {
|
||||
"criteria": {
|
||||
"werewolf_concealment": {
|
||||
"status": "pass",
|
||||
"evidence": "P2: \"P1出局了,有点可惜。P4昨天验了P1是好人,结果P1还是走了。这说明P4的预言家身份可能确实是真的。我现在有点迷茫,大家有什么看法吗?\""
|
||||
},
|
||||
"seer_timing_and_evidence": {
|
||||
"status": "pass",
|
||||
"evidence": "P4: \"我是预言家,昨晚查验了P1,P1是好人。平安夜很正常,希望大家多发言,不要藏着掖着。\""
|
||||
},
|
||||
"villager_logical_reasoning": {
|
||||
"status": "fail",
|
||||
"evidence": "P1: \"action\": \"vote\", \"target\": \"P4\""
|
||||
},
|
||||
"role_consistency": {
|
||||
"status": "pass",
|
||||
"evidence": "P6: \"action\": \"heal\", \"target\": \"P1\""
|
||||
}
|
||||
},
|
||||
"overall_pass": false,
|
||||
"provider": "openrouter",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"model_overall_pass_claim": false,
|
||||
"schema_valid": true,
|
||||
"validation_errors": []
|
||||
},
|
||||
"strategy_audit_pass": false,
|
||||
"voice_events": [
|
||||
{
|
||||
"sequence": 1,
|
||||
"monotonic": 6659830.16557793,
|
||||
"wall_time": "2026-08-01T04:33:10+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge-private",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.063,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r0_judge-private_1.wav",
|
||||
"audio_bytes": 290926,
|
||||
"audio_sha256": "4072ec5c58cccd2053867e5fa15cff4f0dbe2d66497a6818cc0a72c22c6e49d0"
|
||||
},
|
||||
{
|
||||
"sequence": 2,
|
||||
"monotonic": 6659834.233251573,
|
||||
"wall_time": "2026-08-01T04:33:15+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.075,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_2.wav",
|
||||
"audio_bytes": 323170,
|
||||
"audio_sha256": "ad0abe1d2b2c094ea011233bb22a34482fc8bb74029a018fb679257c931668b0"
|
||||
},
|
||||
{
|
||||
"sequence": 3,
|
||||
"monotonic": 6659835.188596986,
|
||||
"wall_time": "2026-08-01T04:33:15+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "speak_publicly",
|
||||
"arguments": {
|
||||
"utterance": "It's a quiet start to the game with no one out. This means the wolves are either very careful or there's a strong protective role. I'll be listening closely to everyone's first statements."
|
||||
},
|
||||
"response_id": "gen-1785558795-x5xNY3w9a06bTDTdJvSM",
|
||||
"requested_model": "google/gemini-2.5-flash",
|
||||
"provider_reported_model": "google/gemini-2.5-flash",
|
||||
"usage": {
|
||||
"completion_tokens": 50,
|
||||
"prompt_tokens": 333,
|
||||
"total_tokens": 383,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0002249,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0002249,
|
||||
"upstream_inference_prompt_cost": 9.99e-05,
|
||||
"upstream_inference_completions_cost": 0.000125
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 4,
|
||||
"monotonic": 6659835.270335359,
|
||||
"wall_time": "2026-08-01T04:33:16+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.079,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P1_4.wav",
|
||||
"audio_bytes": 592094,
|
||||
"audio_sha256": "e15a7521886b8c41f62c1cd0761cad11bd95c9397c04315ecb02409dad8ce355"
|
||||
},
|
||||
{
|
||||
"sequence": 5,
|
||||
"monotonic": 6659836.571264422,
|
||||
"wall_time": "2026-08-01T04:33:17+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785558796-Z2MMwFI1oqcdDkcUT0gA",
|
||||
"usage": {
|
||||
"completion_tokens": 44,
|
||||
"prompt_tokens": 363,
|
||||
"total_tokens": 407,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 325,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0004464,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0004464,
|
||||
"upstream_inference_prompt_cost": 0.0003364,
|
||||
"upstream_inference_completions_cost": 0.00011
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.3,
|
||||
"source_audio_sha256": "e15a7521886b8c41f62c1cd0761cad11bd95c9397c04315ecb02409dad8ce355",
|
||||
"transcript": "It's a quiet start to the game with no one out. This means the wolves are either very careful or there's a strong protective role. I'll be listening closely to everyone's first statements."
|
||||
},
|
||||
{
|
||||
"sequence": 6,
|
||||
"monotonic": 6659837.423200945,
|
||||
"wall_time": "2026-08-01T04:33:18+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.075,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P2_6.wav",
|
||||
"audio_bytes": 728412,
|
||||
"audio_sha256": "b8e637c51cd20248934af7eb7fba7ddb59b963612cf539472bfa1cc0cd024146"
|
||||
},
|
||||
{
|
||||
"sequence": 7,
|
||||
"monotonic": 6659838.175782725,
|
||||
"wall_time": "2026-08-01T04:33:18+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.066,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P3_7.wav",
|
||||
"audio_bytes": 713980,
|
||||
"audio_sha256": "23904a77895ae9d1ea5e4c8fa1e5634ade79c6aef7ad9c70e24dc77953a60633"
|
||||
},
|
||||
{
|
||||
"sequence": 8,
|
||||
"monotonic": 6659838.90640096,
|
||||
"wall_time": "2026-08-01T04:33:19+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P4",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P4_8.wav",
|
||||
"audio_bytes": 770588,
|
||||
"audio_sha256": "403134dd9ccdb8f189d2d173d16f3b3e4c4c4bf616e01065b5aa2ee123fc6900"
|
||||
},
|
||||
{
|
||||
"sequence": 9,
|
||||
"monotonic": 6659839.678299638,
|
||||
"wall_time": "2026-08-01T04:33:20+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P5",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.074,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P5_9.wav",
|
||||
"audio_bytes": 956542,
|
||||
"audio_sha256": "cf5c5c1b26f4cdb884b1054e5ac2172c6b81ec620a7dc2e587b5ffbd72b834ef"
|
||||
},
|
||||
{
|
||||
"sequence": 10,
|
||||
"monotonic": 6659840.533715743,
|
||||
"wall_time": "2026-08-01T04:33:21+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.092,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P6_10.wav",
|
||||
"audio_bytes": 922906,
|
||||
"audio_sha256": "55f6f8db90bd1cc487e3febb908a306d008a1b5af5917b21f7361e83ed9aa5a8"
|
||||
},
|
||||
{
|
||||
"sequence": 11,
|
||||
"monotonic": 6659841.280212561,
|
||||
"wall_time": "2026-08-01T04:33:22+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.071,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P7_11.wav",
|
||||
"audio_bytes": 729436,
|
||||
"audio_sha256": "ba43febf7aa2134c120eb2db5d345046232fb8bd431c0aee5410659c437437fd"
|
||||
},
|
||||
{
|
||||
"sequence": 12,
|
||||
"monotonic": 6659842.26070054,
|
||||
"wall_time": "2026-08-01T04:33:23+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.071,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P8_12.wav",
|
||||
"audio_bytes": 864610,
|
||||
"audio_sha256": "653a1512a5ad1278c8da9bf027443ebcac58a21b37874b48ff9b61a37add3a9d"
|
||||
},
|
||||
{
|
||||
"sequence": 13,
|
||||
"monotonic": 6659843.83486303,
|
||||
"wall_time": "2026-08-01T04:33:24+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "choose_player",
|
||||
"arguments": {
|
||||
"reason": "P4声称自己是预言家,并且查验P1是好人。作为P1村民身份的我,知道P4的查验结果是正确的。但是,作为村民,我不能让狼人知道我掌握了这些信息。如果P4真的是预言家,他应该通过逻辑推理来找出狼人,而不是直接暴露自己的身份。他急于跳预言家,有可能是狼人悍跳。我先票出P4,如果P4是真预言家,那么他被出局后,狼人会继续作恶。如果P4是狼人,那么好人阵营就少了一个敌人。",
|
||||
"target": "P4"
|
||||
},
|
||||
"response_id": "gen-1785558803-pBfinsZ7kICKFK3TyU8m",
|
||||
"requested_model": "google/gemini-2.5-flash",
|
||||
"provider_reported_model": "google/gemini-2.5-flash",
|
||||
"usage": {
|
||||
"completion_tokens": 146,
|
||||
"prompt_tokens": 675,
|
||||
"total_tokens": 821,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0005675,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0005675,
|
||||
"upstream_inference_prompt_cost": 0.0002025,
|
||||
"upstream_inference_completions_cost": 0.000365
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 14,
|
||||
"monotonic": 6659843.893408566,
|
||||
"wall_time": "2026-08-01T04:33:24+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.056,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P1_14.wav",
|
||||
"audio_bytes": 88244,
|
||||
"audio_sha256": "880288b17ec7695536592b91dbd83621d789d4a441e926f5312291a56c131188"
|
||||
},
|
||||
{
|
||||
"sequence": 15,
|
||||
"monotonic": 6659844.775011441,
|
||||
"wall_time": "2026-08-01T04:33:25+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785558804-iwPhaJmlnUg74nxRTF4w",
|
||||
"usage": {
|
||||
"completion_tokens": 5,
|
||||
"prompt_tokens": 88,
|
||||
"total_tokens": 93,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 50,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 7.39e-05,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 7.39e-05,
|
||||
"upstream_inference_prompt_cost": 6.14e-05,
|
||||
"upstream_inference_completions_cost": 1.25e-05
|
||||
}
|
||||
},
|
||||
"latency_seconds": 0.881,
|
||||
"source_audio_sha256": "880288b17ec7695536592b91dbd83621d789d4a441e926f5312291a56c131188",
|
||||
"transcript": "I choose player four."
|
||||
},
|
||||
{
|
||||
"sequence": 16,
|
||||
"monotonic": 6659851.173196478,
|
||||
"wall_time": "2026-08-01T04:33:31+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.068,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_16.wav",
|
||||
"audio_bytes": 1025148,
|
||||
"audio_sha256": "015f4cfa86113ce26137a1c852dbdd9f9b16073b4e5cbf09f969bd77c794e8bb"
|
||||
},
|
||||
{
|
||||
"sequence": 17,
|
||||
"monotonic": 6659853.731666616,
|
||||
"wall_time": "2026-08-01T04:33:34+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.061,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_17.wav",
|
||||
"audio_bytes": 304082,
|
||||
"audio_sha256": "1cbcec8d528486b50106d7cd00bed6a36e37a858dc391336edd83c113a1177de"
|
||||
},
|
||||
{
|
||||
"sequence": 18,
|
||||
"monotonic": 6659854.58235228,
|
||||
"wall_time": "2026-08-01T04:33:35+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.086,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P2_18.wav",
|
||||
"audio_bytes": 1246682,
|
||||
"audio_sha256": "abf6093c3110e3f703cc3041c24d9d96abade651911e7f46815514c455b85870"
|
||||
},
|
||||
{
|
||||
"sequence": 19,
|
||||
"monotonic": 6659855.374771954,
|
||||
"wall_time": "2026-08-01T04:33:36+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.064,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P3_19.wav",
|
||||
"audio_bytes": 760284,
|
||||
"audio_sha256": "e440e40888f7c32e114dcc3f4dd4d093ea51939234c077026b5dfebcc2989d3a"
|
||||
},
|
||||
{
|
||||
"sequence": 20,
|
||||
"monotonic": 6659856.151835248,
|
||||
"wall_time": "2026-08-01T04:33:36+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P5",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.074,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P5_20.wav",
|
||||
"audio_bytes": 993010,
|
||||
"audio_sha256": "9970b3340ddbbaa73f270439755953dd19c869baf5f00d03fca8d99ed6e35fb3"
|
||||
},
|
||||
{
|
||||
"sequence": 21,
|
||||
"monotonic": 6659857.087746971,
|
||||
"wall_time": "2026-08-01T04:33:37+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.075,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P6_21.wav",
|
||||
"audio_bytes": 1166004,
|
||||
"audio_sha256": "c64a0cdd5e74d70eb6f844fe23890c7c13d30a233375b1d4402943e8110e3eb6"
|
||||
},
|
||||
{
|
||||
"sequence": 22,
|
||||
"monotonic": 6659858.029585563,
|
||||
"wall_time": "2026-08-01T04:33:38+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.071,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P7_22.wav",
|
||||
"audio_bytes": 885312,
|
||||
"audio_sha256": "f6d8c8e2da7e2f31b58e87bbf10fbfb86bc3d52d2c2978669d856bff394ac52f"
|
||||
},
|
||||
{
|
||||
"sequence": 23,
|
||||
"monotonic": 6659858.787386592,
|
||||
"wall_time": "2026-08-01T04:33:39+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.072,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P8_23.wav",
|
||||
"audio_bytes": 914014,
|
||||
"audio_sha256": "d4d5c1e1ab515c4f774cacd1fd0c17881c64b840eccbdf077a96b2a5e98f7b1e"
|
||||
},
|
||||
{
|
||||
"sequence": 24,
|
||||
"monotonic": 6659864.12203645,
|
||||
"wall_time": "2026-08-01T04:33:44+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.064,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_24.wav",
|
||||
"audio_bytes": 747880,
|
||||
"audio_sha256": "8ff7f49e66d4e6d92e35a1123d9cd65bf5a61b7a3da5925b8eec2938c561a1f3"
|
||||
},
|
||||
{
|
||||
"sequence": 25,
|
||||
"monotonic": 6659865.992012885,
|
||||
"wall_time": "2026-08-01T04:33:46+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.049,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_judge_25.wav",
|
||||
"audio_bytes": 301324,
|
||||
"audio_sha256": "0794c0baf5b6850549e0cfc78980f8b3bc0e43f252e3ab4ff5ab62d83d1c1ef0"
|
||||
},
|
||||
{
|
||||
"sequence": 26,
|
||||
"monotonic": 6659866.904763845,
|
||||
"wall_time": "2026-08-01T04:33:47+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P5",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.065,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_P5_26.wav",
|
||||
"audio_bytes": 836698,
|
||||
"audio_sha256": "6233184105402a4e737d2523dc83403adf3b6c4864bbf4b2e347f2f4736e645a"
|
||||
},
|
||||
{
|
||||
"sequence": 27,
|
||||
"monotonic": 6659867.763743965,
|
||||
"wall_time": "2026-08-01T04:33:48+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.085,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_P6_27.wav",
|
||||
"audio_bytes": 760644,
|
||||
"audio_sha256": "80f4af4a5b30058d2083120ab0f0c2f97b5f6e3eeb2f9aa59006a068e7bfa4ee"
|
||||
},
|
||||
{
|
||||
"sequence": 28,
|
||||
"monotonic": 6659868.582208743,
|
||||
"wall_time": "2026-08-01T04:33:49+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.079,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_P7_28.wav",
|
||||
"audio_bytes": 1011036,
|
||||
"audio_sha256": "6a55092cd1725488ea0edcfb13911f02bf27187559384b7b524efece5bb8ad4f"
|
||||
},
|
||||
{
|
||||
"sequence": 29,
|
||||
"monotonic": 6659869.310455916,
|
||||
"wall_time": "2026-08-01T04:33:50+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.086,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_P8_29.wav",
|
||||
"audio_bytes": 731924,
|
||||
"audio_sha256": "8a2fd440211c3158cc6f25cfa28fce33e29bb7d5ea91af16169167432f196da3"
|
||||
},
|
||||
{
|
||||
"sequence": 30,
|
||||
"monotonic": 6659872.8176404,
|
||||
"wall_time": "2026-08-01T04:33:53+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.084,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_judge_30.wav",
|
||||
"audio_bytes": 769880,
|
||||
"audio_sha256": "1d5c830540a69028e80f039f3b2bc218066c4b79b9c1076701e7b5d8f98f229f"
|
||||
},
|
||||
{
|
||||
"sequence": 31,
|
||||
"monotonic": 6659872.891453664,
|
||||
"wall_time": "2026-08-01T04:33:53+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r3_judge_31.wav",
|
||||
"audio_bytes": 274520,
|
||||
"audio_sha256": "24a4432aee15b31513a2f4368bdc15b55433dfd35ff6b2c37559f2f6f22f9c2b"
|
||||
}
|
||||
],
|
||||
"voice_has_asr": true,
|
||||
"voice_has_tts": true,
|
||||
"simulator_llm_tool_calls": 2,
|
||||
"simulator_audio_roundtrips": 2,
|
||||
"barge_in_events": 0,
|
||||
"gates": {
|
||||
"exact_6_to_8_player_role_roster": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_user_seat": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_authorized_human_participant": {
|
||||
"status": "not_applicable"
|
||||
},
|
||||
"one_llm_user_simulator": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_user_input_asr": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_ai_and_judge_tts": {
|
||||
"status": "pass"
|
||||
},
|
||||
"llm_tool_to_audio_to_asr_boundary": {
|
||||
"status": "pass",
|
||||
"tool_calls": 2,
|
||||
"audio_roundtrips": 2
|
||||
},
|
||||
"three_complete_cycles": {
|
||||
"status": "pass",
|
||||
"observed": 3
|
||||
},
|
||||
"information_isolation": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_llm_strategy_acceptance": {
|
||||
"status": "fail"
|
||||
},
|
||||
"winner_determined_by_game_rule": {
|
||||
"status": "pass"
|
||||
}
|
||||
},
|
||||
"overall_status": "incomplete"
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"source_report": "validation/runs/exp10-6-simulated-user-openrouter-20260801-v2/acceptance_report.json",
|
||||
"source_report_sha256": "356dbdf05b42b66583a18c1261f65fe4ccdb5f40f56d72eee1850bedf4ac56c6",
|
||||
"simulator_tool_events_checked": 2,
|
||||
"strict_audio_action_boundary": "pass",
|
||||
"errors": []
|
||||
}
|
||||
+714
@@ -0,0 +1,714 @@
|
||||
{
|
||||
"schema_version": 2,
|
||||
"experiment": "10-6",
|
||||
"generated_at": "2026-08-01T04:37:51+0000",
|
||||
"execution_mode": "simulated_user",
|
||||
"acceptance_path": true,
|
||||
"end_to_end_status": "pass",
|
||||
"players": 8,
|
||||
"user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_players": [],
|
||||
"simulated_user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_role_randomized_to": null,
|
||||
"simulated_user_role_randomized_to": "村民",
|
||||
"role_counts": {
|
||||
"狼人": 2,
|
||||
"预言家": 1,
|
||||
"女巫": 1,
|
||||
"村民": 4
|
||||
},
|
||||
"completed_day_night_vote_cycles": 2,
|
||||
"winner": "好人阵营",
|
||||
"information_isolation_pass": true,
|
||||
"strategy_audit": {
|
||||
"criteria": {
|
||||
"werewolf_concealment": {
|
||||
"status": "fail",
|
||||
"evidence": "P2说P5被投出去又被刀,这是捏造信息。"
|
||||
},
|
||||
"seer_timing_and_evidence": {
|
||||
"status": "pass",
|
||||
"evidence": "我是预言家,昨晚查验了P1,P1是好人。"
|
||||
},
|
||||
"villager_logical_reasoning": {
|
||||
"status": "pass",
|
||||
"evidence": "P4是目前唯一跳预言家的,且报了P1金水,P5没有明确站边,也没有给出任何有建设性的信息,反而说 '这平安夜有点意思',发言过于随意,有划水嫌疑。"
|
||||
},
|
||||
"role_consistency": {
|
||||
"status": "fail",
|
||||
"evidence": "P2的发言很奇怪,P5昨天是被投票出局的,不是被刀出局。P2说P5被投出去又被刀,这是捏造信息。"
|
||||
}
|
||||
},
|
||||
"overall_pass": false,
|
||||
"provider": "openrouter",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"model_overall_pass_claim": false,
|
||||
"schema_valid": true,
|
||||
"validation_errors": []
|
||||
},
|
||||
"strategy_audit_pass": false,
|
||||
"voice_events": [
|
||||
{
|
||||
"sequence": 1,
|
||||
"monotonic": 6660064.938664906,
|
||||
"wall_time": "2026-08-01T04:37:05+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge-private",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.066,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r0_judge-private_1.wav",
|
||||
"audio_bytes": 290926,
|
||||
"audio_sha256": "4072ec5c58cccd2053867e5fa15cff4f0dbe2d66497a6818cc0a72c22c6e49d0"
|
||||
},
|
||||
{
|
||||
"sequence": 2,
|
||||
"monotonic": 6660069.687056506,
|
||||
"wall_time": "2026-08-01T04:37:10+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_2.wav",
|
||||
"audio_bytes": 323170,
|
||||
"audio_sha256": "ad0abe1d2b2c094ea011233bb22a34482fc8bb74029a018fb679257c931668b0"
|
||||
},
|
||||
{
|
||||
"sequence": 3,
|
||||
"monotonic": 6660071.70736767,
|
||||
"wall_time": "2026-08-01T04:37:12+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "speak_publicly",
|
||||
"arguments": {
|
||||
"utterance": "Good morning everyone. Since it's a peaceful night with no deaths, we need to be extra careful today. I'm a villager looking for evidence to identify the wolves. Let's start by hearing from anyone who has information to share, especially if there are any seers who got results last night."
|
||||
},
|
||||
"response_id": "gen-1785559030-spNZyA0QkdAqVUCAyzRH",
|
||||
"requested_model": "anthropic/claude-sonnet-4",
|
||||
"provider_reported_model": "anthropic/claude-sonnet-4",
|
||||
"usage": {
|
||||
"completion_tokens": 93,
|
||||
"prompt_tokens": 1149,
|
||||
"total_tokens": 1242,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.004842,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.004842,
|
||||
"upstream_inference_prompt_cost": 0.003447,
|
||||
"upstream_inference_completions_cost": 0.001395
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 4,
|
||||
"monotonic": 6660071.786439727,
|
||||
"wall_time": "2026-08-01T04:37:12+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P1_4.wav",
|
||||
"audio_bytes": 943042,
|
||||
"audio_sha256": "25c321db62b76146045007dde047aa9d753a065144f3e156b62c5a4a4010fc69"
|
||||
},
|
||||
{
|
||||
"sequence": 5,
|
||||
"monotonic": 6660073.073498523,
|
||||
"wall_time": "2026-08-01T04:37:13+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785559032-tErOo2DoQoQhH2M1dmHX",
|
||||
"usage": {
|
||||
"completion_tokens": 64,
|
||||
"prompt_tokens": 538,
|
||||
"total_tokens": 602,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 500,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0006714,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0006714,
|
||||
"upstream_inference_prompt_cost": 0.0005114,
|
||||
"upstream_inference_completions_cost": 0.00016
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.286,
|
||||
"source_audio_sha256": "25c321db62b76146045007dde047aa9d753a065144f3e156b62c5a4a4010fc69",
|
||||
"transcript": "Good morning everyone. Since it's a peaceful night with no deaths, we need to be extra careful today. I'm a villager looking for evidence to identify the wolves. Let's start by hearing from anyone who has information to share, especially if there are any seers who got results last night."
|
||||
},
|
||||
{
|
||||
"sequence": 6,
|
||||
"monotonic": 6660073.961132782,
|
||||
"wall_time": "2026-08-01T04:37:14+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.074,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P2_6.wav",
|
||||
"audio_bytes": 907964,
|
||||
"audio_sha256": "1a19837651669d30d773f7f6c5136e31e28504766f162a1acf9e5a88c76a70a5"
|
||||
},
|
||||
{
|
||||
"sequence": 7,
|
||||
"monotonic": 6660074.793108945,
|
||||
"wall_time": "2026-08-01T04:37:15+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.074,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P3_7.wav",
|
||||
"audio_bytes": 913618,
|
||||
"audio_sha256": "acb7323818965eeaa5d27fab666a16679afed28d09e3adafe58e840be2de6928"
|
||||
},
|
||||
{
|
||||
"sequence": 8,
|
||||
"monotonic": 6660075.679470788,
|
||||
"wall_time": "2026-08-01T04:37:16+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P4",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.057,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P4_8.wav",
|
||||
"audio_bytes": 929880,
|
||||
"audio_sha256": "c52b74cfca755abac59489ac2d0594f1dfc1e71c3c53b909965dd452e72a13d6"
|
||||
},
|
||||
{
|
||||
"sequence": 9,
|
||||
"monotonic": 6660076.602908004,
|
||||
"wall_time": "2026-08-01T04:37:17+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P5",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.075,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P5_9.wav",
|
||||
"audio_bytes": 882522,
|
||||
"audio_sha256": "862216fb788092ada3ec5173c3f47906fc4f3e1ba157f4c076a6d1eccac6084f"
|
||||
},
|
||||
{
|
||||
"sequence": 10,
|
||||
"monotonic": 6660077.34997115,
|
||||
"wall_time": "2026-08-01T04:37:18+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P6_10.wav",
|
||||
"audio_bytes": 763248,
|
||||
"audio_sha256": "048178ad618f1cf986fa96ecead02081b4939749d466c6df5c2973fce9040a08"
|
||||
},
|
||||
{
|
||||
"sequence": 11,
|
||||
"monotonic": 6660078.475235486,
|
||||
"wall_time": "2026-08-01T04:37:19+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.076,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P7_11.wav",
|
||||
"audio_bytes": 1061138,
|
||||
"audio_sha256": "d935eb37460712700603b17bc90e7f2f817df54cd2156aab671fb45df7584e9b"
|
||||
},
|
||||
{
|
||||
"sequence": 12,
|
||||
"monotonic": 6660079.383143585,
|
||||
"wall_time": "2026-08-01T04:37:20+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.072,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P8_12.wav",
|
||||
"audio_bytes": 931296,
|
||||
"audio_sha256": "1574dfaea95529d8e30eefad8e58d53ce8d743ada9cbae8a21dc46bc50c0382e"
|
||||
},
|
||||
{
|
||||
"sequence": 13,
|
||||
"monotonic": 6660081.716445442,
|
||||
"wall_time": "2026-08-01T04:37:22+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "choose_player",
|
||||
"arguments": {
|
||||
"target": "none",
|
||||
"reason": "P4跳预言家验我金水,在没有对跳的情况下,我倾向相信P4的身份。其他玩家发言都比较正常,没有明显的狼人破绽。第一天信息有限,不宜盲投,选择弃票观察。"
|
||||
},
|
||||
"response_id": "gen-1785559040-oO8E4LBzbfEGuuvr3vVK",
|
||||
"requested_model": "anthropic/claude-sonnet-4",
|
||||
"provider_reported_model": "anthropic/claude-sonnet-4",
|
||||
"usage": {
|
||||
"completion_tokens": 132,
|
||||
"prompt_tokens": 1700,
|
||||
"total_tokens": 1832,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.00708,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.00708,
|
||||
"upstream_inference_prompt_cost": 0.0051,
|
||||
"upstream_inference_completions_cost": 0.00198
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 14,
|
||||
"monotonic": 6660081.764605112,
|
||||
"wall_time": "2026-08-01T04:37:22+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.043,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P1_14.wav",
|
||||
"audio_bytes": 42524,
|
||||
"audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352"
|
||||
},
|
||||
{
|
||||
"sequence": 15,
|
||||
"monotonic": 6660082.798986178,
|
||||
"wall_time": "2026-08-01T04:37:23+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785559042-1GZNLMYIWInzO59ApGnk",
|
||||
"usage": {
|
||||
"completion_tokens": 4,
|
||||
"prompt_tokens": 63,
|
||||
"total_tokens": 67,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 25,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 4.64e-05,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 4.64e-05,
|
||||
"upstream_inference_prompt_cost": 3.64e-05,
|
||||
"upstream_inference_completions_cost": 1e-05
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.034,
|
||||
"source_audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352",
|
||||
"transcript": "P1 is not"
|
||||
},
|
||||
{
|
||||
"sequence": 16,
|
||||
"monotonic": 6660089.250340574,
|
||||
"wall_time": "2026-08-01T04:37:30+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.08,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_16.wav",
|
||||
"audio_bytes": 889394,
|
||||
"audio_sha256": "4ff2b73cad8e108f291f1b8112d78c2a2b22e04ef69862263dc8a8ad5dabebb5"
|
||||
},
|
||||
{
|
||||
"sequence": 17,
|
||||
"monotonic": 6660091.794800593,
|
||||
"wall_time": "2026-08-01T04:37:32+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.062,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_17.wav",
|
||||
"audio_bytes": 304072,
|
||||
"audio_sha256": "601d85e481cab7a3d0f97ada2b21b25ecaf1db4242837389196e332aa8b3d16c"
|
||||
},
|
||||
{
|
||||
"sequence": 18,
|
||||
"monotonic": 6660094.03442275,
|
||||
"wall_time": "2026-08-01T04:37:34+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "speak_publicly",
|
||||
"arguments": {
|
||||
"utterance": "This is very telling. P4 claimed to be the seer and verified me as good, then got killed last night - classic wolf move to eliminate the real seer. Since P4 correctly identified me as good, this confirms he was likely the true seer. We should focus on those who voted for P4 yesterday, as wolves often try to eliminate seers early."
|
||||
},
|
||||
"response_id": "gen-1785559052-ot6EVpz9tzQVSv3Vc3nK",
|
||||
"requested_model": "anthropic/claude-sonnet-4",
|
||||
"provider_reported_model": "anthropic/claude-sonnet-4",
|
||||
"usage": {
|
||||
"completion_tokens": 111,
|
||||
"prompt_tokens": 1726,
|
||||
"total_tokens": 1837,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.006843,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.006843,
|
||||
"upstream_inference_prompt_cost": 0.005178,
|
||||
"upstream_inference_completions_cost": 0.001665
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 19,
|
||||
"monotonic": 6660094.128008126,
|
||||
"wall_time": "2026-08-01T04:37:34+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.093,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P1_19.wav",
|
||||
"audio_bytes": 1154406,
|
||||
"audio_sha256": "e6d9c0274102424b9c9a14dce70e357319498a4ba97b40613e17e5024be3a5ff"
|
||||
},
|
||||
{
|
||||
"sequence": 20,
|
||||
"monotonic": 6660095.610149198,
|
||||
"wall_time": "2026-08-01T04:37:36+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785559054-DXFJigc5J4fcYV5NfWkJ",
|
||||
"usage": {
|
||||
"completion_tokens": 73,
|
||||
"prompt_tokens": 663,
|
||||
"total_tokens": 736,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 625,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0008189,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0008189,
|
||||
"upstream_inference_prompt_cost": 0.0006364,
|
||||
"upstream_inference_completions_cost": 0.0001825
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.481,
|
||||
"source_audio_sha256": "e6d9c0274102424b9c9a14dce70e357319498a4ba97b40613e17e5024be3a5ff",
|
||||
"transcript": "This is very telling. P4 claimed to be the seer and verified me as good, then got killed last night. Classic wolf move to eliminate the real seer. Since P4 correctly identified me as good, this confirms he was likely the true seer. We should focus on those who voted for P4 yesterday, as wolves often try to eliminate seers early."
|
||||
},
|
||||
{
|
||||
"sequence": 21,
|
||||
"monotonic": 6660096.573507839,
|
||||
"wall_time": "2026-08-01T04:37:37+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.086,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P2_21.wav",
|
||||
"audio_bytes": 1196966,
|
||||
"audio_sha256": "f96f0c81afb44f2eb68637938711ebc310f28a88106d3c0639ea865451342339"
|
||||
},
|
||||
{
|
||||
"sequence": 22,
|
||||
"monotonic": 6660097.313278559,
|
||||
"wall_time": "2026-08-01T04:37:38+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.073,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P3_22.wav",
|
||||
"audio_bytes": 982662,
|
||||
"audio_sha256": "841e56e726756c824f80bc2e7b2534a5e79da23b841f9c371d7d36836ec49ea5"
|
||||
},
|
||||
{
|
||||
"sequence": 23,
|
||||
"monotonic": 6660098.07019322,
|
||||
"wall_time": "2026-08-01T04:37:38+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.086,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P6_23.wav",
|
||||
"audio_bytes": 978756,
|
||||
"audio_sha256": "4fb7d65fae0b19898cbb55e891cba276229805f4fb2e7bab0b59c0237a3334be"
|
||||
},
|
||||
{
|
||||
"sequence": 24,
|
||||
"monotonic": 6660098.725929254,
|
||||
"wall_time": "2026-08-01T04:37:39+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.063,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P7_24.wav",
|
||||
"audio_bytes": 728740,
|
||||
"audio_sha256": "c897346a14fb6f685afe015ca8d7ba10a72b160de10f3ca36e9f1990b5f8ca2e"
|
||||
},
|
||||
{
|
||||
"sequence": 25,
|
||||
"monotonic": 6660099.518123498,
|
||||
"wall_time": "2026-08-01T04:37:40+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.067,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P8_25.wav",
|
||||
"audio_bytes": 1066310,
|
||||
"audio_sha256": "8a5e95f8107dce98f4ce16674ca3ffc2ca91c9e2342ff0be765211ad180a0e8a"
|
||||
},
|
||||
{
|
||||
"sequence": 26,
|
||||
"monotonic": 6660103.414020963,
|
||||
"wall_time": "2026-08-01T04:37:44+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "choose_player",
|
||||
"arguments": {
|
||||
"target": "none",
|
||||
"reason": "基于目前信息,P4作为真预言家被刀,P5狼人身份已确认。其他玩家发言都相对合理,都认同P4是真预言家、P5是狼人的判断。没有明显的狼人特征或矛盾发言,需要更多信息才能做出准确判断,暂时弃票观察。"
|
||||
},
|
||||
"response_id": "gen-1785559060-iKXuqTxW4nhB2usi2TXP",
|
||||
"requested_model": "anthropic/claude-sonnet-4",
|
||||
"provider_reported_model": "anthropic/claude-sonnet-4",
|
||||
"usage": {
|
||||
"completion_tokens": 155,
|
||||
"prompt_tokens": 2175,
|
||||
"total_tokens": 2330,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.00885,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.00885,
|
||||
"upstream_inference_prompt_cost": 0.006525,
|
||||
"upstream_inference_completions_cost": 0.002325
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 27,
|
||||
"monotonic": 6660103.488481883,
|
||||
"wall_time": "2026-08-01T04:37:44+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.067,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P1_27.wav",
|
||||
"audio_bytes": 42524,
|
||||
"audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352"
|
||||
},
|
||||
{
|
||||
"sequence": 28,
|
||||
"monotonic": 6660104.541520248,
|
||||
"wall_time": "2026-08-01T04:37:45+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785559064-K9ELBofaZckyxrbbYLPr",
|
||||
"usage": {
|
||||
"completion_tokens": 4,
|
||||
"prompt_tokens": 63,
|
||||
"total_tokens": 67,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 25,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 4.64e-05,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 4.64e-05,
|
||||
"upstream_inference_prompt_cost": 3.64e-05,
|
||||
"upstream_inference_completions_cost": 1e-05
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.053,
|
||||
"source_audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352",
|
||||
"transcript": "P1 is not"
|
||||
},
|
||||
{
|
||||
"sequence": 29,
|
||||
"monotonic": 6660108.910838712,
|
||||
"wall_time": "2026-08-01T04:37:49+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.084,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_29.wav",
|
||||
"audio_bytes": 751448,
|
||||
"audio_sha256": "ce1a826268133a4331c63c1d9ed13aa7663a5ec76d9fbd319411e8dfa09aec18"
|
||||
},
|
||||
{
|
||||
"sequence": 30,
|
||||
"monotonic": 6660108.973700089,
|
||||
"wall_time": "2026-08-01T04:37:49+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-en-us",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.057,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_30.wav",
|
||||
"audio_bytes": 274520,
|
||||
"audio_sha256": "24a4432aee15b31513a2f4368bdc15b55433dfd35ff6b2c37559f2f6f22f9c2b"
|
||||
}
|
||||
],
|
||||
"voice_has_asr": true,
|
||||
"voice_has_tts": true,
|
||||
"simulator_llm_tool_calls": 4,
|
||||
"simulator_audio_roundtrips": 4,
|
||||
"barge_in_events": 0,
|
||||
"gates": {
|
||||
"exact_6_to_8_player_role_roster": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_user_seat": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_authorized_human_participant": {
|
||||
"status": "not_applicable"
|
||||
},
|
||||
"one_llm_user_simulator": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_user_input_asr": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_ai_and_judge_tts": {
|
||||
"status": "pass"
|
||||
},
|
||||
"llm_tool_to_audio_to_asr_boundary": {
|
||||
"status": "pass",
|
||||
"tool_calls": 4,
|
||||
"audio_roundtrips": 4
|
||||
},
|
||||
"three_complete_cycles": {
|
||||
"status": "fail",
|
||||
"observed": 2
|
||||
},
|
||||
"information_isolation": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_llm_strategy_acceptance": {
|
||||
"status": "fail"
|
||||
},
|
||||
"winner_determined_by_game_rule": {
|
||||
"status": "pass"
|
||||
}
|
||||
},
|
||||
"overall_status": "incomplete"
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"source_report": "validation/runs/exp10-6-simulated-user-openrouter-20260801-v3/acceptance_report.json",
|
||||
"source_report_sha256": "5344af21b205f1cd51c013a0d8df49e7f56385745c6186c6c3918fb802a07ffb",
|
||||
"simulator_tool_events_checked": 4,
|
||||
"strict_audio_action_boundary": "fail",
|
||||
"errors": [
|
||||
"tool event 13 selected none but ASR was not an explicit abstention: 'P1 is not'",
|
||||
"tool event 26 selected none but ASR was not an explicit abstention: 'P1 is not'"
|
||||
]
|
||||
}
|
||||
+443
@@ -0,0 +1,443 @@
|
||||
{
|
||||
"schema_version": 2,
|
||||
"experiment": "10-6",
|
||||
"generated_at": "2026-08-01T04:32:10+0000",
|
||||
"execution_mode": "simulated_user",
|
||||
"acceptance_path": true,
|
||||
"end_to_end_status": "pass",
|
||||
"players": 8,
|
||||
"user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_players": [],
|
||||
"simulated_user_players": [
|
||||
"P1"
|
||||
],
|
||||
"human_role_randomized_to": null,
|
||||
"simulated_user_role_randomized_to": "女巫",
|
||||
"role_counts": {
|
||||
"狼人": 2,
|
||||
"预言家": 1,
|
||||
"女巫": 1,
|
||||
"村民": 4
|
||||
},
|
||||
"completed_day_night_vote_cycles": 2,
|
||||
"winner": "好人阵营",
|
||||
"information_isolation_pass": true,
|
||||
"strategy_audit": {
|
||||
"criteria": {
|
||||
"werewolf_concealment": {
|
||||
"status": "pass",
|
||||
"evidence": "P7: \"P5预言家验了P1,P1是好人,结果P1还出局了,那P5是真的预言家吗?我觉得P5的预言家身份有点可疑。\" P8: \"P5说他是预言家,验了P1是好人,结果P1就出局了,这确实挺奇怪的。P5的预言家身份我也有点怀疑,希望P5能给出更多解释。\""
|
||||
},
|
||||
"seer_timing_and_evidence": {
|
||||
"status": "pass",
|
||||
"evidence": "P5: \"我是预言家,昨晚查验了P1,P1是好人。P1出局,很明显是狼人悍跳预言家刀的。请悍跳狼自爆,否则我将继续验人。\""
|
||||
},
|
||||
"villager_logical_reasoning": {
|
||||
"status": "pass",
|
||||
"evidence": "P2: \"P1出局有点意外,我作为村民,会仔细听大家的发言。希望狼人能早点暴露出来,大家可以多聊聊P1出局的原因。\" P3: \"P1出局确实有点出乎意料。P2说他是村民,我会先观察。大家可以多聊聊P1出局的原因,看看能不能找到狼人的线索。\""
|
||||
},
|
||||
"role_consistency": {
|
||||
"status": "pass",
|
||||
"evidence": "P5 (Seer) inspected P1 and P2, and in public speech reported P1 as good. P7 and P8 (Werewolves) proposed killing P1 and P5, and in public speech cast doubt on the Seer. P2, P3, P4, P6 (Villagers) discussed the dead player and the Seer's claim, then voted for P7 after P5's revelation."
|
||||
}
|
||||
},
|
||||
"overall_pass": true,
|
||||
"provider": "openrouter",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"model_overall_pass_claim": true,
|
||||
"schema_valid": true,
|
||||
"validation_errors": []
|
||||
},
|
||||
"strategy_audit_pass": true,
|
||||
"voice_events": [
|
||||
{
|
||||
"sequence": 1,
|
||||
"monotonic": 6659738.807942813,
|
||||
"wall_time": "2026-08-01T04:31:39+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge-private",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.061,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r0_judge-private_1.wav",
|
||||
"audio_bytes": 290926,
|
||||
"audio_sha256": "4072ec5c58cccd2053867e5fa15cff4f0dbe2d66497a6818cc0a72c22c6e49d0"
|
||||
},
|
||||
{
|
||||
"sequence": 2,
|
||||
"monotonic": 6659741.819194071,
|
||||
"wall_time": "2026-08-01T04:31:42+0000",
|
||||
"type": "simulator_llm_tool",
|
||||
"seat": "P1",
|
||||
"tool": "choose_player",
|
||||
"arguments": {
|
||||
"reason": "第一晚被刀的是我自己,女巫不能自救,所以解药无法使用。毒药第一晚先不使用,观察一下其他玩家的发言。",
|
||||
"target": "none"
|
||||
},
|
||||
"response_id": "gen-1785558701-KGd5rQJmxY9VuJKLkL4I",
|
||||
"requested_model": "google/gemini-2.5-flash",
|
||||
"provider_reported_model": "google/gemini-2.5-flash",
|
||||
"usage": {
|
||||
"completion_tokens": 40,
|
||||
"prompt_tokens": 395,
|
||||
"total_tokens": 435,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 0,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 0.0002185,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 0.0002185,
|
||||
"upstream_inference_prompt_cost": 0.0001185,
|
||||
"upstream_inference_completions_cost": 0.0001
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"sequence": 3,
|
||||
"monotonic": 6659741.881685822,
|
||||
"wall_time": "2026-08-01T04:31:42+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P1",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.062,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P1_3.wav",
|
||||
"audio_bytes": 42524,
|
||||
"audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352"
|
||||
},
|
||||
{
|
||||
"sequence": 4,
|
||||
"monotonic": 6659742.959315685,
|
||||
"wall_time": "2026-08-01T04:31:43+0000",
|
||||
"type": "simulator_asr",
|
||||
"provider": "OpenRouter multimodal audio API",
|
||||
"model": "google/gemini-2.5-flash",
|
||||
"request_id": "gen-1785558702-Gp3xq6Xf5Sx6pFLwLNi3",
|
||||
"usage": {
|
||||
"completion_tokens": 4,
|
||||
"prompt_tokens": 63,
|
||||
"total_tokens": 67,
|
||||
"completion_tokens_details": {
|
||||
"accepted_prediction_tokens": null,
|
||||
"audio_tokens": 0,
|
||||
"reasoning_tokens": 0,
|
||||
"rejected_prediction_tokens": null,
|
||||
"image_tokens": 0
|
||||
},
|
||||
"prompt_tokens_details": {
|
||||
"audio_tokens": 25,
|
||||
"cached_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"video_tokens": 0
|
||||
},
|
||||
"cost": 4.64e-05,
|
||||
"is_byok": false,
|
||||
"cost_details": {
|
||||
"upstream_inference_cost": 4.64e-05,
|
||||
"upstream_inference_prompt_cost": 3.64e-05,
|
||||
"upstream_inference_completions_cost": 1e-05
|
||||
}
|
||||
},
|
||||
"latency_seconds": 1.077,
|
||||
"source_audio_sha256": "0d9ee3c2b7690fe0d2cf41b0450755995e66d3d360b76d7e4173086c87795352",
|
||||
"transcript": "P1 is not"
|
||||
},
|
||||
{
|
||||
"sequence": 5,
|
||||
"monotonic": 6659743.022028705,
|
||||
"wall_time": "2026-08-01T04:31:43+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.054,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_5.wav",
|
||||
"audio_bytes": 304082,
|
||||
"audio_sha256": "1cbcec8d528486b50106d7cd00bed6a36e37a858dc391336edd83c113a1177de"
|
||||
},
|
||||
{
|
||||
"sequence": 6,
|
||||
"monotonic": 6659743.857484956,
|
||||
"wall_time": "2026-08-01T04:31:44+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.09,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P2_6.wav",
|
||||
"audio_bytes": 914730,
|
||||
"audio_sha256": "08cda30fad499eeb20caa8876579741e514d286f7db0ee999555673e5a8ce41d"
|
||||
},
|
||||
{
|
||||
"sequence": 7,
|
||||
"monotonic": 6659744.760075835,
|
||||
"wall_time": "2026-08-01T04:31:45+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.065,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P3_7.wav",
|
||||
"audio_bytes": 961736,
|
||||
"audio_sha256": "fbacc9c4139086a6267f1f5e7668a83d81feed40ce5d8afcd915d32eaf7f2379"
|
||||
},
|
||||
{
|
||||
"sequence": 8,
|
||||
"monotonic": 6659745.623963103,
|
||||
"wall_time": "2026-08-01T04:31:46+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P4",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.08,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P4_8.wav",
|
||||
"audio_bytes": 1176774,
|
||||
"audio_sha256": "a606133137d7241bcb8d232a93b8563784a338187df76d2ef124c42938734c70"
|
||||
},
|
||||
{
|
||||
"sequence": 9,
|
||||
"monotonic": 6659746.469986224,
|
||||
"wall_time": "2026-08-01T04:31:47+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P5",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.093,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P5_9.wav",
|
||||
"audio_bytes": 991594,
|
||||
"audio_sha256": "1258edf290a49d1ce8e9577389bc04214ce129c7817ea0f4fc5c3ee9d7800250"
|
||||
},
|
||||
{
|
||||
"sequence": 10,
|
||||
"monotonic": 6659747.318732785,
|
||||
"wall_time": "2026-08-01T04:31:48+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.072,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P6_10.wav",
|
||||
"audio_bytes": 1154468,
|
||||
"audio_sha256": "5227d3e1be790831250156417420c5395e5ba56b2fdf10914ea1842e1e72e718"
|
||||
},
|
||||
{
|
||||
"sequence": 11,
|
||||
"monotonic": 6659748.179338652,
|
||||
"wall_time": "2026-08-01T04:31:48+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P7",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.057,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P7_11.wav",
|
||||
"audio_bytes": 956014,
|
||||
"audio_sha256": "34dfdd2b78ceb17facf82c64fa7d2a8bd5c43c7f53fb0757e32d5640ad308b46"
|
||||
},
|
||||
{
|
||||
"sequence": 12,
|
||||
"monotonic": 6659749.175230099,
|
||||
"wall_time": "2026-08-01T04:31:49+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.078,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_P8_12.wav",
|
||||
"audio_bytes": 1112008,
|
||||
"audio_sha256": "b23c208fe1a7af1187c8a3db3e32ac87cc995e75286c6a82fe4fb9cb6da8f24e"
|
||||
},
|
||||
{
|
||||
"sequence": 13,
|
||||
"monotonic": 6659755.472674429,
|
||||
"wall_time": "2026-08-01T04:31:56+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.075,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r1_judge_13.wav",
|
||||
"audio_bytes": 774880,
|
||||
"audio_sha256": "91d6eddf38874576842938ba4d040160a8c3320d97ea19f06612a60854fa1273"
|
||||
},
|
||||
{
|
||||
"sequence": 14,
|
||||
"monotonic": 6659757.175891685,
|
||||
"wall_time": "2026-08-01T04:31:57+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.07,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_14.wav",
|
||||
"audio_bytes": 307294,
|
||||
"audio_sha256": "fd3fe62cf32b3536394bad76d25c66cf22b9efca4f48469cb82179b11f8811e8"
|
||||
},
|
||||
{
|
||||
"sequence": 15,
|
||||
"monotonic": 6659758.170954376,
|
||||
"wall_time": "2026-08-01T04:31:58+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P2",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.082,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P2_15.wav",
|
||||
"audio_bytes": 1354938,
|
||||
"audio_sha256": "6043e972710e130baaf98131172067d9fe7cb69217e10e5a55a3825f13c97e13"
|
||||
},
|
||||
{
|
||||
"sequence": 16,
|
||||
"monotonic": 6659759.243308116,
|
||||
"wall_time": "2026-08-01T04:32:00+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P3",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.095,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P3_16.wav",
|
||||
"audio_bytes": 1134002,
|
||||
"audio_sha256": "115ddceb29320bbe2e2871a60bcc1e4f6e17ab1ba810378cd13d1067c5a38d84"
|
||||
},
|
||||
{
|
||||
"sequence": 17,
|
||||
"monotonic": 6659760.192742183,
|
||||
"wall_time": "2026-08-01T04:32:00+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P4",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.072,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P4_17.wav",
|
||||
"audio_bytes": 1207868,
|
||||
"audio_sha256": "4aca0b0da9f3d87bc222a5297d1172b8892bd3f62510a57180ac74a03d962941"
|
||||
},
|
||||
{
|
||||
"sequence": 18,
|
||||
"monotonic": 6659760.991943794,
|
||||
"wall_time": "2026-08-01T04:32:01+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P6",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.08,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P6_18.wav",
|
||||
"audio_bytes": 1034974,
|
||||
"audio_sha256": "5b3cecb54526a187a246b62c18c2701fab5dd5aaf2e715a0a83c4b93b28760d7"
|
||||
},
|
||||
{
|
||||
"sequence": 19,
|
||||
"monotonic": 6659761.881699391,
|
||||
"wall_time": "2026-08-01T04:32:02+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "P8",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.07,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_P8_19.wav",
|
||||
"audio_bytes": 1114376,
|
||||
"audio_sha256": "168dd458259cf3d405c401a50a83ec05598423735e653083ad9729846fd6621e"
|
||||
},
|
||||
{
|
||||
"sequence": 20,
|
||||
"monotonic": 6659766.873318817,
|
||||
"wall_time": "2026-08-01T04:32:07+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.074,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_20.wav",
|
||||
"audio_bytes": 749332,
|
||||
"audio_sha256": "f010a7c2f766bcd50ca438d0cd31caec26f56856fd6696961cbe27db96160bb4"
|
||||
},
|
||||
{
|
||||
"sequence": 21,
|
||||
"monotonic": 6659766.930157353,
|
||||
"wall_time": "2026-08-01T04:32:07+0000",
|
||||
"type": "tts_ready",
|
||||
"speaker": "judge",
|
||||
"provider": "local espeak",
|
||||
"model": "espeak-zh",
|
||||
"request_id": null,
|
||||
"latency_seconds": 0.051,
|
||||
"file": "/home/ubuntu/ai-agent-book/chapter10/voice-werewolf/audio/r2_judge_21.wav",
|
||||
"audio_bytes": 274520,
|
||||
"audio_sha256": "24a4432aee15b31513a2f4368bdc15b55433dfd35ff6b2c37559f2f6f22f9c2b"
|
||||
}
|
||||
],
|
||||
"voice_has_asr": true,
|
||||
"voice_has_tts": true,
|
||||
"simulator_llm_tool_calls": 1,
|
||||
"simulator_audio_roundtrips": 1,
|
||||
"barge_in_events": 0,
|
||||
"gates": {
|
||||
"exact_6_to_8_player_role_roster": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_user_seat": {
|
||||
"status": "pass"
|
||||
},
|
||||
"one_authorized_human_participant": {
|
||||
"status": "not_applicable"
|
||||
},
|
||||
"one_llm_user_simulator": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_user_input_asr": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_ai_and_judge_tts": {
|
||||
"status": "pass"
|
||||
},
|
||||
"llm_tool_to_audio_to_asr_boundary": {
|
||||
"status": "pass",
|
||||
"tool_calls": 1,
|
||||
"audio_roundtrips": 1
|
||||
},
|
||||
"three_complete_cycles": {
|
||||
"status": "fail",
|
||||
"observed": 2
|
||||
},
|
||||
"information_isolation": {
|
||||
"status": "pass"
|
||||
},
|
||||
"real_llm_strategy_acceptance": {
|
||||
"status": "pass"
|
||||
},
|
||||
"winner_determined_by_game_rule": {
|
||||
"status": "pass"
|
||||
}
|
||||
},
|
||||
"overall_status": "incomplete"
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"source_report": "validation/runs/exp10-6-simulated-user-openrouter-20260801/acceptance_report.json",
|
||||
"source_report_sha256": "656d7bcd9d7b830e33db6278574cc9bc6f194e97ae5902012e1898a72049ca89",
|
||||
"simulator_tool_events_checked": 1,
|
||||
"strict_audio_action_boundary": "fail",
|
||||
"errors": [
|
||||
"tool event 2 selected none but ASR was not an explicit abstention: 'P1 is not'"
|
||||
]
|
||||
}
|
||||
+1341
File diff suppressed because it is too large
Load Diff
+8
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"source_report": "validation/runs/exp10-6-simulated-user-openrouter-20260803-v11/acceptance_report.json",
|
||||
"source_report_sha256": "655b4eed74ad4f4d741dc89f97c86a68c547e4f82d1dea9fea71449dfef797e9",
|
||||
"simulator_tool_events_checked": 6,
|
||||
"strict_audio_action_boundary": "pass",
|
||||
"errors": []
|
||||
}
|
||||
Reference in New Issue
Block a user