Multilingual Turn Classifier mmBERT v1
Private five-language, four-head textual turn-taking classifier for SIP voice
agents. The selected checkpoint is jhu-clsp/mmBERT-base seed 17, exported as
ONNX and dynamically quantized to signed INT8.
Runtime contract
Input template:
[LANG] <it|en|fr|es|de>
[STATE] <LISTENING|ASSISTANT_PLAYING|ASSISTANT_THINKING>
[HISTORY]
<agent|user>: <text>
[USER] <current user transcription>
Maximum input length is 256 tokenizer tokens. The four outputs, in fixed order, are:
endpoint:COMPLETE | INCOMPLETEfloor_claim:CLAIM | BACKCHANNELaddressee:AGENT | SIDE_TALKcall_intent:CLOSING | NORMAL
manifest.json contains the runtime temperatures, thresholds, label order, and
checksums. Consumers must verify it before loading model.int8.onnx.
Release 1.0.0
- INT8 model: 308,090,421 bytes
- FP32/INT8 argmax agreement: 99.25%
- warm CPU p95: 46.48 ms on the release benchmark host
- blocking golden cases: 24/24
- held-out INT8 metric regression: passed
- challenge SIDE_TALK precision: 98.32%
The full immutable audit bundle is stored at the repository root. The runtime
model is model.int8.onnx; model.fp32.onnx and the JSON reports are retained
for parity, provenance, and audit.
Loading
Use the versioned source repository's
turn_classifier.infrastructure.onnx_runtime.OnnxClassifier with
manifest.json. The model is intended for local CPU inference and does not
send conversation text to an external service.
Limitations
- Supported languages are limited to Italian, English, French, Spanish, and German.
call_intent/CLOSING is diagnostic and should not trigger automatic hangup without an application policy.- SIDE_TALK prioritizes precision over recall to avoid suppressing replies to speech addressed to the agent.
- Latency depends strongly on sequence length and target hardware.
Model tree for Youbiquitous/turn-classifier-mmbert-v1
Base model
jhu-clsp/mmBERT-base