SAVRN
Search Contact SAVRN

Open-weight model · Audio text to text

DuplexJev-B-Whisper-small-Qwen3-4B-2507

by Adventists.ai adventists-ai/DuplexJev-B-Whisper-small-Qwen3-4B-2507

DuplexJev-B-Whisper-small-Qwen3-4B-2507 is an open-weight model for audio text to text from Adventists.ai, released under Apache License 2.0. It has 30M parameters. At 16-bit it needs about 0.1 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.

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.

Parameters30M
Context—
Weights60.8 MB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads—

Runs On

What it takes to serve DuplexJev-B-Whisper-small-Qwen3-4B-2507 (30M parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 0.1 GB 0.1 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 0.0 GB 0.0 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Oct 14, 2026.

DuplexJev-B-Whisper-small-Qwen3-4B-2507 on every accelerator the SAVRN Index prices, at every precision

Model Card

By Adventists.ai, published under apache-2.0, revision 4e185e6b8bec.

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…

Read Adventists.ai's full model card

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.

Audio encoder (frozen) openai/whisper-small
LLM (frozen) Qwen/Qwen3-4B-Instruct-2507
Connector last encoder layer → frame stacking + SwiGLU projector (B), 30.4 M trainable parameters
Audio tokens 50 Hz encoder frames, 8 stacked → 6.25 audio tokens/s
Total parameters 4141 M (encoder + LLM + connector)
This variant Content alignment only (R1–R2, transcript distillation). No paralinguistic training: gender and emotion are at chance. A starting point for your own decision fine-tuning.

Quick start

pip install "duplexjev[speech]>=0.2.2"
from duplexjev import Decider, Question

d = Decider.from_pretrained("adventists-ai/DuplexJev-B-Whisper-small-Qwen3-4B-2507")

d.decide("utterance_en.wav", [
    Question("turn", "Has the user finished speaking?", ["finished", "not finished"], lang="en"),
    Question("intent", "What does the user want?", ["climate", "media", "navigation", "phone", "chit-chat"], lang="en"),
], lang="en")
d.decide("utterance_zh.wav", [                            # Chinese speech: Chinese question and options
    Question("turn", "用户说完了吗?", ["说完了", "还没说完"], lang="zh"),
    Question("intent", "用户想做什么?", ["空调", "媒体", "导航", "电话", "闲聊"], lang="zh"),
], lang="zh")

Results

Evaluation (%) paper protocol duplexjev 0.2.2 defaults
qa100 (spoken QA) 53 61
qa100, Qwen3-4B-2507 reading the transcript 84 –
ZJU-ML (spoken QA, real + TTS) 51 –
Easy-Turn (4-way turn state, 800 clips) 56.5 –
Gender, 800 real utterances 55.1 52.9
Emotion, 4-way, 800 utterances 31 30.8

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 transcript-reading row); use these connectors for short decisions and speaker cues rather than open knowledge questions.

Latency of one decision event (10 questions, one 4.5 s clip, duplexjev 0.2.2, plain PyTorch): 5.2 s on 8 CPU threads (Xeon Platinum 8558, fp32, not quantized); about 145 ms on one H200 (bf16, measured while the GPU was shared with a training job).

Training

Frozen encoder and LLM; only the connector is trained: R1 and R2 transcript distillation on two disjoint 0.5 M-utterance packs of the Ultravox v0.6 mixture (32k steps each, global batch 16). Code and scripts: https://github.com/adventists-ai/duplexjev.

Limitations

  • Evaluated on read or acted speech and small test sets (100–800 items); not on streaming input.
  • Small LLMs answer knowledge questions poorly even from the transcript.
  • Emotion labels come from acted corpora; do not use the outputs to make decisions about individuals.
  • The connector only works with the encoder and LLM listed above.

License

Apache-2.0 for the connector weights. Some training corpora (e.g. WenetSpeech, CoVoST 2) are licensed for non-commercial use only; check them before commercial use. The frozen models keep their own licences: Qwen3-4B-2507 (Apache-2.0) and the encoder (Apache-2.0).

Citation

@inproceedings{jin2027duplexjev,
  title     = {Batched Speech Decisions Without Decoding: Single-Token Supervision Lets a Frozen {LLM} Hear Beyond the Transcript},
  author    = {Jin, Jie and Ma, Ziyin and Yin, Min and Chen, Jinyu and Song, Haigang and Pang, Zhikun and Zhang, Xiaowen},
  booktitle = {Submitted to IEEE ICASSP},
  year      = {2027}
}

Built by Adventists.ai. Claude (Anthropic) assisted with code.

Configuration

Architecture
UltravoxModel
Hidden size
4,096
Vocabulary size
151,936
Stored precision
bfloat16
Model type
ultravox

Identity and Version

Repository
adventists-ai/DuplexJev-B-Whisper-small-Qwen3-4B-2507
Publisher
Adventists.ai
Task
Audio text to text
Modality
Other
Library
transformers
Parameters
30M parameters
Languages
zh, en
Revision
4e185e6b8bec54b331dd69ac0390a1ac1558d084
First published
2026-09-27
Last updated
2026-09-27

Files and Weights

18 files, 76.9 MB in total. The weights are 1 file totalling 60.8 MB in safetensors.

Weights1 file · 60.8 MB
Configuration10 files · 152.7 KB
Tokenizer4 files · 15.9 MB
Documentation1 file · 4.7 KB
Other1 file · 2.6 KB
Repository1 file · 1.6 KB
Every file
FileTypeSizeSHA-256
model.safetensorsWeights60.8 MB cf066d5baaf1
added_tokens.jsonConfiguration730 B —
config.jsonConfiguration1.1 KB —
generation_config.jsonConfiguration147 B —
normalizer.jsonConfiguration52.7 KB —
preprocessor_config.jsonConfiguration356 B —
processor_config.jsonConfiguration270 B —
special_tokens_map.jsonConfiguration355 B —
ultravox_config.pyConfiguration7.9 KB —
ultravox_model.pyConfiguration68.9 KB —
ultravox_processing.pyConfiguration20.3 KB —
README.mdDocumentation4.7 KB —
chat_template.jinjaOther2.6 KB —
.gitattributesRepository1.6 KB —
merges.txtTokenizer1.7 MB —
tokenizer.jsonTokenizer11.4 MB 0422f49acb9b
tokenizer_config.jsonTokenizer5.4 KB —
vocab.jsonTokenizer2.8 MB —

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
60.8 MB
Download from Adventists.ai

Released by Adventists.ai through its official repository on Hugging Face. Read the license.

Built From

Memory Requirements

PrecisionWeights in memory
As published60.8 MB
16-bit0.1 GB
8-bit0.0 GB
4-bit0.0 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About DuplexJev-B-Whisper-small-Qwen3-4B-2507

How much GPU memory does DuplexJev-B-Whisper-small-Qwen3-4B-2507 need?

About 0.1 GB at 16-bit and 0 GB at 4-bit: the weights (30M parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run DuplexJev-B-Whisper-small-Qwen3-4B-2507 on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use DuplexJev-B-Whisper-small-Qwen3-4B-2507 commercially?

Yes. DuplexJev-B-Whisper-small-Qwen3-4B-2507 is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

Similar Models

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

Model · Audio text to text

Aural-One-E2B

Paras Sharma

Native audio in, structured decisions out. Aural One adapts Gemma 4 E2B to score supplied choices from a recording, a written state, and named questions. One model handles the audio and the decision; its inference path does not require speech-to-text or a separate sound classifier. This v0.1.0 research preview publishes a frozen adapter and 54.3 million updated acoustic/projection weights. The pinned Gemma 4 E2B base is downloaded separately. The language model was frozen during this final training stage. These numbers have different test scopes. The full evaluation report covers the frozen reference, listener-vote cross-entropy and calibration, same-words contrasts, sound events…

Open weights apache-2.0 transformers

Model · Audio text to text

DuplexJev-32B-Stress

Adventists.ai

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

Model · Audio text to text

DuplexJev-32B-Para

Adventists.ai

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

Model · Audio text to text

MOSS-Transcribe-Diarize-HF

Ita Zaporozhets

MOSS-Transcribe-Diarize 0.9B is an end-to-end audio understanding model for long-form multi-speaker transcription, diarization, timestamps, and acoustic event awareness. It supports transcription and diarization across 50+ languages, single-pass inference on audio recordings up to 90 minutes long, and custom hotword prompting for domain-specific terms. Given an audio or video file, the model generates a compact speaker-aware transcript in one pass, including timestamps and anonymous speaker labels such as [S01], [S02], and beyond. 2026-07-22: The subtitle Web UI now supports both Simplified Chinese and English. 2026-07-14: MOSS-Transcribe-Diarize won first place in the 2nd MLC-SLM Challenge…

Open weights apache-2.0 909M parameters 131,072 tokens transformers

Model · Audio text to text

Sori-1B-MCQ

Seonuk Kim

Sori-1B-MCQ — sori (소리) is Korean for sound — listens to a clip and answers typed questions about it: which of these options, how far along this scale, is this true. It returns the answer, a probability for every option you defined, and a confidence — never prose, never a token stream to parse. Code stays in charge: your program defines the options, reads the numbers and decides what to do. It is the decision model of the Sori Agent project at the Human Interface Lab, Seoul National University. Inspired by TypeSafe's System One model, Jev. Jev showed what a model built for software rather than for conversation looks like: a state, typed questions, calibrated probabilities, one call for many…

Access requested at publisher other 1.1B parameters transformers