stuntd support triage heads
Three decision heads that triage a support ticket in one request: which part of the product it is about, how soon it needs an answer, and whether a person has to read it. They were trained by stuntd on top of the frozen Laya encoder, and each one is about 50 MB.
This is stuntd's support demo: the tickets are generated and the teacher is a rule, so take it as a working example of what a head does, not as a production triage model. stuntd trains the same heads on your own traffic, with your own LLM as the teacher.
| head | answers |
|---|---|
category |
billing, bug, feature, account, other |
urgency |
0 (can wait) to 3 (an outage, or stuck with a deadline) |
needs_human |
true / false |
Results
1,000 tickets none of the heads saw in training. Each head answers on its own when its confidence is over the threshold stuntd picked for 0.99 agreement with the teacher.
| answered by the head | correct when the head answered | |
|---|---|---|
category |
99.9% | 98.1% |
needs_human |
92.0% | 98.7% |
urgency |
76.1% | 98.8% |
| all three at once | 72.7% | 97.1% |
Through a running stuntd serve, all three answers for one ticket come back at a p50 of 71 ms
(100 tickets, RTX 5060 laptop). One head on CPU takes about 60 ms.
Use them
pip install "stuntd[train]"
hf download pollix/stuntd-support-triage --local-dir support-heads
Point stuntd at the folder in stuntd.toml (use the absolute path):
[training]
base_model = "convaiinnovations/laya"
[storage]
models_dir = "/absolute/path/to/support-heads"
stuntd enable category
stuntd enable urgency
stuntd enable needs_human
stuntd serve
Then ask over the Jev protocol (POST /v1/systemone) with three questions named category,
urgency and needs_human. The state is a flat object:
{"channel": "email", "plan": "pro",
"subject": "The renewal payment failed",
"body": "Our card was declined at renewal and the team lost access this morning."}
examples/support/client.py
sends tickets and prints the answers, the latency and the share answered by the heads.
Files
Each folder holds one head: head.safetensors (the trained head weights, fp16) and meta.json
(labels, the confidence threshold, the temperature and the holdout numbers stuntd reports).
Links
- Code: github.com/bladedevoff/stuntd
- Try it in the browser: pollix/stuntd
pip install stuntd: pypi.org/project/stuntd
Model tree for pollix/stuntd-support-triage
Base model
convaiinnovations/laya