A small DuplexJev connector: the Whisper-small encoder (frozen) feeds a frozen SmolLM3-3B, and every typed question is read as a single-token distribution over its options, with zero decode steps and many questions per forward pass. Trained with the same recipe as the Qwen3-32B connectors released with the paper. The connector was trained with SmolLM3's no-think format (an empty block before the answer). The tokenizer in this repository carries that chat template; SmolLM3's default template adds a long system prompt with today's date and would not match. Leaderboard scores (see the GitHub README): main language (mean of qa100, ZJU-ML, Easy-Turn) 37.4, paralinguistics (mean of gender…
Open weights
apache-2.0
29M parameters
transformers
A small DuplexJev connector: the Whisper-small encoder (frozen) feeds a frozen Qwen3-4B-2507, and every typed question is read as a single-token distribution over its options, with zero decode steps and many questions per forward pass. Trained with the same recipe as the Qwen3-32B connectors released with the paper. Leaderboard scores (see the GitHub README): main language (mean of qa100, ZJU-ML, Easy-Turn) 53.5, paralinguistics (mean of gender, emotion) 43.0. Paper protocol: the evaluation prompts of the paper (single option order, one H200). duplexjev defaults: the package's own prompts with lang matched to the clip. Spoken QA with a small LLM is bounded by the LLM itself (see the…
Open weights
apache-2.0
30M parameters
transformers
Paper: arXiv:2610.02638 · Code: github.com/adventists-ai/duplexjev · Research note: teaching a speech-decision LLM to hear stress DuplexJev-32B-Turn that also hears stress and pauses. "I didn't say she took the money" and "I didn't say she took the money" are the same words. This model can tell them apart: it answers which word is stressed, is any word stressed at all, and where the speaker pauses, in Mandarin and English. Spoken QA, gender, emotion and turn-taking stay at the 32B-Turn level. Same size, same serving stack, same prompt format as the other DuplexJev models. DuplexJev reads typed, closed-set decisions from speech as a single-token distribution of the LLM: zero decode steps…
Open weights
cc-by-nc-4.0
vllm
Paper: arXiv:2610.02638 · Code: github.com/adventists-ai/duplexjev · Research note: teaching a speech-decision LLM to hear stress DuplexJev-4B-Turn that also hears stress and pauses, for smaller GPUs. "I didn't say she took the money" and "I didn't say she took the money" are the same words; this model tells them apart. It answers which word is stressed, is any word stressed at all, where the speaker pauses, and what the stress implies, in Mandarin and English. Trade-off — read before choosing. At 4B, adding stress costs some spoken-QA accuracy: VoiceBench OBQA / MMSU is 42.0 / 38.2 against 46.4 / 41.7 for 4B-Turn, and qa100 / ZJU-ML are 1 point lower. We tried lower stress weights…
Open weights
cc-by-nc-4.0
4.2B parameters
40,960 tokens
vllm
Paper: arXiv:2610.02638 · Code: github.com/adventists-ai/duplexjev · Research note: teaching a speech-decision LLM to hear stress The DuplexJev model that hears the most beyond the words. On top of everything DuplexJev-32B-Turn and DuplexJev-32B-Stress do (spoken QA, gender, emotion, turn-taking, stress and pauses), it also hears laughter, breathing, coughs and sighs, notices how someone is talking (whispering, shouting, very fast or slow), and can tell, roughly as a person would, whether two clips are the same speaker. Mandarin and English. DuplexJev reads typed, closed-set decisions from speech as a single-token distribution of the LLM: zero decode steps, many questions about the same…
Open weights
cc-by-nc-4.0
vllm
Paper: arXiv:2610.02638 · Code: github.com/adventists-ai/duplexjev · Plugins: pipecat-duplexjev, livekit-plugins-duplexjev The 4B DuplexJev tuned for live end-of-turn: is the user done, right after they go quiet? A turn-taking variant of DuplexJev-4B-Para v1.1, which stays the general 4B. Same recipe as DuplexJev-32B-Para v1.2: the 4B-Para v1.1 mix plus accent data and pause-level turn-taking data, one rank-16 LoRA, 4,000 steps, merged. Qwen3-ASR-0.6B encoder + connector + Qwen3-4B, 4.2 B parameters, bf16, ~10 GB GPU memory. Which 4B to pick. - This one for a voice agent's end-of-turn on a small GPU (LiveKit / Pipecat plugins). - 4B-Para for everything else (stress, non-verbal sounds…
Open weights
cc-by-nc-4.0
4.2B parameters
40,960 tokens
vllm