Add Listen section: 5 playable stereo demos (user left / agent right), refreshed sample logs
Browse files- .gitattributes +1 -0
- README.md +25 -1
- samples/01_igbo_greetings_english.json +145 -151
- samples/01_igbo_greetings_english.mp3 +2 -2
- samples/02_yoruba_greetings_english.json +251 -0
- samples/02_yoruba_greetings_english.mp3 +3 -0
- samples/03_pidgin_bargein.json +89 -88
- samples/03_pidgin_bargein.mp3 +2 -2
- samples/04_hausa_greetings_english.json +119 -119
- samples/04_hausa_greetings_english.mp3 +2 -2
- samples/05_igbo_heavy.json +166 -121
- samples/05_igbo_heavy.mp3 +2 -2
.gitattributes
CHANGED
|
@@ -37,3 +37,4 @@ samples/01_igbo_greetings_english.mp3 filter=lfs diff=lfs merge=lfs -text
|
|
| 37 |
samples/03_pidgin_bargein.mp3 filter=lfs diff=lfs merge=lfs -text
|
| 38 |
samples/04_hausa_greetings_english.mp3 filter=lfs diff=lfs merge=lfs -text
|
| 39 |
samples/05_igbo_heavy.mp3 filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 37 |
samples/03_pidgin_bargein.mp3 filter=lfs diff=lfs merge=lfs -text
|
| 38 |
samples/04_hausa_greetings_english.mp3 filter=lfs diff=lfs merge=lfs -text
|
| 39 |
samples/05_igbo_heavy.mp3 filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
samples/02_yoruba_greetings_english.mp3 filter=lfs diff=lfs merge=lfs -text
|
README.md
CHANGED
|
@@ -39,6 +39,30 @@ speaker ◄── Dynamic Accent Flash-DPO TTS (chunk streaming, code-switching
|
|
| 39 |
|
| 40 |
**Status: research demo.** Igbo, Yoruba and Hausa beyond greetings and simple phrases are weak (the reply LLM's limit, not the voice's). Read the limitations before using it for anything.
|
| 41 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
## Components and licences
|
| 43 |
|
| 44 |
| stage | component | licence |
|
|
@@ -157,7 +181,7 @@ Barge-in (batch eval, n=40): user speech onset -> agent audio stopped p50 0.235
|
|
| 157 |
|
| 158 |
## Demos
|
| 159 |
|
| 160 |
-
`samples/` holds
|
| 161 |
|
| 162 |
## Limitations (read before use)
|
| 163 |
|
|
|
|
| 39 |
|
| 40 |
**Status: research demo.** Igbo, Yoruba and Hausa beyond greetings and simple phrases are weak (the reply LLM's limit, not the voice's). Read the limitations before using it for anything.
|
| 41 |
|
| 42 |
+
## Listen
|
| 43 |
+
|
| 44 |
+
Five scripted conversations from the offline driver. **Stereo: the user is on the LEFT channel, the agent on the RIGHT** (headphones help). **User turns are TTS-synthesised** with Dynamic Accent Flash female voices, not real people; the agent speaks with the Flash-DPO male anchor voice. These are **cascaded** demos (ASR → reply LLM → TTS), not a native speech-to-speech model, and the reply LLM is **weak in Igbo, Yoruba and Hausa beyond greetings and short phrases**, which you will hear. Each clip has a JSON log next to it in `samples/` (ASR text, target mix, reply, validator outcome, latency). Audio samples: CC-BY-SA-4.0.
|
| 45 |
+
|
| 46 |
+
**1. Igbo greeting + English.** Mostly English with an Igbo greeting and closing ("Ndewo!" … "Daalụ!"): planning a day (bank, market, call mum). Includes a long turn with a mid-turn pause and a barge-in ("Wait, sorry, the bank closes early today"). The agent greets back in Igbo ("Ụtụtụ ọma!") and replies in English; its last line contains a garbled name.
|
| 47 |
+
|
| 48 |
+
<audio controls src="https://huggingface.co/Modularcomputing/dynamic-accent-duplex/resolve/main/samples/01_igbo_greetings_english.mp3"></audio>
|
| 49 |
+
|
| 50 |
+
**2. Yoruba greeting + English.** "Ẹ káàárọ̀!" then English: buying a phone for a sister on a ₦100k budget, closing with "Ẹ ṣé!". The English replies are fine; the Yoruba the agent adds ("Ọmọ rẹ wà?") is not appropriate here.
|
| 51 |
+
|
| 52 |
+
<audio controls src="https://huggingface.co/Modularcomputing/dynamic-accent-duplex/resolve/main/samples/02_yoruba_greetings_english.mp3"></audio>
|
| 53 |
+
|
| 54 |
+
**3. Nigerian Pidgin.** Pidgin throughout ("How far? Abeg, wetin I fit cook tonight…"), with a barge-in ("No be rice o…"). The agent stays in Pidgin the whole way.
|
| 55 |
+
|
| 56 |
+
<audio controls src="https://huggingface.co/Modularcomputing/dynamic-accent-duplex/resolve/main/samples/03_pidgin_bargein.mp3"></audio>
|
| 57 |
+
|
| 58 |
+
**4. Hausa greeting + English.** "Sannu, barka da yamma" then English about a trip to Kano and what to pack; Hausa closing "To, na gode". The English advice is fine; the agent's extra Hausa phrases are not real Hausa, and the final Hausa-only turn falls back to "Sorry, I did not catch all of that".
|
| 59 |
+
|
| 60 |
+
<audio controls src="https://huggingface.co/Modularcomputing/dynamic-accent-duplex/resolve/main/samples/04_hausa_greetings_english.mp3"></audio>
|
| 61 |
+
|
| 62 |
+
**5. Igbo-heavier.** More Igbo from the user ("Kedu? Biko, nyere m aka" … "Daalụ, ka ọ dị"): booking a taxi to the airport. Shows the weak spot: the agent mostly echoes the user's Igbo phrases rather than writing new Igbo.
|
| 63 |
+
|
| 64 |
+
<audio controls src="https://huggingface.co/Modularcomputing/dynamic-accent-duplex/resolve/main/samples/05_igbo_heavy.mp3"></audio>
|
| 65 |
+
|
| 66 |
## Components and licences
|
| 67 |
|
| 68 |
| stage | component | licence |
|
|
|
|
| 181 |
|
| 182 |
## Demos
|
| 183 |
|
| 184 |
+
`samples/` holds five scripted conversations (playable in **Listen** above; stereo, user left / agent right) made with the offline driver (agent: Flash-DPO male anchor). **User turns in these samples are TTS-synthesised** (Flash female voices), not real people. Each has a JSON log with the ASR text, the target mix, the reply, the validator outcome and per-stage latency.
|
| 185 |
|
| 186 |
## Limitations (read before use)
|
| 187 |
|
samples/01_igbo_greetings_english.json
CHANGED
|
@@ -1,49 +1,54 @@
|
|
| 1 |
{
|
| 2 |
"name": "01_igbo_greetings_english",
|
| 3 |
-
"desc": "Mostly English with Igbo greetings/closing
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
-
"label": "TTS-synthesized user turn",
|
| 7 |
-
"
|
| 8 |
-
"
|
|
|
|
| 9 |
},
|
| 10 |
{
|
| 11 |
-
"label": "TTS-synthesized user turn (long, mid-turn pause)",
|
| 12 |
-
"voice": "waxal_ibo_5_female",
|
| 13 |
"text_parts": [
|
| 14 |
"<eng>I need to go to the bank, and then the market,</eng>",
|
| 15 |
"<eng>and in the evening I also want to call my mother.</eng>"
|
| 16 |
],
|
| 17 |
-
"inner_pause": 0.4
|
|
|
|
|
|
|
|
|
|
| 18 |
},
|
| 19 |
{
|
| 20 |
-
"label": "TTS-synthesized user turn (barge-in 1.5 s into the reply)",
|
| 21 |
-
"voice": "waxal_ibo_5_female",
|
| 22 |
"text": "<eng>Wait, sorry, the bank closes early today.</eng>",
|
| 23 |
-
"barge_at": 1.5
|
|
|
|
|
|
|
| 24 |
},
|
| 25 |
{
|
| 26 |
-
"label": "TTS-synthesized user turn",
|
| 27 |
-
"
|
| 28 |
-
"
|
|
|
|
| 29 |
}
|
| 30 |
],
|
| 31 |
"turns": [
|
| 32 |
{
|
| 33 |
"turn": 0,
|
| 34 |
-
"user_label": "TTS-synthesized user turn",
|
| 35 |
"user_ref": "<ibo>Ndewo!</ibo> <eng>Good morning. Please, can you help me plan my day? I have a lot to do.</eng>",
|
| 36 |
"user_start": 0.7,
|
| 37 |
"user_onset": 0.762,
|
| 38 |
"backchannels": [],
|
| 39 |
-
"asr": "nde wo good morning please can you help me plan my day i have
|
| 40 |
-
"asr_s": 0.
|
| 41 |
"eot_wait_s": 0.576,
|
| 42 |
"speech_end": 5.984,
|
| 43 |
"target": {
|
| 44 |
"mix": {
|
| 45 |
-
"eng": 0.
|
| 46 |
-
"ibo": 0.
|
| 47 |
},
|
| 48 |
"matrix": "eng",
|
| 49 |
"pattern": [
|
|
@@ -52,161 +57,161 @@
|
|
| 52 |
]
|
| 53 |
},
|
| 54 |
"target_desc": "Match the user's language mix: English about 90%, Igbo about 10% of the words. The main (matrix) language is English. The user greeted in Igbo: open with a short Igbo greeting.",
|
| 55 |
-
"reply": "<ibo>
|
| 56 |
"reply_mix": {
|
| 57 |
-
"eng": 0.
|
| 58 |
-
"ibo": 0.
|
| 59 |
},
|
| 60 |
-
"tvd": 0.
|
| 61 |
"how": "first_round",
|
| 62 |
"first_cand_ok": true,
|
| 63 |
"rounds": [
|
| 64 |
{
|
| 65 |
"round": 0,
|
| 66 |
-
"llm_s":
|
| 67 |
"cands": [
|
| 68 |
{
|
| 69 |
-
"text": "<ibo>
|
| 70 |
"ok": true,
|
| 71 |
"why": [],
|
| 72 |
-
"tvd": 0.
|
| 73 |
},
|
| 74 |
{
|
| 75 |
-
"text": "<ibo>Ndewo!</ibo> <eng>
|
| 76 |
"ok": true,
|
| 77 |
"why": [],
|
| 78 |
-
"tvd": 0.
|
| 79 |
},
|
| 80 |
{
|
| 81 |
-
"text": "<ibo>Ndewo!</ibo> <eng>Of course! Let’s start with your most
|
| 82 |
"ok": true,
|
| 83 |
"why": [],
|
| 84 |
-
"tvd": 0.
|
| 85 |
}
|
| 86 |
]
|
| 87 |
}
|
| 88 |
],
|
| 89 |
-
"mix_s": 0.
|
| 90 |
-
"llm_s":
|
| 91 |
-
"tts_first_s":
|
| 92 |
"spec_start_s": 0.256,
|
| 93 |
-
"compute_to_first_audio_s":
|
| 94 |
"tts_breakdown": {
|
| 95 |
"fe": 0.0,
|
| 96 |
-
"lm": 1.
|
| 97 |
-
"flow_voc": 0.
|
| 98 |
-
"n_tok":
|
| 99 |
-
"audio_s": 2.
|
| 100 |
},
|
| 101 |
"tts_chunks_s": [
|
| 102 |
-
|
| 103 |
-
0.
|
| 104 |
-
|
| 105 |
-
1.
|
| 106 |
],
|
| 107 |
-
"first_audio":
|
| 108 |
-
"reply_end":
|
| 109 |
-
"latency_s":
|
| 110 |
},
|
| 111 |
{
|
| 112 |
"turn": 1,
|
| 113 |
-
"user_label": "TTS-synthesized user turn (long, mid-turn pause)",
|
| 114 |
-
"user_ref": "",
|
| 115 |
-
"user_start":
|
| 116 |
-
"user_onset":
|
| 117 |
"backchannels": [
|
| 118 |
{
|
| 119 |
-
"t":
|
| 120 |
"turn_s": 5.28
|
| 121 |
}
|
| 122 |
],
|
| 123 |
-
"backchannel_at":
|
| 124 |
-
"asr": "i need to go to the bank and then the market and in the evening i also want
|
| 125 |
-
"asr_s": 0.
|
| 126 |
"eot_wait_s": 0.576,
|
| 127 |
-
"speech_end":
|
| 128 |
"target": {
|
| 129 |
"mix": {
|
| 130 |
-
"eng": 0.
|
| 131 |
-
"ibo": 0.
|
| 132 |
},
|
| 133 |
"matrix": "eng",
|
| 134 |
"pattern": []
|
| 135 |
},
|
| 136 |
"target_desc": "Match the user's language mix: English about 95%, Igbo about 5% of the words. The main (matrix) language is English.",
|
| 137 |
-
"reply": "<eng>Okay,
|
| 138 |
"reply_mix": {
|
| 139 |
"eng": 1.0
|
| 140 |
},
|
| 141 |
-
"tvd": 0.
|
| 142 |
"how": "first_round",
|
| 143 |
"first_cand_ok": true,
|
| 144 |
"rounds": [
|
| 145 |
{
|
| 146 |
"round": 0,
|
| 147 |
-
"llm_s": 0.
|
| 148 |
"cands": [
|
| 149 |
{
|
| 150 |
-
"text": "<eng>Okay,
|
| 151 |
"ok": true,
|
| 152 |
"why": [],
|
| 153 |
-
"tvd": 0.
|
| 154 |
},
|
| 155 |
{
|
| 156 |
-
"text": "<eng>Okay,
|
| 157 |
"ok": true,
|
| 158 |
"why": [],
|
| 159 |
-
"tvd": 0.
|
| 160 |
},
|
| 161 |
{
|
| 162 |
-
"text": "<eng>
|
| 163 |
"ok": true,
|
| 164 |
"why": [],
|
| 165 |
-
"tvd": 0.
|
| 166 |
}
|
| 167 |
]
|
| 168 |
}
|
| 169 |
],
|
| 170 |
-
"mix_s": 0.
|
| 171 |
-
"llm_s": 0.
|
| 172 |
-
"tts_first_s": 0.
|
| 173 |
"spec_start_s": 0.256,
|
| 174 |
-
"compute_to_first_audio_s": 1.
|
| 175 |
"tts_breakdown": {
|
| 176 |
"fe": 0.0,
|
| 177 |
-
"lm": 0.
|
| 178 |
-
"flow_voc": 0.
|
| 179 |
-
"n_tok":
|
| 180 |
-
"audio_s": 2.
|
| 181 |
},
|
| 182 |
"tts_chunks_s": [
|
| 183 |
-
0.
|
| 184 |
-
|
| 185 |
-
1.
|
| 186 |
],
|
| 187 |
-
"first_audio":
|
| 188 |
-
"reply_end":
|
| 189 |
-
"latency_s": 1.
|
| 190 |
},
|
| 191 |
{
|
| 192 |
"turn": 2,
|
| 193 |
-
"user_label": "TTS-synthesized user turn (barge-in 1.5 s into the reply)",
|
| 194 |
"user_ref": "<eng>Wait, sorry, the bank closes early today.</eng>",
|
| 195 |
-
"user_start":
|
| 196 |
-
"user_onset":
|
| 197 |
"backchannels": [],
|
| 198 |
"barge": {
|
| 199 |
-
"user_onset":
|
| 200 |
-
"detected":
|
| 201 |
-
"agent_stopped":
|
| 202 |
-
"reaction_s": 0.
|
| 203 |
"agent_chunks_played": 1,
|
| 204 |
"agent_chunks_total": 3
|
| 205 |
},
|
| 206 |
-
"asr": "wait sorry the
|
| 207 |
-
"asr_s": 0.
|
| 208 |
"eot_wait_s": 0.576,
|
| 209 |
-
"speech_end":
|
| 210 |
"target": {
|
| 211 |
"mix": {
|
| 212 |
"eng": 0.98
|
|
@@ -215,7 +220,7 @@
|
|
| 215 |
"pattern": []
|
| 216 |
},
|
| 217 |
"target_desc": "Match the user's language mix: English about 100% of the words. The main (matrix) language is English. Reply only in English.",
|
| 218 |
-
"reply": "<eng>Okay, no problem. Let’s
|
| 219 |
"reply_mix": {
|
| 220 |
"eng": 1.0
|
| 221 |
},
|
|
@@ -225,22 +230,22 @@
|
|
| 225 |
"rounds": [
|
| 226 |
{
|
| 227 |
"round": 0,
|
| 228 |
-
"llm_s": 0.
|
| 229 |
"cands": [
|
| 230 |
{
|
| 231 |
-
"text": "<eng>Okay, no problem. Let’s
|
| 232 |
"ok": true,
|
| 233 |
"why": [],
|
| 234 |
"tvd": 0.01
|
| 235 |
},
|
| 236 |
{
|
| 237 |
-
"text": "<eng>Okay, no problem. Let’s
|
| 238 |
"ok": true,
|
| 239 |
"why": [],
|
| 240 |
"tvd": 0.01
|
| 241 |
},
|
| 242 |
{
|
| 243 |
-
"text": "<eng>
|
| 244 |
"ok": true,
|
| 245 |
"why": [],
|
| 246 |
"tvd": 0.01
|
|
@@ -248,107 +253,96 @@
|
|
| 248 |
]
|
| 249 |
}
|
| 250 |
],
|
| 251 |
-
"mix_s": 0.
|
| 252 |
-
"llm_s": 0.
|
| 253 |
-
"tts_first_s": 0.
|
| 254 |
"spec_start_s": 0.256,
|
| 255 |
-
"compute_to_first_audio_s": 1.
|
| 256 |
"tts_breakdown": {
|
| 257 |
"fe": 0.0,
|
| 258 |
-
"lm":
|
| 259 |
-
"flow_voc": 0.
|
| 260 |
-
"n_tok":
|
| 261 |
-
"audio_s":
|
| 262 |
},
|
| 263 |
"tts_chunks_s": [
|
| 264 |
-
0.
|
| 265 |
-
|
| 266 |
-
1.645
|
| 267 |
],
|
| 268 |
-
"first_audio":
|
| 269 |
-
"reply_end":
|
| 270 |
-
"latency_s": 1.
|
| 271 |
},
|
| 272 |
{
|
| 273 |
"turn": 3,
|
| 274 |
-
"user_label": "TTS-synthesized user turn",
|
| 275 |
"user_ref": "<eng>Okay, thank you so much.</eng> <ibo>Daalụ!</ibo>",
|
| 276 |
-
"user_start":
|
| 277 |
-
"user_onset":
|
| 278 |
"backchannels": [],
|
| 279 |
-
"asr": "
|
| 280 |
-
"asr_s": 0.
|
| 281 |
"eot_wait_s": 0.576,
|
| 282 |
-
"speech_end":
|
| 283 |
"target": {
|
| 284 |
"mix": {
|
| 285 |
-
"eng": 0.
|
| 286 |
-
"ibo": 0.2
|
| 287 |
},
|
| 288 |
"matrix": "eng",
|
| 289 |
-
"pattern": [
|
| 290 |
-
"closing:ibo",
|
| 291 |
-
"inter-sentential"
|
| 292 |
-
]
|
| 293 |
},
|
| 294 |
-
"target_desc": "Match the user's language mix: English about
|
| 295 |
-
"reply": "<eng>
|
| 296 |
"reply_mix": {
|
| 297 |
-
"eng":
|
| 298 |
-
"ibo": 0.33
|
| 299 |
},
|
| 300 |
-
"tvd": 0.
|
| 301 |
"how": "first_round",
|
| 302 |
"first_cand_ok": true,
|
| 303 |
"rounds": [
|
| 304 |
{
|
| 305 |
"round": 0,
|
| 306 |
-
"llm_s": 0.
|
| 307 |
"cands": [
|
| 308 |
{
|
| 309 |
-
"text": "<eng>
|
| 310 |
"ok": true,
|
| 311 |
"why": [],
|
| 312 |
-
"tvd": 0.
|
| 313 |
},
|
| 314 |
{
|
| 315 |
-
"text": "<eng>
|
| 316 |
-
"ok":
|
| 317 |
-
"why": [
|
| 318 |
-
|
| 319 |
-
],
|
| 320 |
-
"tvd": 0.495
|
| 321 |
},
|
| 322 |
{
|
| 323 |
-
"text": "<eng>
|
| 324 |
-
"ok":
|
| 325 |
-
"why": [
|
| 326 |
-
|
| 327 |
-
],
|
| 328 |
-
"tvd": 0.42
|
| 329 |
}
|
| 330 |
]
|
| 331 |
}
|
| 332 |
],
|
| 333 |
"mix_s": 0.0042,
|
| 334 |
-
"llm_s": 0.
|
| 335 |
-
"tts_first_s":
|
| 336 |
"spec_start_s": 0.256,
|
| 337 |
-
"compute_to_first_audio_s": 1.
|
| 338 |
"tts_breakdown": {
|
| 339 |
"fe": 0.0,
|
| 340 |
-
"lm":
|
| 341 |
-
"flow_voc": 0.
|
| 342 |
-
"n_tok":
|
| 343 |
-
"audio_s":
|
| 344 |
},
|
| 345 |
"tts_chunks_s": [
|
| 346 |
-
|
| 347 |
-
0.662
|
| 348 |
],
|
| 349 |
-
"first_audio":
|
| 350 |
-
"reply_end":
|
| 351 |
-
"latency_s": 1.
|
| 352 |
}
|
| 353 |
]
|
| 354 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "01_igbo_greetings_english",
|
| 3 |
+
"desc": "Mostly English with Igbo greetings/closing. Includes a long turn (backchannel) and a barge-in. User turns are TTS-synthesized (Flash, female Igbo voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 7 |
+
"text": "<ibo>Ndewo!</ibo> <eng>Good morning. Please, can you help me plan my day? I have a lot to do.</eng>",
|
| 8 |
+
"wav": "/scratch/duplex_v2/user_audio/01_igbo_greetings_english_turn0.wav",
|
| 9 |
+
"orig_label": "TTS-synthesized user turn"
|
| 10 |
},
|
| 11 |
{
|
| 12 |
+
"label": "TTS-synthesized user turn (long, mid-turn pause) [identical input audio recovered from the 2026-10-24 demo]",
|
|
|
|
| 13 |
"text_parts": [
|
| 14 |
"<eng>I need to go to the bank, and then the market,</eng>",
|
| 15 |
"<eng>and in the evening I also want to call my mother.</eng>"
|
| 16 |
],
|
| 17 |
+
"inner_pause": 0.4,
|
| 18 |
+
"wav": "/scratch/duplex_v2/user_audio/01_igbo_greetings_english_turn1.wav",
|
| 19 |
+
"text": "<eng>I need to go to the bank, and then the market,</eng> <eng>and in the evening I also want to call my mother.</eng>",
|
| 20 |
+
"orig_label": "TTS-synthesized user turn (long, mid-turn pause)"
|
| 21 |
},
|
| 22 |
{
|
| 23 |
+
"label": "TTS-synthesized user turn (barge-in 1.5 s into the reply) [identical input audio recovered from the 2026-10-24 demo]",
|
|
|
|
| 24 |
"text": "<eng>Wait, sorry, the bank closes early today.</eng>",
|
| 25 |
+
"barge_at": 1.5,
|
| 26 |
+
"wav": "/scratch/duplex_v2/user_audio/01_igbo_greetings_english_turn2.wav",
|
| 27 |
+
"orig_label": "TTS-synthesized user turn (barge-in 1.5 s into the reply)"
|
| 28 |
},
|
| 29 |
{
|
| 30 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 31 |
+
"text": "<eng>Okay, thank you so much.</eng> <ibo>Daalụ!</ibo>",
|
| 32 |
+
"wav": "/scratch/duplex_v2/user_audio/01_igbo_greetings_english_turn3.wav",
|
| 33 |
+
"orig_label": "TTS-synthesized user turn"
|
| 34 |
}
|
| 35 |
],
|
| 36 |
"turns": [
|
| 37 |
{
|
| 38 |
"turn": 0,
|
| 39 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 40 |
"user_ref": "<ibo>Ndewo!</ibo> <eng>Good morning. Please, can you help me plan my day? I have a lot to do.</eng>",
|
| 41 |
"user_start": 0.7,
|
| 42 |
"user_onset": 0.762,
|
| 43 |
"backchannels": [],
|
| 44 |
+
"asr": "nde wo good morning please can you help me plan my day i have lot to do",
|
| 45 |
+
"asr_s": 0.093,
|
| 46 |
"eot_wait_s": 0.576,
|
| 47 |
"speech_end": 5.984,
|
| 48 |
"target": {
|
| 49 |
"mix": {
|
| 50 |
+
"eng": 0.88,
|
| 51 |
+
"ibo": 0.12
|
| 52 |
},
|
| 53 |
"matrix": "eng",
|
| 54 |
"pattern": [
|
|
|
|
| 57 |
]
|
| 58 |
},
|
| 59 |
"target_desc": "Match the user's language mix: English about 90%, Igbo about 10% of the words. The main (matrix) language is English. The user greeted in Igbo: open with a short Igbo greeting.",
|
| 60 |
+
"reply": "<ibo>Ụtụtụ ọma!</ibo> <eng>Of course! Let’s start with your most important tasks first. What’s the top thing you need to do today?</eng>",
|
| 61 |
"reply_mix": {
|
| 62 |
+
"eng": 0.86,
|
| 63 |
+
"ibo": 0.14
|
| 64 |
},
|
| 65 |
+
"tvd": 0.023,
|
| 66 |
"how": "first_round",
|
| 67 |
"first_cand_ok": true,
|
| 68 |
"rounds": [
|
| 69 |
{
|
| 70 |
"round": 0,
|
| 71 |
+
"llm_s": 1.106,
|
| 72 |
"cands": [
|
| 73 |
{
|
| 74 |
+
"text": "<ibo>Ụtụtụ ọma!</ibo> <eng>Of course! Let’s start with your most important tasks first. What’s the top thing you need to do today?</eng>",
|
| 75 |
"ok": true,
|
| 76 |
"why": [],
|
| 77 |
+
"tvd": 0.023
|
| 78 |
},
|
| 79 |
{
|
| 80 |
+
"text": "<ibo>Ndewo!</ibo> <eng>Of course! Let’s start with your most urgent tasks. What’s the first thing you need to do today?</eng>",
|
| 81 |
"ok": true,
|
| 82 |
"why": [],
|
| 83 |
+
"tvd": 0.069
|
| 84 |
},
|
| 85 |
{
|
| 86 |
+
"text": "<ibo>Ndewo!</ibo> <eng>Of course! Let’s start with your most important tasks first. What’s the top thing you need to do today?</eng>",
|
| 87 |
"ok": true,
|
| 88 |
"why": [],
|
| 89 |
+
"tvd": 0.07
|
| 90 |
}
|
| 91 |
]
|
| 92 |
}
|
| 93 |
],
|
| 94 |
+
"mix_s": 0.0118,
|
| 95 |
+
"llm_s": 1.106,
|
| 96 |
+
"tts_first_s": 1.196,
|
| 97 |
"spec_start_s": 0.256,
|
| 98 |
+
"compute_to_first_audio_s": 2.42,
|
| 99 |
"tts_breakdown": {
|
| 100 |
"fe": 0.0,
|
| 101 |
+
"lm": 1.121,
|
| 102 |
+
"flow_voc": 0.221,
|
| 103 |
+
"n_tok": 66,
|
| 104 |
+
"audio_s": 2.64
|
| 105 |
},
|
| 106 |
"tts_chunks_s": [
|
| 107 |
+
1.196,
|
| 108 |
+
0.707,
|
| 109 |
+
3.263,
|
| 110 |
+
1.342
|
| 111 |
],
|
| 112 |
+
"first_audio": 8.661,
|
| 113 |
+
"reply_end": 18.27,
|
| 114 |
+
"latency_s": 2.677
|
| 115 |
},
|
| 116 |
{
|
| 117 |
"turn": 1,
|
| 118 |
+
"user_label": "TTS-synthesized user turn (long, mid-turn pause) [identical input audio recovered from the 2026-10-24 demo]",
|
| 119 |
+
"user_ref": "<eng>I need to go to the bank, and then the market,</eng> <eng>and in the evening I also want to call my mother.</eng>",
|
| 120 |
+
"user_start": 18.97,
|
| 121 |
+
"user_onset": 19.026,
|
| 122 |
"backchannels": [
|
| 123 |
{
|
| 124 |
+
"t": 25.28,
|
| 125 |
"turn_s": 5.28
|
| 126 |
}
|
| 127 |
],
|
| 128 |
+
"backchannel_at": 25.28,
|
| 129 |
+
"asr": "i need to go to the bank and then the market and in the evening i also want o call my mother",
|
| 130 |
+
"asr_s": 0.093,
|
| 131 |
"eot_wait_s": 0.576,
|
| 132 |
+
"speech_end": 24.992,
|
| 133 |
"target": {
|
| 134 |
"mix": {
|
| 135 |
+
"eng": 0.96,
|
| 136 |
+
"ibo": 0.04
|
| 137 |
},
|
| 138 |
"matrix": "eng",
|
| 139 |
"pattern": []
|
| 140 |
},
|
| 141 |
"target_desc": "Match the user's language mix: English about 95%, Igbo about 5% of the words. The main (matrix) language is English.",
|
| 142 |
+
"reply": "<eng>Okay, let’s plan that. Go to the bank early, then the market, and call your mother before dinner. Need help with timings?</eng>",
|
| 143 |
"reply_mix": {
|
| 144 |
"eng": 1.0
|
| 145 |
},
|
| 146 |
+
"tvd": 0.04,
|
| 147 |
"how": "first_round",
|
| 148 |
"first_cand_ok": true,
|
| 149 |
"rounds": [
|
| 150 |
{
|
| 151 |
"round": 0,
|
| 152 |
+
"llm_s": 0.293,
|
| 153 |
"cands": [
|
| 154 |
{
|
| 155 |
+
"text": "<eng>Okay, let’s plan that. Go to the bank early, then the market, and call your mother before dinner. Need help with timings?</eng>",
|
| 156 |
"ok": true,
|
| 157 |
"why": [],
|
| 158 |
+
"tvd": 0.04
|
| 159 |
},
|
| 160 |
{
|
| 161 |
+
"text": "<eng>Okay, let’s plan that. Go to the bank early, then the market, and call your mum after dinner. Should I set a reminder?</eng> <ibo>Ọ dị mma</ibo>",
|
| 162 |
"ok": true,
|
| 163 |
"why": [],
|
| 164 |
+
"tvd": 0.078
|
| 165 |
},
|
| 166 |
{
|
| 167 |
+
"text": "<eng>Got it. Go to the bank early, then the market, and call your mother after dinner. Should I set a reminder?</eng> <ibo>Ọ dị mma</ibo>",
|
| 168 |
"ok": true,
|
| 169 |
"why": [],
|
| 170 |
+
"tvd": 0.083
|
| 171 |
}
|
| 172 |
]
|
| 173 |
}
|
| 174 |
],
|
| 175 |
+
"mix_s": 0.0157,
|
| 176 |
+
"llm_s": 0.293,
|
| 177 |
+
"tts_first_s": 0.963,
|
| 178 |
"spec_start_s": 0.256,
|
| 179 |
+
"compute_to_first_audio_s": 1.383,
|
| 180 |
"tts_breakdown": {
|
| 181 |
"fe": 0.0,
|
| 182 |
+
"lm": 0.801,
|
| 183 |
+
"flow_voc": 0.223,
|
| 184 |
+
"n_tok": 50,
|
| 185 |
+
"audio_s": 2.0
|
| 186 |
},
|
| 187 |
"tts_chunks_s": [
|
| 188 |
+
0.963,
|
| 189 |
+
4.284,
|
| 190 |
+
1.024
|
| 191 |
],
|
| 192 |
+
"first_audio": 26.631,
|
| 193 |
+
"reply_end": 37.835,
|
| 194 |
+
"latency_s": 1.639
|
| 195 |
},
|
| 196 |
{
|
| 197 |
"turn": 2,
|
| 198 |
+
"user_label": "TTS-synthesized user turn (barge-in 1.5 s into the reply) [identical input audio recovered from the 2026-10-24 demo]",
|
| 199 |
"user_ref": "<eng>Wait, sorry, the bank closes early today.</eng>",
|
| 200 |
+
"user_start": 28.131,
|
| 201 |
+
"user_onset": 28.2,
|
| 202 |
"backchannels": [],
|
| 203 |
"barge": {
|
| 204 |
+
"user_onset": 28.2,
|
| 205 |
+
"detected": 28.384,
|
| 206 |
+
"agent_stopped": 28.424,
|
| 207 |
+
"reaction_s": 0.224,
|
| 208 |
"agent_chunks_played": 1,
|
| 209 |
"agent_chunks_total": 3
|
| 210 |
},
|
| 211 |
+
"asr": "wait sorry the band closes early today",
|
| 212 |
+
"asr_s": 0.074,
|
| 213 |
"eot_wait_s": 0.576,
|
| 214 |
+
"speech_end": 30.528,
|
| 215 |
"target": {
|
| 216 |
"mix": {
|
| 217 |
"eng": 0.98
|
|
|
|
| 220 |
"pattern": []
|
| 221 |
},
|
| 222 |
"target_desc": "Match the user's language mix: English about 100% of the words. The main (matrix) language is English. Reply only in English.",
|
| 223 |
+
"reply": "<eng>Okay, no problem. Let’s adjust—go to the market first, then call your mum before the bank closes.</eng>",
|
| 224 |
"reply_mix": {
|
| 225 |
"eng": 1.0
|
| 226 |
},
|
|
|
|
| 230 |
"rounds": [
|
| 231 |
{
|
| 232 |
"round": 0,
|
| 233 |
+
"llm_s": 0.208,
|
| 234 |
"cands": [
|
| 235 |
{
|
| 236 |
+
"text": "<eng>Okay, no problem. Let’s adjust—go to the market first, then call your mum before the bank closes.</eng>",
|
| 237 |
"ok": true,
|
| 238 |
"why": [],
|
| 239 |
"tvd": 0.01
|
| 240 |
},
|
| 241 |
{
|
| 242 |
+
"text": "<eng>Okay, no problem. Let’s shift the bank visit to morning, then market, and call your mum after dinner.</eng>",
|
| 243 |
"ok": true,
|
| 244 |
"why": [],
|
| 245 |
"tvd": 0.01
|
| 246 |
},
|
| 247 |
{
|
| 248 |
+
"text": "<eng>Okay, no problem. Let’s shift the bank trip to earlier today. What time can you make it before it closes?</eng>",
|
| 249 |
"ok": true,
|
| 250 |
"why": [],
|
| 251 |
"tvd": 0.01
|
|
|
|
| 253 |
]
|
| 254 |
}
|
| 255 |
],
|
| 256 |
+
"mix_s": 0.0049,
|
| 257 |
+
"llm_s": 0.208,
|
| 258 |
+
"tts_first_s": 0.908,
|
| 259 |
"spec_start_s": 0.256,
|
| 260 |
+
"compute_to_first_audio_s": 1.209,
|
| 261 |
"tts_breakdown": {
|
| 262 |
"fe": 0.0,
|
| 263 |
+
"lm": 2.513,
|
| 264 |
+
"flow_voc": 0.285,
|
| 265 |
+
"n_tok": 130,
|
| 266 |
+
"audio_s": 5.2
|
| 267 |
},
|
| 268 |
"tts_chunks_s": [
|
| 269 |
+
0.908,
|
| 270 |
+
2.798
|
|
|
|
| 271 |
],
|
| 272 |
+
"first_audio": 31.993,
|
| 273 |
+
"reply_end": 39.991,
|
| 274 |
+
"latency_s": 1.465
|
| 275 |
},
|
| 276 |
{
|
| 277 |
"turn": 3,
|
| 278 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 279 |
"user_ref": "<eng>Okay, thank you so much.</eng> <ibo>Daalụ!</ibo>",
|
| 280 |
+
"user_start": 40.691,
|
| 281 |
+
"user_onset": 40.753,
|
| 282 |
"backchannels": [],
|
| 283 |
+
"asr": "ok thank you so much talo",
|
| 284 |
+
"asr_s": 0.05,
|
| 285 |
"eot_wait_s": 0.576,
|
| 286 |
+
"speech_end": 43.104,
|
| 287 |
"target": {
|
| 288 |
"mix": {
|
| 289 |
+
"eng": 0.99
|
|
|
|
| 290 |
},
|
| 291 |
"matrix": "eng",
|
| 292 |
+
"pattern": []
|
|
|
|
|
|
|
|
|
|
| 293 |
},
|
| 294 |
+
"target_desc": "Match the user's language mix: English about 100% of the words. The main (matrix) language is English. Reply only in English.",
|
| 295 |
+
"reply": "<eng>You're very welcome, Talos!</eng>",
|
| 296 |
"reply_mix": {
|
| 297 |
+
"eng": 1.0
|
|
|
|
| 298 |
},
|
| 299 |
+
"tvd": 0.005,
|
| 300 |
"how": "first_round",
|
| 301 |
"first_cand_ok": true,
|
| 302 |
"rounds": [
|
| 303 |
{
|
| 304 |
"round": 0,
|
| 305 |
+
"llm_s": 0.17,
|
| 306 |
"cands": [
|
| 307 |
{
|
| 308 |
+
"text": "<eng>You're very welcome, Talos!</eng>",
|
| 309 |
"ok": true,
|
| 310 |
"why": [],
|
| 311 |
+
"tvd": 0.005
|
| 312 |
},
|
| 313 |
{
|
| 314 |
+
"text": "<eng>You’re welcome, Talu! Have a great day—stay calm and organized.</eng>",
|
| 315 |
+
"ok": true,
|
| 316 |
+
"why": [],
|
| 317 |
+
"tvd": 0.005
|
|
|
|
|
|
|
| 318 |
},
|
| 319 |
{
|
| 320 |
+
"text": "<eng>You’re welcome, Tallo! Have a great day.</eng>",
|
| 321 |
+
"ok": true,
|
| 322 |
+
"why": [],
|
| 323 |
+
"tvd": 0.005
|
|
|
|
|
|
|
| 324 |
}
|
| 325 |
]
|
| 326 |
}
|
| 327 |
],
|
| 328 |
"mix_s": 0.0042,
|
| 329 |
+
"llm_s": 0.17,
|
| 330 |
+
"tts_first_s": 1.361,
|
| 331 |
"spec_start_s": 0.256,
|
| 332 |
+
"compute_to_first_audio_s": 1.593,
|
| 333 |
"tts_breakdown": {
|
| 334 |
"fe": 0.0,
|
| 335 |
+
"lm": 1.138,
|
| 336 |
+
"flow_voc": 0.223,
|
| 337 |
+
"n_tok": 67,
|
| 338 |
+
"audio_s": 2.68
|
| 339 |
},
|
| 340 |
"tts_chunks_s": [
|
| 341 |
+
1.361
|
|
|
|
| 342 |
],
|
| 343 |
+
"first_audio": 44.953,
|
| 344 |
+
"reply_end": 47.633,
|
| 345 |
+
"latency_s": 1.849
|
| 346 |
}
|
| 347 |
]
|
| 348 |
}
|
samples/01_igbo_greetings_english.mp3
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2ba5c48e1cabad48537b1121aa661e8c577edcab6b4c88c2c96d0b97099a43bc
|
| 3 |
+
size 579788
|
samples/02_yoruba_greetings_english.json
ADDED
|
@@ -0,0 +1,251 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "02_yoruba_greetings_english",
|
| 3 |
+
"desc": "Yoruba greetings + English. User turns TTS-synthesized (Flash, female Yoruba voice).",
|
| 4 |
+
"user_turns": [
|
| 5 |
+
{
|
| 6 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 7 |
+
"text": "<yor>Ẹ káàárọ̀!</yor> <eng>I want to buy a new phone for my sister.</eng>",
|
| 8 |
+
"wav": "/scratch/duplex_v2/user_audio/02_yoruba_greetings_english_turn0.wav",
|
| 9 |
+
"orig_label": "TTS-synthesized user turn"
|
| 10 |
+
},
|
| 11 |
+
{
|
| 12 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 13 |
+
"text": "<eng>Her budget is about one hundred thousand naira.</eng>",
|
| 14 |
+
"wav": "/scratch/duplex_v2/user_audio/02_yoruba_greetings_english_turn1.wav",
|
| 15 |
+
"orig_label": "TTS-synthesized user turn"
|
| 16 |
+
},
|
| 17 |
+
{
|
| 18 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 19 |
+
"text": "<eng>Okay, that sounds good.</eng> <yor>Ẹ ṣé!</yor>",
|
| 20 |
+
"wav": "/scratch/duplex_v2/user_audio/02_yoruba_greetings_english_turn2.wav",
|
| 21 |
+
"orig_label": "TTS-synthesized user turn"
|
| 22 |
+
}
|
| 23 |
+
],
|
| 24 |
+
"turns": [
|
| 25 |
+
{
|
| 26 |
+
"turn": 0,
|
| 27 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 28 |
+
"user_ref": "<yor>Ẹ káàárọ̀!</yor> <eng>I want to buy a new phone for my sister.</eng>",
|
| 29 |
+
"user_start": 0.7,
|
| 30 |
+
"user_onset": 0.715,
|
| 31 |
+
"backchannels": [],
|
| 32 |
+
"asr": "ẹka arọ i want to buy any phone for my sisters",
|
| 33 |
+
"asr_s": 0.079,
|
| 34 |
+
"eot_wait_s": 0.576,
|
| 35 |
+
"speech_end": 4.096,
|
| 36 |
+
"target": {
|
| 37 |
+
"mix": {
|
| 38 |
+
"eng": 0.82,
|
| 39 |
+
"yor": 0.18
|
| 40 |
+
},
|
| 41 |
+
"matrix": "eng",
|
| 42 |
+
"pattern": [
|
| 43 |
+
"inter-sentential"
|
| 44 |
+
]
|
| 45 |
+
},
|
| 46 |
+
"target_desc": "Match the user's language mix: English about 80%, Yoruba about 20% of the words. The main (matrix) language is English.",
|
| 47 |
+
"reply": "<eng>Okay, I hear you. What kind of phone are you thinking for your sisters?</eng> <yor>Ọmọ rẹ wà?</yor>",
|
| 48 |
+
"reply_mix": {
|
| 49 |
+
"eng": 0.82,
|
| 50 |
+
"yor": 0.18
|
| 51 |
+
},
|
| 52 |
+
"tvd": 0.002,
|
| 53 |
+
"how": "first_round",
|
| 54 |
+
"first_cand_ok": true,
|
| 55 |
+
"rounds": [
|
| 56 |
+
{
|
| 57 |
+
"round": 0,
|
| 58 |
+
"llm_s": 0.851,
|
| 59 |
+
"cands": [
|
| 60 |
+
{
|
| 61 |
+
"text": "<eng>Okay, I understand. What kind of phone are you looking for—new or used?</eng> <yor>Àwọn àwọn àwọn àwọn?</yor>",
|
| 62 |
+
"ok": true,
|
| 63 |
+
"why": [],
|
| 64 |
+
"tvd": 0.048
|
| 65 |
+
},
|
| 66 |
+
{
|
| 67 |
+
"text": "<eng>Okay, I hear you. What kind of phone are you thinking for your sisters?</eng> <yor>Ọmọ rẹ wà?</yor>",
|
| 68 |
+
"ok": true,
|
| 69 |
+
"why": [],
|
| 70 |
+
"tvd": 0.002
|
| 71 |
+
},
|
| 72 |
+
{
|
| 73 |
+
"text": "<eng>Ẹ káàárọ̀! What kind of phone are you looking for—brand, price, or features?</eng> <yor>Ẹ káàárọ̀!</yor>",
|
| 74 |
+
"ok": true,
|
| 75 |
+
"why": [],
|
| 76 |
+
"tvd": 0.012
|
| 77 |
+
}
|
| 78 |
+
]
|
| 79 |
+
}
|
| 80 |
+
],
|
| 81 |
+
"mix_s": 0.0076,
|
| 82 |
+
"llm_s": 0.851,
|
| 83 |
+
"tts_first_s": 1.032,
|
| 84 |
+
"spec_start_s": 0.256,
|
| 85 |
+
"compute_to_first_audio_s": 1.984,
|
| 86 |
+
"tts_breakdown": {
|
| 87 |
+
"fe": 0.0,
|
| 88 |
+
"lm": 0.616,
|
| 89 |
+
"flow_voc": 0.22,
|
| 90 |
+
"n_tok": 39,
|
| 91 |
+
"audio_s": 1.56
|
| 92 |
+
},
|
| 93 |
+
"tts_chunks_s": [
|
| 94 |
+
1.032,
|
| 95 |
+
1.483,
|
| 96 |
+
0.836
|
| 97 |
+
],
|
| 98 |
+
"first_audio": 6.335,
|
| 99 |
+
"reply_end": 12.895,
|
| 100 |
+
"latency_s": 2.239
|
| 101 |
+
},
|
| 102 |
+
{
|
| 103 |
+
"turn": 1,
|
| 104 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 105 |
+
"user_ref": "<eng>Her budget is about one hundred thousand naira.</eng>",
|
| 106 |
+
"user_start": 13.595,
|
| 107 |
+
"user_onset": 13.83,
|
| 108 |
+
"backchannels": [],
|
| 109 |
+
"asr": "her budget is about 100 000 naira",
|
| 110 |
+
"asr_s": 0.066,
|
| 111 |
+
"eot_wait_s": 0.576,
|
| 112 |
+
"speech_end": 16.736,
|
| 113 |
+
"target": {
|
| 114 |
+
"mix": {
|
| 115 |
+
"eng": 0.95,
|
| 116 |
+
"yor": 0.05
|
| 117 |
+
},
|
| 118 |
+
"matrix": "eng",
|
| 119 |
+
"pattern": []
|
| 120 |
+
},
|
| 121 |
+
"target_desc": "Match the user's language mix: English about 95%, Yoruba about 5% of the words. The main (matrix) language is English.",
|
| 122 |
+
"reply": "<eng>Okay, with one hundred thousand naira, we can find a good smartphone for her. Any preferred brand?</eng> <yor>Ọmọ rẹ wà?</yor>",
|
| 123 |
+
"reply_mix": {
|
| 124 |
+
"eng": 0.85,
|
| 125 |
+
"yor": 0.15
|
| 126 |
+
},
|
| 127 |
+
"tvd": 0.1,
|
| 128 |
+
"how": "first_round",
|
| 129 |
+
"first_cand_ok": true,
|
| 130 |
+
"rounds": [
|
| 131 |
+
{
|
| 132 |
+
"round": 0,
|
| 133 |
+
"llm_s": 0.345,
|
| 134 |
+
"cands": [
|
| 135 |
+
{
|
| 136 |
+
"text": "<eng>Okay, with one hundred thousand naira, we can find a good smartphone for her. Any preferred brand?</eng> <yor>Ọmọ rẹ wà?</yor>",
|
| 137 |
+
"ok": true,
|
| 138 |
+
"why": [],
|
| 139 |
+
"tvd": 0.1
|
| 140 |
+
},
|
| 141 |
+
{
|
| 142 |
+
"text": "<eng>Okay, with one hundred thousand naira, we can find a good phone for her. Any brand preference?</eng> <yor>Ọmọ rẹ wà?</yor>",
|
| 143 |
+
"ok": true,
|
| 144 |
+
"why": [],
|
| 145 |
+
"tvd": 0.1
|
| 146 |
+
},
|
| 147 |
+
{
|
| 148 |
+
"text": "<eng>Okay, with a budget of one hundred thousand naira, I can suggest a few good phones. Do you want something with a good camera?</eng> <yor>Àwọn àkẹ́kẹ́ ní àwọn àwọn?</yor>",
|
| 149 |
+
"ok": true,
|
| 150 |
+
"why": [],
|
| 151 |
+
"tvd": 0.121
|
| 152 |
+
}
|
| 153 |
+
]
|
| 154 |
+
}
|
| 155 |
+
],
|
| 156 |
+
"mix_s": 0.0038,
|
| 157 |
+
"llm_s": 0.345,
|
| 158 |
+
"tts_first_s": 0.59,
|
| 159 |
+
"spec_start_s": 0.256,
|
| 160 |
+
"compute_to_first_audio_s": 1.021,
|
| 161 |
+
"tts_breakdown": {
|
| 162 |
+
"fe": 0.0,
|
| 163 |
+
"lm": 0.53,
|
| 164 |
+
"flow_voc": 0.221,
|
| 165 |
+
"n_tok": 34,
|
| 166 |
+
"audio_s": 1.36
|
| 167 |
+
},
|
| 168 |
+
"tts_chunks_s": [
|
| 169 |
+
0.59,
|
| 170 |
+
2.303,
|
| 171 |
+
1.014,
|
| 172 |
+
0.751
|
| 173 |
+
],
|
| 174 |
+
"first_audio": 18.013,
|
| 175 |
+
"reply_end": 28.357,
|
| 176 |
+
"latency_s": 1.277
|
| 177 |
+
},
|
| 178 |
+
{
|
| 179 |
+
"turn": 2,
|
| 180 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 181 |
+
"user_ref": "<eng>Okay, that sounds good.</eng> <yor>Ẹ ṣé!</yor>",
|
| 182 |
+
"user_start": 29.057,
|
| 183 |
+
"user_onset": 29.312,
|
| 184 |
+
"backchannels": [],
|
| 185 |
+
"asr": "oka that sounds good she",
|
| 186 |
+
"asr_s": 0.077,
|
| 187 |
+
"eot_wait_s": 0.576,
|
| 188 |
+
"speech_end": 31.808,
|
| 189 |
+
"target": {
|
| 190 |
+
"mix": {
|
| 191 |
+
"eng": 0.97
|
| 192 |
+
},
|
| 193 |
+
"matrix": "eng",
|
| 194 |
+
"pattern": []
|
| 195 |
+
},
|
| 196 |
+
"target_desc": "Match the user's language mix: English about 95% of the words. The main (matrix) language is English. Reply only in English.",
|
| 197 |
+
"reply": "<eng>Okay, that sounds good. She has a favorite brand in mind?</eng>",
|
| 198 |
+
"reply_mix": {
|
| 199 |
+
"eng": 1.0
|
| 200 |
+
},
|
| 201 |
+
"tvd": 0.015,
|
| 202 |
+
"how": "first_round",
|
| 203 |
+
"first_cand_ok": true,
|
| 204 |
+
"rounds": [
|
| 205 |
+
{
|
| 206 |
+
"round": 0,
|
| 207 |
+
"llm_s": 0.207,
|
| 208 |
+
"cands": [
|
| 209 |
+
{
|
| 210 |
+
"text": "<eng>Okay, that sounds good. She has a favorite brand in mind?</eng>",
|
| 211 |
+
"ok": true,
|
| 212 |
+
"why": [],
|
| 213 |
+
"tvd": 0.015
|
| 214 |
+
},
|
| 215 |
+
{
|
| 216 |
+
"text": "<eng>Okay, that sounds good. She likes any particular brand like Samsung, iPhone, or Tecno?</eng>",
|
| 217 |
+
"ok": true,
|
| 218 |
+
"why": [],
|
| 219 |
+
"tvd": 0.015
|
| 220 |
+
},
|
| 221 |
+
{
|
| 222 |
+
"text": "<eng>Great! She’ll love it. Should we look for a phone with a good camera or long battery life?</eng>",
|
| 223 |
+
"ok": true,
|
| 224 |
+
"why": [],
|
| 225 |
+
"tvd": 0.015
|
| 226 |
+
}
|
| 227 |
+
]
|
| 228 |
+
}
|
| 229 |
+
],
|
| 230 |
+
"mix_s": 0.0034,
|
| 231 |
+
"llm_s": 0.207,
|
| 232 |
+
"tts_first_s": 1.217,
|
| 233 |
+
"spec_start_s": 0.256,
|
| 234 |
+
"compute_to_first_audio_s": 1.515,
|
| 235 |
+
"tts_breakdown": {
|
| 236 |
+
"fe": 0.0,
|
| 237 |
+
"lm": 0.887,
|
| 238 |
+
"flow_voc": 0.221,
|
| 239 |
+
"n_tok": 55,
|
| 240 |
+
"audio_s": 2.2
|
| 241 |
+
},
|
| 242 |
+
"tts_chunks_s": [
|
| 243 |
+
1.217,
|
| 244 |
+
1.109
|
| 245 |
+
],
|
| 246 |
+
"first_audio": 33.579,
|
| 247 |
+
"reply_end": 38.219,
|
| 248 |
+
"latency_s": 1.771
|
| 249 |
+
}
|
| 250 |
+
]
|
| 251 |
+
}
|
samples/02_yoruba_greetings_english.mp3
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:c7172c7ba7a76c68e8d453f335ff3d474dc4a21f727829d4d3beff33fd41fb03
|
| 3 |
+
size 466892
|
samples/03_pidgin_bargein.json
CHANGED
|
@@ -3,32 +3,35 @@
|
|
| 3 |
"desc": "Nigerian Pidgin throughout, with a barge-in. User turns TTS-synthesized (Flash, female voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
-
"label": "TTS-synthesized user turn",
|
| 7 |
-
"
|
| 8 |
-
"
|
|
|
|
| 9 |
},
|
| 10 |
{
|
| 11 |
-
"label": "TTS-synthesized user turn (barge-in 1.2 s into the reply)",
|
| 12 |
-
"voice": "waxal_yor_5_female",
|
| 13 |
"text": "<pcm>No be rice o, I no get rice for house.</pcm>",
|
| 14 |
-
"barge_at": 1.2
|
|
|
|
|
|
|
| 15 |
},
|
| 16 |
{
|
| 17 |
-
"label": "TTS-synthesized user turn",
|
| 18 |
-
"
|
| 19 |
-
"
|
|
|
|
| 20 |
}
|
| 21 |
],
|
| 22 |
"turns": [
|
| 23 |
{
|
| 24 |
"turn": 0,
|
| 25 |
-
"user_label": "TTS-synthesized user turn",
|
| 26 |
"user_ref": "<pcm>How far? Abeg, wetin I fit cook tonight wey no go take long?</pcm>",
|
| 27 |
"user_start": 0.7,
|
| 28 |
"user_onset": 0.764,
|
| 29 |
"backchannels": [],
|
| 30 |
-
"asr": "how far i beg
|
| 31 |
-
"asr_s": 0.
|
| 32 |
"eot_wait_s": 0.576,
|
| 33 |
"speech_end": 4.768,
|
| 34 |
"target": {
|
|
@@ -41,7 +44,7 @@
|
|
| 41 |
]
|
| 42 |
},
|
| 43 |
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin. The user greeted in Nigerian Pidgin: open with a short Nigerian Pidgin greeting. Reply only in Nigerian Pidgin.",
|
| 44 |
-
"reply": "<pcm>How far
|
| 45 |
"reply_mix": {
|
| 46 |
"pcm": 1.0
|
| 47 |
},
|
|
@@ -51,22 +54,22 @@
|
|
| 51 |
"rounds": [
|
| 52 |
{
|
| 53 |
"round": 0,
|
| 54 |
-
"llm_s": 0.
|
| 55 |
"cands": [
|
| 56 |
{
|
| 57 |
-
"text": "<pcm>How far
|
| 58 |
"ok": true,
|
| 59 |
"why": [],
|
| 60 |
"tvd": 0.0
|
| 61 |
},
|
| 62 |
{
|
| 63 |
-
"text": "<pcm>How far!
|
| 64 |
"ok": true,
|
| 65 |
"why": [],
|
| 66 |
"tvd": 0.0
|
| 67 |
},
|
| 68 |
{
|
| 69 |
-
"text": "<pcm>How far!
|
| 70 |
"ok": true,
|
| 71 |
"why": [],
|
| 72 |
"tvd": 0.0
|
|
@@ -74,57 +77,55 @@
|
|
| 74 |
]
|
| 75 |
}
|
| 76 |
],
|
| 77 |
-
"mix_s": 0.
|
| 78 |
-
"llm_s": 0.
|
| 79 |
-
"tts_first_s": 0.
|
| 80 |
"spec_start_s": 0.256,
|
| 81 |
-
"compute_to_first_audio_s": 1.
|
| 82 |
"tts_breakdown": {
|
| 83 |
"fe": 0.0,
|
| 84 |
-
"lm": 0.
|
| 85 |
-
"flow_voc": 0.
|
| 86 |
-
"n_tok":
|
| 87 |
-
"audio_s": 1.
|
| 88 |
},
|
| 89 |
"tts_chunks_s": [
|
| 90 |
-
0.
|
| 91 |
-
|
| 92 |
-
0.
|
| 93 |
],
|
| 94 |
-
"first_audio": 6.
|
| 95 |
-
"reply_end":
|
| 96 |
-
"latency_s": 1.
|
| 97 |
},
|
| 98 |
{
|
| 99 |
"turn": 1,
|
| 100 |
-
"user_label": "TTS-synthesized user turn (barge-in 1.2 s into the reply)",
|
| 101 |
"user_ref": "<pcm>No be rice o, I no get rice for house.</pcm>",
|
| 102 |
-
"user_start": 7.
|
| 103 |
-
"user_onset": 7.
|
| 104 |
"backchannels": [],
|
| 105 |
"barge": {
|
| 106 |
-
"user_onset": 7.
|
| 107 |
-
"detected": 7.
|
| 108 |
-
"agent_stopped": 7.
|
| 109 |
-
"reaction_s": 0.
|
| 110 |
"agent_chunks_played": 1,
|
| 111 |
"agent_chunks_total": 3
|
| 112 |
},
|
| 113 |
-
"asr": "no be rice
|
| 114 |
-
"asr_s": 0.
|
| 115 |
"eot_wait_s": 0.576,
|
| 116 |
-
"speech_end": 11.
|
| 117 |
"target": {
|
| 118 |
"mix": {
|
| 119 |
"pcm": 1.0
|
| 120 |
},
|
| 121 |
"matrix": "pcm",
|
| 122 |
-
"pattern": [
|
| 123 |
-
"discourse:pcm"
|
| 124 |
-
]
|
| 125 |
},
|
| 126 |
-
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin.
|
| 127 |
-
"reply": "<pcm>
|
| 128 |
"reply_mix": {
|
| 129 |
"pcm": 1.0
|
| 130 |
},
|
|
@@ -134,22 +135,22 @@
|
|
| 134 |
"rounds": [
|
| 135 |
{
|
| 136 |
"round": 0,
|
| 137 |
-
"llm_s": 0.
|
| 138 |
"cands": [
|
| 139 |
{
|
| 140 |
-
"text": "<pcm>
|
| 141 |
"ok": true,
|
| 142 |
"why": [],
|
| 143 |
"tvd": 0.0
|
| 144 |
},
|
| 145 |
{
|
| 146 |
-
"text": "<pcm>
|
| 147 |
"ok": true,
|
| 148 |
"why": [],
|
| 149 |
"tvd": 0.0
|
| 150 |
},
|
| 151 |
{
|
| 152 |
-
"text": "<pcm>No wahala,
|
| 153 |
"ok": true,
|
| 154 |
"why": [],
|
| 155 |
"tvd": 0.0
|
|
@@ -157,38 +158,38 @@
|
|
| 157 |
]
|
| 158 |
}
|
| 159 |
],
|
| 160 |
-
"mix_s": 0.
|
| 161 |
-
"llm_s": 0.
|
| 162 |
-
"tts_first_s":
|
| 163 |
"spec_start_s": 0.256,
|
| 164 |
-
"compute_to_first_audio_s": 1.
|
| 165 |
"tts_breakdown": {
|
| 166 |
"fe": 0.0,
|
| 167 |
-
"lm":
|
| 168 |
-
"flow_voc": 0.
|
| 169 |
-
"n_tok":
|
| 170 |
-
"audio_s":
|
| 171 |
},
|
| 172 |
"tts_chunks_s": [
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
],
|
| 177 |
-
"first_audio": 12.
|
| 178 |
-
"reply_end":
|
| 179 |
-
"latency_s": 1.
|
| 180 |
},
|
| 181 |
{
|
| 182 |
"turn": 2,
|
| 183 |
-
"user_label": "TTS-synthesized user turn",
|
| 184 |
"user_ref": "<pcm>Okay, na so. Thank you well well.</pcm>",
|
| 185 |
-
"user_start":
|
| 186 |
-
"user_onset":
|
| 187 |
"backchannels": [],
|
| 188 |
-
"asr": "
|
| 189 |
-
"asr_s": 0.
|
| 190 |
"eot_wait_s": 0.576,
|
| 191 |
-
"speech_end":
|
| 192 |
"target": {
|
| 193 |
"mix": {
|
| 194 |
"pcm": 1.0
|
|
@@ -199,7 +200,7 @@
|
|
| 199 |
]
|
| 200 |
},
|
| 201 |
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin. Sprinkle a Nigerian Pidgin discourse word or two the way the user did. Reply only in Nigerian Pidgin.",
|
| 202 |
-
"reply": "<pcm>
|
| 203 |
"reply_mix": {
|
| 204 |
"pcm": 1.0
|
| 205 |
},
|
|
@@ -209,22 +210,22 @@
|
|
| 209 |
"rounds": [
|
| 210 |
{
|
| 211 |
"round": 0,
|
| 212 |
-
"llm_s": 0.
|
| 213 |
"cands": [
|
| 214 |
{
|
| 215 |
-
"text": "<pcm>
|
| 216 |
"ok": true,
|
| 217 |
"why": [],
|
| 218 |
"tvd": 0.0
|
| 219 |
},
|
| 220 |
{
|
| 221 |
-
"text": "<pcm>
|
| 222 |
"ok": true,
|
| 223 |
"why": [],
|
| 224 |
"tvd": 0.0
|
| 225 |
},
|
| 226 |
{
|
| 227 |
-
"text": "<pcm>
|
| 228 |
"ok": true,
|
| 229 |
"why": [],
|
| 230 |
"tvd": 0.0
|
|
@@ -233,25 +234,25 @@
|
|
| 233 |
}
|
| 234 |
],
|
| 235 |
"mix_s": 0.0048,
|
| 236 |
-
"llm_s": 0.
|
| 237 |
-
"tts_first_s":
|
| 238 |
"spec_start_s": 0.256,
|
| 239 |
-
"compute_to_first_audio_s": 1.
|
| 240 |
"tts_breakdown": {
|
| 241 |
"fe": 0.0,
|
| 242 |
-
"lm": 1.
|
| 243 |
-
"flow_voc": 0.
|
| 244 |
-
"n_tok":
|
| 245 |
-
"audio_s": 2.
|
| 246 |
},
|
| 247 |
"tts_chunks_s": [
|
| 248 |
-
|
| 249 |
-
|
| 250 |
-
1.
|
| 251 |
],
|
| 252 |
-
"first_audio":
|
| 253 |
-
"reply_end":
|
| 254 |
-
"latency_s": 1.
|
| 255 |
}
|
| 256 |
]
|
| 257 |
}
|
|
|
|
| 3 |
"desc": "Nigerian Pidgin throughout, with a barge-in. User turns TTS-synthesized (Flash, female voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 7 |
+
"text": "<pcm>How far? Abeg, wetin I fit cook tonight wey no go take long?</pcm>",
|
| 8 |
+
"wav": "/scratch/duplex_v2/user_audio/03_pidgin_bargein_turn0.wav",
|
| 9 |
+
"orig_label": "TTS-synthesized user turn"
|
| 10 |
},
|
| 11 |
{
|
| 12 |
+
"label": "TTS-synthesized user turn (barge-in 1.2 s into the reply) [identical input audio recovered from the 2026-10-24 demo]",
|
|
|
|
| 13 |
"text": "<pcm>No be rice o, I no get rice for house.</pcm>",
|
| 14 |
+
"barge_at": 1.2,
|
| 15 |
+
"wav": "/scratch/duplex_v2/user_audio/03_pidgin_bargein_turn1.wav",
|
| 16 |
+
"orig_label": "TTS-synthesized user turn (barge-in 1.2 s into the reply)"
|
| 17 |
},
|
| 18 |
{
|
| 19 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 20 |
+
"text": "<pcm>Okay, na so. Thank you well well.</pcm>",
|
| 21 |
+
"wav": "/scratch/duplex_v2/user_audio/03_pidgin_bargein_turn2.wav",
|
| 22 |
+
"orig_label": "TTS-synthesized user turn"
|
| 23 |
}
|
| 24 |
],
|
| 25 |
"turns": [
|
| 26 |
{
|
| 27 |
"turn": 0,
|
| 28 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 29 |
"user_ref": "<pcm>How far? Abeg, wetin I fit cook tonight wey no go take long?</pcm>",
|
| 30 |
"user_start": 0.7,
|
| 31 |
"user_onset": 0.764,
|
| 32 |
"backchannels": [],
|
| 33 |
+
"asr": "how far i beg wetin i fit cook tonight when no go take long",
|
| 34 |
+
"asr_s": 0.086,
|
| 35 |
"eot_wait_s": 0.576,
|
| 36 |
"speech_end": 4.768,
|
| 37 |
"target": {
|
|
|
|
| 44 |
]
|
| 45 |
},
|
| 46 |
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin. The user greeted in Nigerian Pidgin: open with a short Nigerian Pidgin greeting. Reply only in Nigerian Pidgin.",
|
| 47 |
+
"reply": "<pcm>How far! You fit cook moi moi or amala with egusi soup, e no go pass twenty minutes. You dey need pepper?</pcm>",
|
| 48 |
"reply_mix": {
|
| 49 |
"pcm": 1.0
|
| 50 |
},
|
|
|
|
| 54 |
"rounds": [
|
| 55 |
{
|
| 56 |
"round": 0,
|
| 57 |
+
"llm_s": 0.232,
|
| 58 |
"cands": [
|
| 59 |
{
|
| 60 |
+
"text": "<pcm>How far! You fit cook moi moi or amala with egusi soup, e no go pass twenty minutes. You dey need pepper?</pcm>",
|
| 61 |
"ok": true,
|
| 62 |
"why": [],
|
| 63 |
"tvd": 0.0
|
| 64 |
},
|
| 65 |
{
|
| 66 |
+
"text": "<pcm>How far! You fit cook efo riro with pepper soup, e no go take long. You get pepper for that?</pcm>",
|
| 67 |
"ok": true,
|
| 68 |
"why": [],
|
| 69 |
"tvd": 0.0
|
| 70 |
},
|
| 71 |
{
|
| 72 |
+
"text": "<pcm>How far! You fit cook pepper soup with garri, e no go pass twenty minutes. You get pepper for that?</pcm>",
|
| 73 |
"ok": true,
|
| 74 |
"why": [],
|
| 75 |
"tvd": 0.0
|
|
|
|
| 77 |
]
|
| 78 |
}
|
| 79 |
],
|
| 80 |
+
"mix_s": 0.0099,
|
| 81 |
+
"llm_s": 0.232,
|
| 82 |
+
"tts_first_s": 0.662,
|
| 83 |
"spec_start_s": 0.256,
|
| 84 |
+
"compute_to_first_audio_s": 1.003,
|
| 85 |
"tts_breakdown": {
|
| 86 |
"fe": 0.0,
|
| 87 |
+
"lm": 0.516,
|
| 88 |
+
"flow_voc": 0.22,
|
| 89 |
+
"n_tok": 33,
|
| 90 |
+
"audio_s": 1.32
|
| 91 |
},
|
| 92 |
"tts_chunks_s": [
|
| 93 |
+
0.662,
|
| 94 |
+
5.019,
|
| 95 |
+
0.736
|
| 96 |
],
|
| 97 |
+
"first_audio": 6.027,
|
| 98 |
+
"reply_end": 19.286,
|
| 99 |
+
"latency_s": 1.259
|
| 100 |
},
|
| 101 |
{
|
| 102 |
"turn": 1,
|
| 103 |
+
"user_label": "TTS-synthesized user turn (barge-in 1.2 s into the reply) [identical input audio recovered from the 2026-10-24 demo]",
|
| 104 |
"user_ref": "<pcm>No be rice o, I no get rice for house.</pcm>",
|
| 105 |
+
"user_start": 7.227,
|
| 106 |
+
"user_onset": 7.493,
|
| 107 |
"backchannels": [],
|
| 108 |
"barge": {
|
| 109 |
+
"user_onset": 7.493,
|
| 110 |
+
"detected": 7.712,
|
| 111 |
+
"agent_stopped": 7.752,
|
| 112 |
+
"reaction_s": 0.259,
|
| 113 |
"agent_chunks_played": 1,
|
| 114 |
"agent_chunks_total": 3
|
| 115 |
},
|
| 116 |
+
"asr": "no be rice oh i no get rice for house",
|
| 117 |
+
"asr_s": 0.082,
|
| 118 |
"eot_wait_s": 0.576,
|
| 119 |
+
"speech_end": 11.072,
|
| 120 |
"target": {
|
| 121 |
"mix": {
|
| 122 |
"pcm": 1.0
|
| 123 |
},
|
| 124 |
"matrix": "pcm",
|
| 125 |
+
"pattern": []
|
|
|
|
|
|
|
| 126 |
},
|
| 127 |
+
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin. Reply only in Nigerian Pidgin.",
|
| 128 |
+
"reply": "<pcm>Abeg, no worry! You fit cook beans with pepper soup—no rice, no problem. Wetin you fit use?</pcm>",
|
| 129 |
"reply_mix": {
|
| 130 |
"pcm": 1.0
|
| 131 |
},
|
|
|
|
| 135 |
"rounds": [
|
| 136 |
{
|
| 137 |
"round": 0,
|
| 138 |
+
"llm_s": 0.221,
|
| 139 |
"cands": [
|
| 140 |
{
|
| 141 |
+
"text": "<pcm>Abeg, no worry! You fit cook beans with pepper soup—no rice, no problem. Wetin you fit use?</pcm>",
|
| 142 |
"ok": true,
|
| 143 |
"why": [],
|
| 144 |
"tvd": 0.0
|
| 145 |
},
|
| 146 |
{
|
| 147 |
+
"text": "<pcm>Abeg, no worry! You fit make garri and beans with pepper soup—no go take more than twenty minutes.</pcm>",
|
| 148 |
"ok": true,
|
| 149 |
"why": [],
|
| 150 |
"tvd": 0.0
|
| 151 |
},
|
| 152 |
{
|
| 153 |
+
"text": "<pcm>No wahala, you fit cook garri with beans, e no go take long and no need rice.</pcm>",
|
| 154 |
"ok": true,
|
| 155 |
"why": [],
|
| 156 |
"tvd": 0.0
|
|
|
|
| 158 |
]
|
| 159 |
}
|
| 160 |
],
|
| 161 |
+
"mix_s": 0.0069,
|
| 162 |
+
"llm_s": 0.221,
|
| 163 |
+
"tts_first_s": 1.206,
|
| 164 |
"spec_start_s": 0.256,
|
| 165 |
+
"compute_to_first_audio_s": 1.528,
|
| 166 |
"tts_breakdown": {
|
| 167 |
"fe": 0.0,
|
| 168 |
+
"lm": 0.755,
|
| 169 |
+
"flow_voc": 0.223,
|
| 170 |
+
"n_tok": 47,
|
| 171 |
+
"audio_s": 1.88
|
| 172 |
},
|
| 173 |
"tts_chunks_s": [
|
| 174 |
+
1.206,
|
| 175 |
+
2.214,
|
| 176 |
+
0.978
|
| 177 |
],
|
| 178 |
+
"first_audio": 12.856,
|
| 179 |
+
"reply_end": 21.776,
|
| 180 |
+
"latency_s": 1.784
|
| 181 |
},
|
| 182 |
{
|
| 183 |
"turn": 2,
|
| 184 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 185 |
"user_ref": "<pcm>Okay, na so. Thank you well well.</pcm>",
|
| 186 |
+
"user_start": 22.476,
|
| 187 |
+
"user_onset": 22.746,
|
| 188 |
"backchannels": [],
|
| 189 |
+
"asr": "oka na so thank you gbee well",
|
| 190 |
+
"asr_s": 0.065,
|
| 191 |
"eot_wait_s": 0.576,
|
| 192 |
+
"speech_end": 26.464,
|
| 193 |
"target": {
|
| 194 |
"mix": {
|
| 195 |
"pcm": 1.0
|
|
|
|
| 200 |
]
|
| 201 |
},
|
| 202 |
"target_desc": "Match the user's language mix: Nigerian Pidgin about 100% of the words. The main (matrix) language is Nigerian Pidgin. Sprinkle a Nigerian Pidgin discourse word or two the way the user did. Reply only in Nigerian Pidgin.",
|
| 203 |
+
"reply": "<pcm>Na so, thank you well well! I dey glad I fit help. We go see later, no wahala.</pcm>",
|
| 204 |
"reply_mix": {
|
| 205 |
"pcm": 1.0
|
| 206 |
},
|
|
|
|
| 210 |
"rounds": [
|
| 211 |
{
|
| 212 |
"round": 0,
|
| 213 |
+
"llm_s": 0.204,
|
| 214 |
"cands": [
|
| 215 |
{
|
| 216 |
+
"text": "<pcm>Na so, thank you well well! I dey glad I fit help. We go see later, no wahala.</pcm>",
|
| 217 |
"ok": true,
|
| 218 |
"why": [],
|
| 219 |
"tvd": 0.0
|
| 220 |
},
|
| 221 |
{
|
| 222 |
+
"text": "<pcm>Na so! Thank you well well. We go see later, no wahala.</pcm>",
|
| 223 |
"ok": true,
|
| 224 |
"why": [],
|
| 225 |
"tvd": 0.0
|
| 226 |
},
|
| 227 |
{
|
| 228 |
+
"text": "<pcm>Na so! Thank you well well, my friend. We go see later, no wahala.</pcm>",
|
| 229 |
"ok": true,
|
| 230 |
"why": [],
|
| 231 |
"tvd": 0.0
|
|
|
|
| 234 |
}
|
| 235 |
],
|
| 236 |
"mix_s": 0.0048,
|
| 237 |
+
"llm_s": 0.204,
|
| 238 |
+
"tts_first_s": 1.289,
|
| 239 |
"spec_start_s": 0.256,
|
| 240 |
+
"compute_to_first_audio_s": 1.576,
|
| 241 |
"tts_breakdown": {
|
| 242 |
"fe": 0.0,
|
| 243 |
+
"lm": 1.203,
|
| 244 |
+
"flow_voc": 0.222,
|
| 245 |
+
"n_tok": 73,
|
| 246 |
+
"audio_s": 2.92
|
| 247 |
},
|
| 248 |
"tts_chunks_s": [
|
| 249 |
+
1.289,
|
| 250 |
+
0.964,
|
| 251 |
+
1.425
|
| 252 |
],
|
| 253 |
+
"first_audio": 28.296,
|
| 254 |
+
"reply_end": 35.696,
|
| 255 |
+
"latency_s": 1.832
|
| 256 |
}
|
| 257 |
]
|
| 258 |
}
|
samples/03_pidgin_bargein.mp3
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6a7fe416706e523eb6762a6b41fbc7717368f0844e21a8c75d8a2bb2e040005c
|
| 3 |
+
size 436652
|
samples/04_hausa_greetings_english.json
CHANGED
|
@@ -3,31 +3,34 @@
|
|
| 3 |
"desc": "Hausa greeting + English, Hausa closing. User turns TTS-synthesized (Flash, female voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
-
"label": "TTS-synthesized user turn",
|
| 7 |
-
"
|
| 8 |
-
"
|
|
|
|
| 9 |
},
|
| 10 |
{
|
| 11 |
-
"label": "TTS-synthesized user turn",
|
| 12 |
-
"
|
| 13 |
-
"
|
|
|
|
| 14 |
},
|
| 15 |
{
|
| 16 |
-
"label": "TTS-synthesized user turn",
|
| 17 |
-
"
|
| 18 |
-
"
|
|
|
|
| 19 |
}
|
| 20 |
],
|
| 21 |
"turns": [
|
| 22 |
{
|
| 23 |
"turn": 0,
|
| 24 |
-
"user_label": "TTS-synthesized user turn",
|
| 25 |
"user_ref": "<hau>Sannu, barka da yamma.</hau> <eng>I am travelling to Kano tomorrow.</eng>",
|
| 26 |
"user_start": 0.7,
|
| 27 |
-
"user_onset": 0.
|
| 28 |
"backchannels": [],
|
| 29 |
-
"asr": "sannu baka da yamma i am travelling to
|
| 30 |
-
"asr_s": 0.
|
| 31 |
"eot_wait_s": 0.576,
|
| 32 |
"speech_end": 5.248,
|
| 33 |
"target": {
|
|
@@ -43,75 +46,73 @@
|
|
| 43 |
]
|
| 44 |
},
|
| 45 |
"target_desc": "Match the user's language mix: English about 60%, Hausa about 40% of the words. The main (matrix) language is English. The user greeted in Hausa: open with a short Hausa greeting. Sprinkle a Hausa discourse word or two the way the user did.",
|
| 46 |
-
"reply": "<hau>Sannu!</hau> <eng>Good evening, I hear you
|
| 47 |
"reply_mix": {
|
| 48 |
-
"eng": 0.
|
| 49 |
-
"hau": 0.
|
| 50 |
},
|
| 51 |
-
"tvd": 0.
|
| 52 |
"how": "first_round",
|
| 53 |
"first_cand_ok": true,
|
| 54 |
"rounds": [
|
| 55 |
{
|
| 56 |
"round": 0,
|
| 57 |
-
"llm_s": 0.
|
| 58 |
"cands": [
|
| 59 |
{
|
| 60 |
-
"text": "<hau>Sannu!</hau> <eng>
|
| 61 |
"ok": true,
|
| 62 |
"why": [],
|
| 63 |
-
"tvd": 0.
|
| 64 |
},
|
| 65 |
{
|
| 66 |
-
"text": "<hau>Sannu!</hau> <eng>Good evening
|
| 67 |
-
"ok":
|
| 68 |
-
"why": [
|
| 69 |
-
|
| 70 |
-
],
|
| 71 |
-
"tvd": 0.309
|
| 72 |
},
|
| 73 |
{
|
| 74 |
-
"text": "<hau>Sannu
|
| 75 |
"ok": true,
|
| 76 |
"why": [],
|
| 77 |
-
"tvd": 0.
|
| 78 |
}
|
| 79 |
]
|
| 80 |
}
|
| 81 |
],
|
| 82 |
-
"mix_s": 0.
|
| 83 |
-
"llm_s": 0.
|
| 84 |
-
"tts_first_s": 0.
|
| 85 |
"spec_start_s": 0.256,
|
| 86 |
-
"compute_to_first_audio_s": 1.
|
| 87 |
"tts_breakdown": {
|
| 88 |
"fe": 0.0,
|
| 89 |
-
"lm": 0.
|
| 90 |
-
"flow_voc": 0.
|
| 91 |
-
"n_tok":
|
| 92 |
-
"audio_s": 1.
|
| 93 |
},
|
| 94 |
"tts_chunks_s": [
|
| 95 |
-
0.
|
| 96 |
-
1.
|
| 97 |
-
1.
|
| 98 |
-
0.
|
| 99 |
],
|
| 100 |
-
"first_audio": 6.
|
| 101 |
-
"reply_end": 15.
|
| 102 |
-
"latency_s": 1.
|
| 103 |
},
|
| 104 |
{
|
| 105 |
"turn": 1,
|
| 106 |
-
"user_label": "TTS-synthesized user turn",
|
| 107 |
"user_ref": "<eng>What should I pack for the weather there?</eng>",
|
| 108 |
-
"user_start": 16.
|
| 109 |
-
"user_onset": 16.
|
| 110 |
"backchannels": [],
|
| 111 |
-
"asr": "what should i
|
| 112 |
-
"asr_s": 0.
|
| 113 |
"eot_wait_s": 0.576,
|
| 114 |
-
"speech_end": 18.
|
| 115 |
"target": {
|
| 116 |
"mix": {
|
| 117 |
"eng": 0.88,
|
|
@@ -121,86 +122,85 @@
|
|
| 121 |
"pattern": []
|
| 122 |
},
|
| 123 |
"target_desc": "Match the user's language mix: English about 90%, Hausa about 10% of the words. The main (matrix) language is English.",
|
| 124 |
-
"reply": "<eng>For Kano
|
| 125 |
"reply_mix": {
|
| 126 |
-
"eng": 0.
|
| 127 |
-
"hau": 0.
|
| 128 |
},
|
| 129 |
-
"tvd": 0.
|
| 130 |
"how": "first_round",
|
| 131 |
"first_cand_ok": true,
|
| 132 |
"rounds": [
|
| 133 |
{
|
| 134 |
"round": 0,
|
| 135 |
-
"llm_s": 0.
|
| 136 |
"cands": [
|
| 137 |
{
|
| 138 |
-
"text": "<eng>For Kano
|
| 139 |
"ok": true,
|
| 140 |
"why": [],
|
| 141 |
-
"tvd": 0.
|
| 142 |
},
|
| 143 |
{
|
| 144 |
-
"text": "<eng>For
|
| 145 |
"ok": true,
|
| 146 |
"why": [],
|
| 147 |
-
"tvd": 0.
|
| 148 |
},
|
| 149 |
{
|
| 150 |
-
"text": "<eng>For Kano tomorrow, pack light clothes and
|
| 151 |
"ok": true,
|
| 152 |
"why": [],
|
| 153 |
-
"tvd": 0.
|
| 154 |
}
|
| 155 |
]
|
| 156 |
}
|
| 157 |
],
|
| 158 |
-
"mix_s": 0.
|
| 159 |
-
"llm_s": 0.
|
| 160 |
-
"tts_first_s": 0.
|
| 161 |
"spec_start_s": 0.256,
|
| 162 |
-
"compute_to_first_audio_s": 1.
|
| 163 |
"tts_breakdown": {
|
| 164 |
"fe": 0.0,
|
| 165 |
-
"lm":
|
| 166 |
-
"flow_voc": 0.
|
| 167 |
-
"n_tok":
|
| 168 |
-
"audio_s":
|
| 169 |
},
|
| 170 |
"tts_chunks_s": [
|
| 171 |
-
0.
|
| 172 |
-
2.
|
| 173 |
-
|
| 174 |
-
|
|
|
|
| 175 |
],
|
| 176 |
-
"first_audio": 19.
|
| 177 |
-
"reply_end":
|
| 178 |
-
"latency_s": 1.
|
| 179 |
},
|
| 180 |
{
|
| 181 |
"turn": 2,
|
| 182 |
-
"user_label": "TTS-synthesized user turn",
|
| 183 |
"user_ref": "<hau>To, na gode.</hau>",
|
| 184 |
-
"user_start":
|
| 185 |
-
"user_onset":
|
| 186 |
"backchannels": [],
|
| 187 |
-
"asr": "
|
| 188 |
-
"asr_s": 0.
|
| 189 |
"eot_wait_s": 0.576,
|
| 190 |
-
"speech_end":
|
| 191 |
"target": {
|
| 192 |
"mix": {
|
| 193 |
-
"hau": 0.
|
| 194 |
-
"eng": 0.24
|
| 195 |
-
"ibo": 0.2
|
| 196 |
},
|
| 197 |
"matrix": "hau",
|
| 198 |
"pattern": [
|
| 199 |
-
"closing:hau"
|
| 200 |
-
"inter-sentential"
|
| 201 |
]
|
| 202 |
},
|
| 203 |
-
"target_desc": "Match the user's language mix: Hausa about
|
| 204 |
"reply": "<hau>Sannu!</hau> <eng>Sorry, I did not catch all of that. Could you say it again, or in English?</eng>",
|
| 205 |
"reply_mix": {
|
| 206 |
"eng": 0.91,
|
|
@@ -212,85 +212,85 @@
|
|
| 212 |
"rounds": [
|
| 213 |
{
|
| 214 |
"round": 0,
|
| 215 |
-
"llm_s": 0.
|
| 216 |
"cands": [
|
| 217 |
{
|
| 218 |
-
"text": "<hau>
|
| 219 |
"ok": false,
|
| 220 |
"why": [
|
| 221 |
-
"
|
| 222 |
],
|
| 223 |
-
"tvd": 0.
|
| 224 |
},
|
| 225 |
{
|
| 226 |
-
"text": "<hau>
|
| 227 |
"ok": false,
|
| 228 |
"why": [
|
| 229 |
-
"
|
| 230 |
],
|
| 231 |
-
"tvd": 0.
|
| 232 |
},
|
| 233 |
{
|
| 234 |
-
"text": "<hau>
|
| 235 |
"ok": false,
|
| 236 |
"why": [
|
| 237 |
-
"
|
| 238 |
],
|
| 239 |
-
"tvd": 0.
|
| 240 |
}
|
| 241 |
]
|
| 242 |
},
|
| 243 |
{
|
| 244 |
"round": 1,
|
| 245 |
-
"llm_s": 0.
|
| 246 |
"cands": [
|
| 247 |
{
|
| 248 |
-
"text": "<hau>
|
| 249 |
"ok": false,
|
| 250 |
"why": [
|
| 251 |
-
"mix drift tvd=0.
|
| 252 |
],
|
| 253 |
-
"tvd": 0.
|
| 254 |
},
|
| 255 |
{
|
| 256 |
-
"text": "<hau>
|
| 257 |
"ok": false,
|
| 258 |
"why": [
|
| 259 |
-
"mix drift tvd=0.
|
| 260 |
],
|
| 261 |
-
"tvd": 0.
|
| 262 |
},
|
| 263 |
{
|
| 264 |
-
"text": "<hau>
|
| 265 |
"ok": false,
|
| 266 |
"why": [
|
| 267 |
-
"mix drift tvd=0.
|
| 268 |
],
|
| 269 |
-
"tvd": 0.
|
| 270 |
}
|
| 271 |
]
|
| 272 |
}
|
| 273 |
],
|
| 274 |
-
"mix_s": 0.
|
| 275 |
-
"llm_s": 0.
|
| 276 |
-
"tts_first_s": 0.
|
| 277 |
"spec_start_s": 0.256,
|
| 278 |
-
"compute_to_first_audio_s": 1.
|
| 279 |
"tts_breakdown": {
|
| 280 |
"fe": 0.0,
|
| 281 |
-
"lm": 1.
|
| 282 |
-
"flow_voc": 0.
|
| 283 |
"n_tok": 86,
|
| 284 |
"audio_s": 3.44
|
| 285 |
},
|
| 286 |
"tts_chunks_s": [
|
| 287 |
-
0.
|
| 288 |
-
1.
|
| 289 |
-
1.
|
| 290 |
],
|
| 291 |
-
"first_audio":
|
| 292 |
-
"reply_end":
|
| 293 |
-
"latency_s": 1.
|
| 294 |
}
|
| 295 |
]
|
| 296 |
}
|
|
|
|
| 3 |
"desc": "Hausa greeting + English, Hausa closing. User turns TTS-synthesized (Flash, female voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 7 |
+
"text": "<hau>Sannu, barka da yamma.</hau> <eng>I am travelling to Kano tomorrow.</eng>",
|
| 8 |
+
"wav": "/scratch/duplex_v2/user_audio/04_hausa_greetings_english_turn0.wav",
|
| 9 |
+
"orig_label": "TTS-synthesized user turn"
|
| 10 |
},
|
| 11 |
{
|
| 12 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 13 |
+
"text": "<eng>What should I pack for the weather there?</eng>",
|
| 14 |
+
"wav": "/scratch/duplex_v2/user_audio/04_hausa_greetings_english_turn1.wav",
|
| 15 |
+
"orig_label": "TTS-synthesized user turn"
|
| 16 |
},
|
| 17 |
{
|
| 18 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 19 |
+
"text": "<hau>To, na gode.</hau>",
|
| 20 |
+
"wav": "/scratch/duplex_v2/user_audio/04_hausa_greetings_english_turn2.wav",
|
| 21 |
+
"orig_label": "TTS-synthesized user turn"
|
| 22 |
}
|
| 23 |
],
|
| 24 |
"turns": [
|
| 25 |
{
|
| 26 |
"turn": 0,
|
| 27 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 28 |
"user_ref": "<hau>Sannu, barka da yamma.</hau> <eng>I am travelling to Kano tomorrow.</eng>",
|
| 29 |
"user_start": 0.7,
|
| 30 |
+
"user_onset": 0.77,
|
| 31 |
"backchannels": [],
|
| 32 |
+
"asr": "sannu baka da yamma i am travelling to kano tomorrow",
|
| 33 |
+
"asr_s": 0.088,
|
| 34 |
"eot_wait_s": 0.576,
|
| 35 |
"speech_end": 5.248,
|
| 36 |
"target": {
|
|
|
|
| 46 |
]
|
| 47 |
},
|
| 48 |
"target_desc": "Match the user's language mix: English about 60%, Hausa about 40% of the words. The main (matrix) language is English. The user greeted in Hausa: open with a short Hausa greeting. Sprinkle a Hausa discourse word or two the way the user did.",
|
| 49 |
+
"reply": "<hau>Sannu!</hau> <eng>Good evening, I hear you’re travelling to Kano tomorrow. Is it for business or pleasure?</eng> <hau>Ba a da kai yin?</hau>",
|
| 50 |
"reply_mix": {
|
| 51 |
+
"eng": 0.74,
|
| 52 |
+
"hau": 0.26
|
| 53 |
},
|
| 54 |
+
"tvd": 0.137,
|
| 55 |
"how": "first_round",
|
| 56 |
"first_cand_ok": true,
|
| 57 |
"rounds": [
|
| 58 |
{
|
| 59 |
"round": 0,
|
| 60 |
+
"llm_s": 0.301,
|
| 61 |
"cands": [
|
| 62 |
{
|
| 63 |
+
"text": "<hau>Sannu baka da yamma!</hau> <eng>Traveling to Kano tomorrow, eh? You need help with your flight or hotel booking?</eng>",
|
| 64 |
"ok": true,
|
| 65 |
"why": [],
|
| 66 |
+
"tvd": 0.179
|
| 67 |
},
|
| 68 |
{
|
| 69 |
+
"text": "<hau>Sannu!</hau> <eng>Good evening, I hear you're heading to Kano tomorrow. Any special reason for the trip?</eng> <hau>Baka da yamma</hau>",
|
| 70 |
+
"ok": true,
|
| 71 |
+
"why": [],
|
| 72 |
+
"tvd": 0.19
|
|
|
|
|
|
|
| 73 |
},
|
| 74 |
{
|
| 75 |
+
"text": "<hau>Sannu!</hau> <eng>Good evening, I hear you’re travelling to Kano tomorrow. Is it for business or pleasure?</eng> <hau>Ba a da kai yin?</hau>",
|
| 76 |
"ok": true,
|
| 77 |
"why": [],
|
| 78 |
+
"tvd": 0.137
|
| 79 |
}
|
| 80 |
]
|
| 81 |
}
|
| 82 |
],
|
| 83 |
+
"mix_s": 0.0076,
|
| 84 |
+
"llm_s": 0.301,
|
| 85 |
+
"tts_first_s": 0.679,
|
| 86 |
"spec_start_s": 0.256,
|
| 87 |
+
"compute_to_first_audio_s": 1.091,
|
| 88 |
"tts_breakdown": {
|
| 89 |
"fe": 0.0,
|
| 90 |
+
"lm": 0.685,
|
| 91 |
+
"flow_voc": 0.208,
|
| 92 |
+
"n_tok": 43,
|
| 93 |
+
"audio_s": 1.72
|
| 94 |
},
|
| 95 |
"tts_chunks_s": [
|
| 96 |
+
0.679,
|
| 97 |
+
1.738,
|
| 98 |
+
1.186,
|
| 99 |
+
0.894
|
| 100 |
],
|
| 101 |
+
"first_audio": 6.595,
|
| 102 |
+
"reply_end": 15.972,
|
| 103 |
+
"latency_s": 1.347
|
| 104 |
},
|
| 105 |
{
|
| 106 |
"turn": 1,
|
| 107 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 108 |
"user_ref": "<eng>What should I pack for the weather there?</eng>",
|
| 109 |
+
"user_start": 16.672,
|
| 110 |
+
"user_onset": 16.918,
|
| 111 |
"backchannels": [],
|
| 112 |
+
"asr": "what should i pack for the weather there",
|
| 113 |
+
"asr_s": 0.055,
|
| 114 |
"eot_wait_s": 0.576,
|
| 115 |
+
"speech_end": 18.592,
|
| 116 |
"target": {
|
| 117 |
"mix": {
|
| 118 |
"eng": 0.88,
|
|
|
|
| 122 |
"pattern": []
|
| 123 |
},
|
| 124 |
"target_desc": "Match the user's language mix: English about 90%, Hausa about 10% of the words. The main (matrix) language is English.",
|
| 125 |
+
"reply": "<eng>For Kano, pack light clothes, a hat, and sunscreen—weather is hot and sunny. You might also need a light jacket for evening. Any specific event?</eng> <hau>Wakai kai kai?</hau>",
|
| 126 |
"reply_mix": {
|
| 127 |
+
"eng": 0.9,
|
| 128 |
+
"hau": 0.1
|
| 129 |
},
|
| 130 |
+
"tvd": 0.016,
|
| 131 |
"how": "first_round",
|
| 132 |
"first_cand_ok": true,
|
| 133 |
"rounds": [
|
| 134 |
{
|
| 135 |
"round": 0,
|
| 136 |
+
"llm_s": 0.321,
|
| 137 |
"cands": [
|
| 138 |
{
|
| 139 |
+
"text": "<eng>For Kano, pack light clothes, a hat, and sunscreen—weather is hot and dry. You might also need a scarf for the dust.</eng> <hau>Na gida ne kai?</hau>",
|
| 140 |
"ok": true,
|
| 141 |
"why": [],
|
| 142 |
+
"tvd": 0.032
|
| 143 |
},
|
| 144 |
{
|
| 145 |
+
"text": "<eng>For Kano, pack light clothes, a hat, and sunscreen—weather is hot and sunny. You might also need a light jacket for evening. Any specific event?</eng> <hau>Wakai kai kai?</hau>",
|
| 146 |
"ok": true,
|
| 147 |
"why": [],
|
| 148 |
+
"tvd": 0.016
|
| 149 |
},
|
| 150 |
{
|
| 151 |
+
"text": "<eng>For Kano tomorrow, pack light clothes—hot and sunny. Bring a hat and sunscreen too.</eng> <hau>Wani kai da kai?</hau>",
|
| 152 |
"ok": true,
|
| 153 |
"why": [],
|
| 154 |
+
"tvd": 0.096
|
| 155 |
}
|
| 156 |
]
|
| 157 |
}
|
| 158 |
],
|
| 159 |
+
"mix_s": 0.0055,
|
| 160 |
+
"llm_s": 0.321,
|
| 161 |
+
"tts_first_s": 0.743,
|
| 162 |
"spec_start_s": 0.256,
|
| 163 |
+
"compute_to_first_audio_s": 1.142,
|
| 164 |
"tts_breakdown": {
|
| 165 |
"fe": 0.0,
|
| 166 |
+
"lm": 0.65,
|
| 167 |
+
"flow_voc": 0.22,
|
| 168 |
+
"n_tok": 41,
|
| 169 |
+
"audio_s": 1.64
|
| 170 |
},
|
| 171 |
"tts_chunks_s": [
|
| 172 |
+
0.743,
|
| 173 |
+
2.614,
|
| 174 |
+
1.588,
|
| 175 |
+
0.958,
|
| 176 |
+
0.871
|
| 177 |
],
|
| 178 |
+
"first_audio": 19.99,
|
| 179 |
+
"reply_end": 34.964,
|
| 180 |
+
"latency_s": 1.398
|
| 181 |
},
|
| 182 |
{
|
| 183 |
"turn": 2,
|
| 184 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 185 |
"user_ref": "<hau>To, na gode.</hau>",
|
| 186 |
+
"user_start": 35.664,
|
| 187 |
+
"user_onset": 35.732,
|
| 188 |
"backchannels": [],
|
| 189 |
+
"asr": "2 na gode",
|
| 190 |
+
"asr_s": 0.058,
|
| 191 |
"eot_wait_s": 0.576,
|
| 192 |
+
"speech_end": 36.864,
|
| 193 |
"target": {
|
| 194 |
"mix": {
|
| 195 |
+
"hau": 0.76,
|
| 196 |
+
"eng": 0.24
|
|
|
|
| 197 |
},
|
| 198 |
"matrix": "hau",
|
| 199 |
"pattern": [
|
| 200 |
+
"closing:hau"
|
|
|
|
| 201 |
]
|
| 202 |
},
|
| 203 |
+
"target_desc": "Match the user's language mix: Hausa about 75%, English about 25% of the words. The main (matrix) language is Hausa. The user closed in Hausa: you may close in Hausa.",
|
| 204 |
"reply": "<hau>Sannu!</hau> <eng>Sorry, I did not catch all of that. Could you say it again, or in English?</eng>",
|
| 205 |
"reply_mix": {
|
| 206 |
"eng": 0.91,
|
|
|
|
| 212 |
"rounds": [
|
| 213 |
{
|
| 214 |
"round": 0,
|
| 215 |
+
"llm_s": 0.253,
|
| 216 |
"cands": [
|
| 217 |
{
|
| 218 |
+
"text": "<hau>Na gode! Wakai kai kai da kai.</hau>",
|
| 219 |
"ok": false,
|
| 220 |
"why": [
|
| 221 |
+
"missing eng"
|
| 222 |
],
|
| 223 |
+
"tvd": 0.24
|
| 224 |
},
|
| 225 |
{
|
| 226 |
+
"text": "<hau>Na gode! Kuma kai kai da sani a cikin kai da kai. Kuma ya da ɗan kai kai.</hau>",
|
| 227 |
"ok": false,
|
| 228 |
"why": [
|
| 229 |
+
"missing eng"
|
| 230 |
],
|
| 231 |
+
"tvd": 0.24
|
| 232 |
},
|
| 233 |
{
|
| 234 |
+
"text": "<hau>Na gode! Wannan yin kai kai da kai.</hau>",
|
| 235 |
"ok": false,
|
| 236 |
"why": [
|
| 237 |
+
"missing eng"
|
| 238 |
],
|
| 239 |
+
"tvd": 0.24
|
| 240 |
}
|
| 241 |
]
|
| 242 |
},
|
| 243 |
{
|
| 244 |
"round": 1,
|
| 245 |
+
"llm_s": 0.23,
|
| 246 |
"cands": [
|
| 247 |
{
|
| 248 |
+
"text": "<hau>Na gode!</hau> <eng>My pleasure. Take care while you travel.</eng>",
|
| 249 |
"ok": false,
|
| 250 |
"why": [
|
| 251 |
+
"mix drift tvd=0.54"
|
| 252 |
],
|
| 253 |
+
"tvd": 0.539
|
| 254 |
},
|
| 255 |
{
|
| 256 |
+
"text": "<hau>Na gode!</hau> <eng>My pleasure. If you need more tips, just ask.</eng>",
|
| 257 |
"ok": false,
|
| 258 |
"why": [
|
| 259 |
+
"mix drift tvd=0.58"
|
| 260 |
],
|
| 261 |
+
"tvd": 0.579
|
| 262 |
},
|
| 263 |
{
|
| 264 |
+
"text": "<hau>Na gode!</hau> <eng>My pleasure. Take care while you travel.</eng> <hau>Wakai kai kai.</hau>",
|
| 265 |
"ok": false,
|
| 266 |
"why": [
|
| 267 |
+
"mix drift tvd=0.34"
|
| 268 |
],
|
| 269 |
+
"tvd": 0.342
|
| 270 |
}
|
| 271 |
]
|
| 272 |
}
|
| 273 |
],
|
| 274 |
+
"mix_s": 0.0015,
|
| 275 |
+
"llm_s": 0.483,
|
| 276 |
+
"tts_first_s": 0.64,
|
| 277 |
"spec_start_s": 0.256,
|
| 278 |
+
"compute_to_first_audio_s": 1.206,
|
| 279 |
"tts_breakdown": {
|
| 280 |
"fe": 0.0,
|
| 281 |
+
"lm": 1.42,
|
| 282 |
+
"flow_voc": 0.222,
|
| 283 |
"n_tok": 86,
|
| 284 |
"audio_s": 3.44
|
| 285 |
},
|
| 286 |
"tts_chunks_s": [
|
| 287 |
+
0.64,
|
| 288 |
+
1.267,
|
| 289 |
+
1.642
|
| 290 |
],
|
| 291 |
+
"first_audio": 38.325,
|
| 292 |
+
"reply_end": 45.593,
|
| 293 |
+
"latency_s": 1.461
|
| 294 |
}
|
| 295 |
]
|
| 296 |
}
|
samples/04_hausa_greetings_english.mp3
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:19c5000fd7a9f4d008cf4bffd4d8d2d75922bcc3ae3dbf2c4cd54cf80f20afc0
|
| 3 |
+
size 555308
|
samples/05_igbo_heavy.json
CHANGED
|
@@ -3,37 +3,40 @@
|
|
| 3 |
"desc": "Igbo-heavier user (shows the weak spot: LLM Igbo beyond phrases). User turns TTS-synthesized (Flash, female Igbo voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
-
"label": "TTS-synthesized user turn",
|
| 7 |
-
"
|
| 8 |
-
"
|
|
|
|
| 9 |
},
|
| 10 |
{
|
| 11 |
-
"label": "TTS-synthesized user turn",
|
| 12 |
-
"
|
| 13 |
-
"
|
|
|
|
| 14 |
},
|
| 15 |
{
|
| 16 |
-
"label": "TTS-synthesized user turn",
|
| 17 |
-
"
|
| 18 |
-
"
|
|
|
|
| 19 |
}
|
| 20 |
],
|
| 21 |
"turns": [
|
| 22 |
{
|
| 23 |
"turn": 0,
|
| 24 |
-
"user_label": "TTS-synthesized user turn",
|
| 25 |
"user_ref": "<ibo>Kedu? Biko, nyere m aka.</ibo> <eng>I need a taxi to the airport.</eng>",
|
| 26 |
"user_start": 0.7,
|
| 27 |
"user_onset": 0.753,
|
| 28 |
"backchannels": [],
|
| 29 |
-
"asr": "kedu biko
|
| 30 |
-
"asr_s": 0.
|
| 31 |
"eot_wait_s": 0.576,
|
| 32 |
"speech_end": 5.632,
|
| 33 |
"target": {
|
| 34 |
"mix": {
|
| 35 |
-
"eng": 0.
|
| 36 |
-
"ibo": 0.
|
| 37 |
},
|
| 38 |
"matrix": "eng",
|
| 39 |
"pattern": [
|
|
@@ -42,218 +45,260 @@
|
|
| 42 |
"inter-sentential"
|
| 43 |
]
|
| 44 |
},
|
| 45 |
-
"target_desc": "Match the user's language mix: English about
|
| 46 |
"reply": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>Biko</ibo>",
|
| 47 |
"reply_mix": {
|
| 48 |
"eng": 0.89,
|
| 49 |
"ibo": 0.11
|
| 50 |
},
|
| 51 |
-
"tvd": 0.
|
| 52 |
-
"how": "
|
| 53 |
-
"first_cand_ok":
|
| 54 |
"rounds": [
|
| 55 |
{
|
| 56 |
"round": 0,
|
| 57 |
-
"llm_s": 0.
|
| 58 |
"cands": [
|
| 59 |
{
|
| 60 |
"text": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>Biko</ibo>",
|
| 61 |
-
"ok":
|
| 62 |
-
"why": [
|
| 63 |
-
|
|
|
|
|
|
|
| 64 |
},
|
| 65 |
{
|
| 66 |
-
"text": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>
|
| 67 |
-
"ok":
|
| 68 |
-
"why": [
|
| 69 |
-
|
|
|
|
|
|
|
| 70 |
},
|
| 71 |
{
|
| 72 |
-
"text": "<ibo>Kedu?</ibo> <eng>
|
| 73 |
-
"ok":
|
| 74 |
-
"why": [
|
| 75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 76 |
}
|
| 77 |
]
|
| 78 |
}
|
| 79 |
],
|
| 80 |
-
"mix_s": 0.
|
| 81 |
-
"llm_s": 0.
|
| 82 |
-
"tts_first_s": 0.
|
| 83 |
"spec_start_s": 0.256,
|
| 84 |
-
"compute_to_first_audio_s": 1.
|
| 85 |
"tts_breakdown": {
|
| 86 |
"fe": 0.035,
|
| 87 |
-
"lm": 0.
|
| 88 |
-
"flow_voc": 0.
|
| 89 |
"n_tok": 8,
|
| 90 |
"audio_s": 0.32
|
| 91 |
},
|
| 92 |
"tts_chunks_s": [
|
| 93 |
-
0.
|
| 94 |
-
1.
|
| 95 |
-
1.
|
| 96 |
-
0.
|
| 97 |
],
|
| 98 |
-
"first_audio":
|
| 99 |
-
"reply_end":
|
| 100 |
-
"latency_s": 1.
|
| 101 |
},
|
| 102 |
{
|
| 103 |
"turn": 1,
|
| 104 |
-
"user_label": "TTS-synthesized user turn",
|
| 105 |
"user_ref": "<ibo>Ee, ọ dị mma.</ibo> <eng>I will leave at six.</eng>",
|
| 106 |
-
"user_start": 15.
|
| 107 |
-
"user_onset": 15.
|
| 108 |
"backchannels": [],
|
| 109 |
-
"asr": "ee
|
| 110 |
-
"asr_s": 0.
|
| 111 |
"eot_wait_s": 0.576,
|
| 112 |
-
"speech_end": 18.
|
| 113 |
"target": {
|
| 114 |
"mix": {
|
| 115 |
-
"
|
| 116 |
-
"
|
| 117 |
},
|
| 118 |
-
"matrix": "
|
| 119 |
-
"pattern": [
|
|
|
|
|
|
|
| 120 |
},
|
| 121 |
-
"target_desc": "Match the user's language mix:
|
| 122 |
-
"reply": "<eng>
|
| 123 |
"reply_mix": {
|
| 124 |
-
"eng": 0.
|
| 125 |
-
"ibo": 0.
|
| 126 |
},
|
| 127 |
-
"tvd": 0.
|
| 128 |
"how": "first_round",
|
| 129 |
"first_cand_ok": false,
|
| 130 |
"rounds": [
|
| 131 |
{
|
| 132 |
"round": 0,
|
| 133 |
-
"llm_s": 0.
|
| 134 |
"cands": [
|
| 135 |
{
|
| 136 |
-
"text": "<
|
| 137 |
"ok": false,
|
| 138 |
"why": [
|
| 139 |
-
"
|
| 140 |
],
|
| 141 |
-
"tvd": 0.
|
| 142 |
},
|
| 143 |
{
|
| 144 |
-
"text": "<
|
| 145 |
"ok": false,
|
| 146 |
"why": [
|
| 147 |
-
"
|
| 148 |
],
|
| 149 |
-
"tvd": 0.
|
| 150 |
},
|
| 151 |
{
|
| 152 |
-
"text": "<eng>
|
| 153 |
"ok": true,
|
| 154 |
"why": [],
|
| 155 |
-
"tvd": 0.
|
| 156 |
}
|
| 157 |
]
|
| 158 |
}
|
| 159 |
],
|
| 160 |
-
"mix_s": 0.
|
| 161 |
-
"llm_s": 0.
|
| 162 |
-
"tts_first_s":
|
| 163 |
"spec_start_s": 0.256,
|
| 164 |
-
"compute_to_first_audio_s": 1.
|
| 165 |
"tts_breakdown": {
|
| 166 |
"fe": 0.0,
|
| 167 |
-
"lm":
|
| 168 |
-
"flow_voc": 0.
|
| 169 |
-
"n_tok":
|
| 170 |
-
"audio_s":
|
| 171 |
},
|
| 172 |
"tts_chunks_s": [
|
| 173 |
-
|
| 174 |
-
1.
|
|
|
|
| 175 |
],
|
| 176 |
-
"first_audio": 19.
|
| 177 |
-
"reply_end":
|
| 178 |
-
"latency_s": 1.
|
| 179 |
},
|
| 180 |
{
|
| 181 |
"turn": 2,
|
| 182 |
-
"user_label": "TTS-synthesized user turn",
|
| 183 |
"user_ref": "<ibo>Daalụ, ka ọ dị.</ibo>",
|
| 184 |
-
"user_start":
|
| 185 |
-
"user_onset":
|
| 186 |
"backchannels": [],
|
| 187 |
-
"asr": "
|
| 188 |
-
"asr_s": 0.
|
| 189 |
"eot_wait_s": 0.576,
|
| 190 |
-
"speech_end":
|
| 191 |
"target": {
|
| 192 |
"mix": {
|
| 193 |
-
"ibo": 0.
|
| 194 |
-
"eng": 0.
|
| 195 |
},
|
| 196 |
"matrix": "ibo",
|
| 197 |
"pattern": [
|
| 198 |
-
"closing:ibo"
|
| 199 |
-
"inter-sentential"
|
| 200 |
]
|
| 201 |
},
|
| 202 |
-
"target_desc": "Match the user's language mix: Igbo about
|
| 203 |
-
"reply": "<ibo>Daalụ
|
| 204 |
"reply_mix": {
|
| 205 |
-
"eng": 0.
|
| 206 |
-
"ibo": 0.
|
| 207 |
},
|
| 208 |
-
"tvd": 0.
|
| 209 |
"how": "first_round",
|
| 210 |
-
"first_cand_ok":
|
| 211 |
"rounds": [
|
| 212 |
{
|
| 213 |
"round": 0,
|
| 214 |
-
"llm_s": 0.
|
| 215 |
"cands": [
|
| 216 |
{
|
| 217 |
-
"text": "<ibo>Daalụ
|
| 218 |
-
"ok":
|
| 219 |
-
"why": [
|
| 220 |
-
|
|
|
|
|
|
|
| 221 |
},
|
| 222 |
{
|
| 223 |
-
"text": "<ibo>Daalụ
|
| 224 |
"ok": true,
|
| 225 |
"why": [],
|
| 226 |
-
"tvd": 0.
|
| 227 |
},
|
| 228 |
{
|
| 229 |
-
"text": "<ibo>Daalụ
|
| 230 |
-
"ok":
|
| 231 |
-
"why": [
|
| 232 |
-
|
|
|
|
|
|
|
| 233 |
}
|
| 234 |
]
|
| 235 |
}
|
| 236 |
],
|
| 237 |
-
"mix_s": 0.
|
| 238 |
-
"llm_s": 0.
|
| 239 |
-
"tts_first_s":
|
| 240 |
"spec_start_s": 0.256,
|
| 241 |
-
"compute_to_first_audio_s": 1.
|
| 242 |
"tts_breakdown": {
|
| 243 |
"fe": 0.0,
|
| 244 |
-
"lm": 0.
|
| 245 |
-
"flow_voc": 0.
|
| 246 |
-
"n_tok":
|
| 247 |
-
"audio_s": 1.
|
| 248 |
},
|
| 249 |
"tts_chunks_s": [
|
| 250 |
-
|
| 251 |
-
|
| 252 |
-
0.
|
| 253 |
],
|
| 254 |
-
"first_audio":
|
| 255 |
-
"reply_end": 35.
|
| 256 |
-
"latency_s": 1.
|
| 257 |
}
|
| 258 |
]
|
| 259 |
}
|
|
|
|
| 3 |
"desc": "Igbo-heavier user (shows the weak spot: LLM Igbo beyond phrases). User turns TTS-synthesized (Flash, female Igbo voice).",
|
| 4 |
"user_turns": [
|
| 5 |
{
|
| 6 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 7 |
+
"text": "<ibo>Kedu? Biko, nyere m aka.</ibo> <eng>I need a taxi to the airport.</eng>",
|
| 8 |
+
"wav": "/scratch/duplex_v2/user_audio/05_igbo_heavy_turn0.wav",
|
| 9 |
+
"orig_label": "TTS-synthesized user turn"
|
| 10 |
},
|
| 11 |
{
|
| 12 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 13 |
+
"text": "<ibo>Ee, ọ dị mma.</ibo> <eng>I will leave at six.</eng>",
|
| 14 |
+
"wav": "/scratch/duplex_v2/user_audio/05_igbo_heavy_turn1.wav",
|
| 15 |
+
"orig_label": "TTS-synthesized user turn"
|
| 16 |
},
|
| 17 |
{
|
| 18 |
+
"label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 19 |
+
"text": "<ibo>Daalụ, ka ọ dị.</ibo>",
|
| 20 |
+
"wav": "/scratch/duplex_v2/user_audio/05_igbo_heavy_turn2.wav",
|
| 21 |
+
"orig_label": "TTS-synthesized user turn"
|
| 22 |
}
|
| 23 |
],
|
| 24 |
"turns": [
|
| 25 |
{
|
| 26 |
"turn": 0,
|
| 27 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 28 |
"user_ref": "<ibo>Kedu? Biko, nyere m aka.</ibo> <eng>I need a taxi to the airport.</eng>",
|
| 29 |
"user_start": 0.7,
|
| 30 |
"user_onset": 0.753,
|
| 31 |
"backchannels": [],
|
| 32 |
+
"asr": "kedu biko nyere m aka i need a taxis to the airport",
|
| 33 |
+
"asr_s": 0.093,
|
| 34 |
"eot_wait_s": 0.576,
|
| 35 |
"speech_end": 5.632,
|
| 36 |
"target": {
|
| 37 |
"mix": {
|
| 38 |
+
"eng": 0.58,
|
| 39 |
+
"ibo": 0.42
|
| 40 |
},
|
| 41 |
"matrix": "eng",
|
| 42 |
"pattern": [
|
|
|
|
| 45 |
"inter-sentential"
|
| 46 |
]
|
| 47 |
},
|
| 48 |
+
"target_desc": "Match the user's language mix: English about 60%, Igbo about 40% of the words. The main (matrix) language is English. The user greeted in Igbo: open with a short Igbo greeting. Sprinkle a Igbo discourse word or two the way the user did.",
|
| 49 |
"reply": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>Biko</ibo>",
|
| 50 |
"reply_mix": {
|
| 51 |
"eng": 0.89,
|
| 52 |
"ibo": 0.11
|
| 53 |
},
|
| 54 |
+
"tvd": 0.312,
|
| 55 |
+
"how": "best_failed",
|
| 56 |
+
"first_cand_ok": false,
|
| 57 |
"rounds": [
|
| 58 |
{
|
| 59 |
"round": 0,
|
| 60 |
+
"llm_s": 0.302,
|
| 61 |
"cands": [
|
| 62 |
{
|
| 63 |
"text": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>Biko</ibo>",
|
| 64 |
+
"ok": false,
|
| 65 |
+
"why": [
|
| 66 |
+
"mix drift tvd=0.31"
|
| 67 |
+
],
|
| 68 |
+
"tvd": 0.312
|
| 69 |
},
|
| 70 |
{
|
| 71 |
+
"text": "<ibo>Kedu?</ibo> <eng>Okay, I can help you book a taxi to the airport. How soon do you need it?</eng> <ibo>Na so?</ibo>",
|
| 72 |
+
"ok": false,
|
| 73 |
+
"why": [
|
| 74 |
+
"mix drift tvd=0.45"
|
| 75 |
+
],
|
| 76 |
+
"tvd": 0.45
|
| 77 |
},
|
| 78 |
{
|
| 79 |
+
"text": "<ibo>Kedu?</ibo> <eng>Yes, I can help you get a taxi to the airport. How soon do you need it?</eng> <ibo>Biko,</ibo> <eng>what time are you leaving?</eng>",
|
| 80 |
+
"ok": false,
|
| 81 |
+
"why": [
|
| 82 |
+
"mix drift tvd=0.32"
|
| 83 |
+
],
|
| 84 |
+
"tvd": 0.318
|
| 85 |
+
}
|
| 86 |
+
]
|
| 87 |
+
},
|
| 88 |
+
{
|
| 89 |
+
"round": 1,
|
| 90 |
+
"llm_s": 0.236,
|
| 91 |
+
"cands": [
|
| 92 |
+
{
|
| 93 |
+
"text": "<ibo>Kedu?</ibo> <eng>Biko, I go get you a taxi to the airport. How far you need to go?</eng>",
|
| 94 |
+
"ok": false,
|
| 95 |
+
"why": [
|
| 96 |
+
"mix drift tvd=0.44"
|
| 97 |
+
],
|
| 98 |
+
"tvd": 0.44
|
| 99 |
+
},
|
| 100 |
+
{
|
| 101 |
+
"text": "<ibo>Kedu?</ibo> <eng>Biko, I go get a taxi for you to airport now. You dey wait for the car at your gate?</eng>",
|
| 102 |
+
"ok": false,
|
| 103 |
+
"why": [
|
| 104 |
+
"mix drift tvd=0.43"
|
| 105 |
+
],
|
| 106 |
+
"tvd": 0.43
|
| 107 |
+
},
|
| 108 |
+
{
|
| 109 |
+
"text": "<ibo>Kedu?</ibo> <eng>Biko, I dey get a taxi for you to airport. How far you dey from airport?</eng>",
|
| 110 |
+
"ok": false,
|
| 111 |
+
"why": [
|
| 112 |
+
"mix drift tvd=0.44"
|
| 113 |
+
],
|
| 114 |
+
"tvd": 0.44
|
| 115 |
}
|
| 116 |
]
|
| 117 |
}
|
| 118 |
],
|
| 119 |
+
"mix_s": 0.0085,
|
| 120 |
+
"llm_s": 0.538,
|
| 121 |
+
"tts_first_s": 0.678,
|
| 122 |
"spec_start_s": 0.256,
|
| 123 |
+
"compute_to_first_audio_s": 1.351,
|
| 124 |
"tts_breakdown": {
|
| 125 |
"fe": 0.035,
|
| 126 |
+
"lm": 0.09,
|
| 127 |
+
"flow_voc": 0.202,
|
| 128 |
"n_tok": 8,
|
| 129 |
"audio_s": 0.32
|
| 130 |
},
|
| 131 |
"tts_chunks_s": [
|
| 132 |
+
0.678,
|
| 133 |
+
1.775,
|
| 134 |
+
1.017,
|
| 135 |
+
0.328
|
| 136 |
],
|
| 137 |
+
"first_audio": 7.239,
|
| 138 |
+
"reply_end": 15.054,
|
| 139 |
+
"latency_s": 1.607
|
| 140 |
},
|
| 141 |
{
|
| 142 |
"turn": 1,
|
| 143 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 144 |
"user_ref": "<ibo>Ee, ọ dị mma.</ibo> <eng>I will leave at six.</eng>",
|
| 145 |
+
"user_start": 15.754,
|
| 146 |
+
"user_onset": 15.811,
|
| 147 |
"backchannels": [],
|
| 148 |
+
"asr": "ee ọ dị mma ewe live at six",
|
| 149 |
+
"asr_s": 0.077,
|
| 150 |
"eot_wait_s": 0.576,
|
| 151 |
+
"speech_end": 18.4,
|
| 152 |
"target": {
|
| 153 |
"mix": {
|
| 154 |
+
"ibo": 0.65,
|
| 155 |
+
"eng": 0.35
|
| 156 |
},
|
| 157 |
+
"matrix": "ibo",
|
| 158 |
+
"pattern": [
|
| 159 |
+
"inter-sentential"
|
| 160 |
+
]
|
| 161 |
},
|
| 162 |
+
"target_desc": "Match the user's language mix: Igbo about 65%, English about 35% of the words. The main (matrix) language is Igbo.",
|
| 163 |
+
"reply": "<ibo>Ee, ọ dị mma.</ibo> <eng>Got it, I’ll book the taxi for six o’clock.</eng> <ibo>Ọ dị mma na?</ibo>",
|
| 164 |
"reply_mix": {
|
| 165 |
+
"eng": 0.56,
|
| 166 |
+
"ibo": 0.44
|
| 167 |
},
|
| 168 |
+
"tvd": 0.21,
|
| 169 |
"how": "first_round",
|
| 170 |
"first_cand_ok": false,
|
| 171 |
"rounds": [
|
| 172 |
{
|
| 173 |
"round": 0,
|
| 174 |
+
"llm_s": 0.268,
|
| 175 |
"cands": [
|
| 176 |
{
|
| 177 |
+
"text": "<ibo>Ee, ọ dị mma.</ibo> <eng>Okay, I’ll make sure the taxi arrives by six.</eng> <ibo>Biko</ibo>",
|
| 178 |
"ok": false,
|
| 179 |
"why": [
|
| 180 |
+
"mix drift tvd=0.33"
|
| 181 |
],
|
| 182 |
+
"tvd": 0.326
|
| 183 |
},
|
| 184 |
{
|
| 185 |
+
"text": "<ibo>Ee, ọ dị mma!</ibo> <eng>The flight leaves at six. Is that correct?</eng> <ibo>Biko</ibo>",
|
| 186 |
"ok": false,
|
| 187 |
"why": [
|
| 188 |
+
"mix drift tvd=0.30"
|
| 189 |
],
|
| 190 |
+
"tvd": 0.303
|
| 191 |
},
|
| 192 |
{
|
| 193 |
+
"text": "<ibo>Ee, ọ dị mma.</ibo> <eng>Got it, I’ll book the taxi for six o’clock.</eng> <ibo>Ọ dị mma na?</ibo>",
|
| 194 |
"ok": true,
|
| 195 |
"why": [],
|
| 196 |
+
"tvd": 0.21
|
| 197 |
}
|
| 198 |
]
|
| 199 |
}
|
| 200 |
],
|
| 201 |
+
"mix_s": 0.0058,
|
| 202 |
+
"llm_s": 0.268,
|
| 203 |
+
"tts_first_s": 0.913,
|
| 204 |
"spec_start_s": 0.256,
|
| 205 |
+
"compute_to_first_audio_s": 1.278,
|
| 206 |
"tts_breakdown": {
|
| 207 |
"fe": 0.0,
|
| 208 |
+
"lm": 0.634,
|
| 209 |
+
"flow_voc": 0.217,
|
| 210 |
+
"n_tok": 40,
|
| 211 |
+
"audio_s": 1.6
|
| 212 |
},
|
| 213 |
"tts_chunks_s": [
|
| 214 |
+
0.913,
|
| 215 |
+
1.908,
|
| 216 |
+
0.851
|
| 217 |
],
|
| 218 |
+
"first_audio": 19.935,
|
| 219 |
+
"reply_end": 27.483,
|
| 220 |
+
"latency_s": 1.535
|
| 221 |
},
|
| 222 |
{
|
| 223 |
"turn": 2,
|
| 224 |
+
"user_label": "TTS-synthesized user turn [identical input audio recovered from the 2026-10-24 demo]",
|
| 225 |
"user_ref": "<ibo>Daalụ, ka ọ dị.</ibo>",
|
| 226 |
+
"user_start": 28.183,
|
| 227 |
+
"user_onset": 28.248,
|
| 228 |
"backchannels": [],
|
| 229 |
+
"asr": "daalụ kaọdị",
|
| 230 |
+
"asr_s": 0.056,
|
| 231 |
"eot_wait_s": 0.576,
|
| 232 |
+
"speech_end": 29.664,
|
| 233 |
"target": {
|
| 234 |
"mix": {
|
| 235 |
+
"ibo": 0.88,
|
| 236 |
+
"eng": 0.12
|
| 237 |
},
|
| 238 |
"matrix": "ibo",
|
| 239 |
"pattern": [
|
| 240 |
+
"closing:ibo"
|
|
|
|
| 241 |
]
|
| 242 |
},
|
| 243 |
+
"target_desc": "Match the user's language mix: Igbo about 90%, English about 10% of the words. The main (matrix) language is Igbo. The user closed in Igbo: you may close in Igbo.",
|
| 244 |
+
"reply": "<ibo>Daalụ kaọdị.</ibo> <eng>See you later!</eng> <ibo>Ọ dị mma.</ibo>",
|
| 245 |
"reply_mix": {
|
| 246 |
+
"eng": 0.38,
|
| 247 |
+
"ibo": 0.62
|
| 248 |
},
|
| 249 |
+
"tvd": 0.257,
|
| 250 |
"how": "first_round",
|
| 251 |
+
"first_cand_ok": false,
|
| 252 |
"rounds": [
|
| 253 |
{
|
| 254 |
"round": 0,
|
| 255 |
+
"llm_s": 0.247,
|
| 256 |
"cands": [
|
| 257 |
{
|
| 258 |
+
"text": "<ibo>Daalụ kaọdị.</ibo> <eng>Thank you, I’ll see you at six.</eng> <ibo>Ọ dị mma.</ibo>",
|
| 259 |
+
"ok": false,
|
| 260 |
+
"why": [
|
| 261 |
+
"mix drift tvd=0.46"
|
| 262 |
+
],
|
| 263 |
+
"tvd": 0.462
|
| 264 |
},
|
| 265 |
{
|
| 266 |
+
"text": "<ibo>Daalụ kaọdị.</ibo> <eng>See you later!</eng> <ibo>Ọ dị mma.</ibo>",
|
| 267 |
"ok": true,
|
| 268 |
"why": [],
|
| 269 |
+
"tvd": 0.257
|
| 270 |
},
|
| 271 |
{
|
| 272 |
+
"text": "<ibo>Daalụ kaọdị.</ibo> <eng>Thank you, have a safe trip.</eng>",
|
| 273 |
+
"ok": false,
|
| 274 |
+
"why": [
|
| 275 |
+
"mix drift tvd=0.63"
|
| 276 |
+
],
|
| 277 |
+
"tvd": 0.63
|
| 278 |
}
|
| 279 |
]
|
| 280 |
}
|
| 281 |
],
|
| 282 |
+
"mix_s": 0.0016,
|
| 283 |
+
"llm_s": 0.247,
|
| 284 |
+
"tts_first_s": 0.864,
|
| 285 |
"spec_start_s": 0.256,
|
| 286 |
+
"compute_to_first_audio_s": 1.179,
|
| 287 |
"tts_breakdown": {
|
| 288 |
"fe": 0.0,
|
| 289 |
+
"lm": 0.482,
|
| 290 |
+
"flow_voc": 0.208,
|
| 291 |
+
"n_tok": 31,
|
| 292 |
+
"audio_s": 1.24
|
| 293 |
},
|
| 294 |
"tts_chunks_s": [
|
| 295 |
+
0.864,
|
| 296 |
+
0.728,
|
| 297 |
+
0.69
|
| 298 |
],
|
| 299 |
+
"first_audio": 31.099,
|
| 300 |
+
"reply_end": 35.299,
|
| 301 |
+
"latency_s": 1.435
|
| 302 |
}
|
| 303 |
]
|
| 304 |
}
|
samples/05_igbo_heavy.mp3
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
-
size
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:bbf0c9e8871a54ec88fc4b6e6032a01586ef265a3fb1ca16f54a97716e2364c4
|
| 3 |
+
size 431756
|