Jie Jin
AI & ML interests
Recent Activity
Organizations
That's a sharp read, and a better framing than mine. Thank you! "Never trained" is right; "never reached" isn't. The model reserves the untrained labels for audio unlike anything it was trained on: 0 of 93 on its training corpora, 24 of 107 on unseen ones. That's a free out-of-distribution signal, and it fits how we use DuplexJev anyway: every answer comes with its probability, so an agent can already treat a low-confidence or off-four answer as "not sure, don't act on it".
Agreed on the 10-class report. We'll publish off-vocabulary answers on seen vs. unseen corpora, so it's clear whether the gain is hearing or just vocabulary.
On sophon-realtime, a quick preview, since it's the other half of this story. It's an end-to-end spoken dialogue model, and DuplexJev is its paralinguistic teacher: we use DuplexJev's judgments as the training signal for expression, so the model doesn't just say the words but laughs, coughs and clears its throat where a person naturally would, with the tone to match. If DuplexJev is about hearing how something is said, sophon-realtime is about saying it that way. Our goal is state of the art in paralinguistic expression.
For the duplex side: both. Turn-taking and barge-in on Full-Duplex-Bench (pause handling, turn-taking latency, user interruption, backchannels) with the public scripts, plus expression results judged by DuplexJev and by people, and an end-to-end latency breakdown. Answer files included, same as here, so you can take it apart again.
You're right again, and thank you! Two reviews in, you've made our benchmark reporting better than when we posted it.
To your question: v1.3's emotion supervision stops at those four labels (angry, happy, neutral, sad). Fear, disgust, surprise and calm were never answer targets, so nothing is lost at readout; the model was simply never taught them. Your split shows it cleanly:
- On the four labels it was trained on: 83/116 (72%), vs 46 for Qwen3-Omni and 39 for Gemini 3.8 Flash.
- Same four labels, unseen corpora only (TESS, RAVDESS, SAVEE): 29/54, vs 22 and 16.
- On labels it never saw: 3/84. That's the gap to close.
Expanding to 10 emotion classes is scheduled for next week. When it ships, we'll report LISTEN neutral-text your way: trained labels vs. the rest.
And good catch on IEMOCAP. PARA alone is 26.0 vs 25.0 for GPT-audio-1.5, and on the 51 EM clips Qwen3-Omni and GPT-audio lead. The README reports per-condition numbers, so no pooled figure there.
One more thing to watch for this week: we're preparing to open-source sophon-realtime, our full-duplex conversational model, with DuplexJev as its ears. Would love your eyes on it too.
This is a fantastic review, thank you! You reproduced the whole pipeline from our scripts and then went further than we did. That's exactly why we published every model's raw answers, and it's great to see someone put them to work.
You're right that the headline should stand on clips we never trained on, so we're adopting your split as the main number. On those 1,035 items, DuplexJev still comes out on top:
- DuplexJev-32B-Para v1.3: 50.2
- Gemini 3.8 Flash: 47.8
- Qwen3-Omni-30B: 45.0
Your split also shows how broad the lead is. Of the 11 corpora in the 1,035, DuplexJev is first (or tied first) on 8, with big margins where only the voice carries the answer:
- TESS (emotion with neutral words): 38.3 vs 17.0 Flash / 25.5 Qwen
- MSPB (prosody): 77.3 vs 67.2 / 71.9
- IEMOCAP non-verbal (laughs, sighs, breaths): 27.1 vs 21.1 / 21.1
And as your bootstrap shows, the 5.2-point lead over Qwen3-Omni holds firmly (95% CI 2.2 to 8.2).
MELD is a great catch. It's TV dialogue where the words themselves carry most of the emotion, the one setting where models that read the words have the edge. We're adding conversational dialogue emotion data in our next training round and will report MELD separately so everyone can follow the progress.
We'll update the README and scripts to report the 1,035 split as the headline, with the trained-corpus items listed separately. Thanks again, reviews like this make the work better!
Good idea, so we just ran it: the answers don't depend on option position. Same clips, options shuffled, letters mapped back to labels (DuplexJev-32B-Para v1.3, one order per request, no averaging):
- 29 clips; 4-way emotion and 4-way turn state with 15 distinct option orders each, gender with both orders.
- 98.5% of answers are identical across all orders (emotion 686/696, turn 685/696, gender 58/58).
- When the model is confident (ā„ 0.8), zero flips, and the winning label's probability barely moves (median change 0.01 for emotion, 0.04 for turn).
- The few flips all come from 2 genuinely ambiguous clips per question, where the model was only 0.55ā0.67 sure to begin with.
For benchmarks we still average over a few orders, which settles even those borderline clips (29/29 match) at almost no cost, since the orders share the audio prefix. We'll run the same check on the full benchmark set and add it to the repo. Thanks for the suggestion!
š Oct 22: now hears Japanese. 32B-Para v1.4: Japanese error 32.7 ā 11.6% (FLEURS), Korean 31.8 ā 7.6%, Vietnamese 41.7 ā 14.6%. Notes: https://github.com/adventists-ai/duplexjev/blob/main/research/2026-10-japanese.md
Jev made "System One" decision models the hot idea of the season: state in, typed probabilistic decisions out, many questions in one pass. Voice agents need it most, yet a text decision model only sees a transcript, and the transcript is where tone disappears.
DuplexJev takes raw audio as its state. A frozen ASR encoder feeds a frozen LLM through a small connector; every question is a choice question read as one token, nothing decoded.
ā” Fast: 10 decisions in 92 ms on one H200 (transcribe + LLM: 1,978 ms), ~170 decisions/s per GPU, under $0.50 per million decisions (4B). A new decision is one line of text.
š Hears what the transcript drops: #1 in paralinguistic understanding. LISTEN (EACL 2026) + StressTest + MSPB, 1,035 questions, none from our training corpora, same for every model:
DuplexJev-32B-Para v1.3: 50.2
Gemini 3.8 Flash: 47.8
Qwen3-Omni-30B: 45.0
Gemini 3.1 Pro: 41.0
GPT-audio-1.5: 40.9
Gemini 3.8 Live: 40.0
GPT-realtime-2.1: 35.6
Prosody (MSPB): 77.3 vs 71.9 next best. (Split suggested by @dipankarsarkar , thank you!)
How it learned to listen: speech LLMs trained by transcript distillation imitate a teacher that never heard a voice (gender ~55%, emotion ~28%). Training the answer token on the correct answer instead takes both to ~90%.
Paper: Batched Speech Decisions Without Decoding: Single-Token Supervision Lets a Frozen LLM Hear Beyond the Transcript (2610.02638)
Models: adventists-ai/duplexjev-6acc69e95e4fc69acd09adaf
Demo: BitKnight/DuplexJev
Code + every model's raw answers: https://github.com/adventists-ai/duplexjev
(Independent project by Adventists AI, Zhejiang University and University of Virginia; not affiliated with TypeSafe.)