Jev vs keyword triage
Keyword triage is if "chargeback" in text. It is fast, cheap, and fails on synonyms. Jev handles the synonym problem and fails on exact identifiers you should have regexed.
Independent. Official jaggedness: do not ask the model to count or to parse what a regex can find. docs.typesafe.ai.
Comparison scope
This page is first-touch routing language, not full moderation (see content filters / moderation APIs).
Criteria that decide the architecture
| Axis | Jev (System One) | Keyword triage |
|---|---|---|
| Paraphrase | Wins | Misses |
| Order id / IBAN / CVE | Do not use Jev | Wins |
| Adversarial misspellings | Test; not a security product | Also fragile |
| Cost | Tokens (vendor $) | CPU |
Decision quality and control
Keyword lists are inspectable. Jev criteria are inspectable too — if you wrote them. Hidden prompt piles are not. Prefer short criteria over a 4k-word “be a senior agent” essay.
Integration trade-offs
Pipeline: normalize → regex extract → if leftover uncertainty, Jev Choice with an other. Never skip regex for things code can match exactly.
TypeSafe’s public models page lists jev-1.13 at $0.042 per million input tokens with output tokens free — a vendor claim, not a jev.pro measurement. Confirm on the models page before you bid.
When each approach fits
Prefer Jev when
- Users never use your canonical words
Prefer Keyword triage when
- The token is an identifier or a legal exact phrase
Keywords first, Jev on the remainder. Same advice as traditional routing.
What this page does not claim
-
No recall@k vs keywords.
-
Schema-safe output is not the same as factual correctness.
-
No independent bake-off numbers live here.
When not to use Jev
Do not ask Jev to find an order id, IBAN, CVE, or SKU. That is regex. Official jaggedness: do not parse what code can match exactly.
Do not skip the keyword list when the policy is a legal exact phrase (“do not contact,” a statute citation). Exact tokens belong in inspectable lists.
Do not use Jev as a moderation product. Adversarial misspellings are a test burden, not a reason to delete the deny-list. See content filters.
Skip Jev when the form already captured the queue, or when you cannot send the body off-box.
Pairing-specific failure modes
- Literal reading. Criteria that only name “refund” miss “charged twice.” Write the paraphrase into criteria; do not hope.
- Count words. “Mentioned chargeback three times” — count in code.
- List explosion as a Jev substitute. Multilingual keyword lists grow without bound. Jev may help; TypeSafe’s strongest public language story is English. Test. No recall@k invented here.
- Alias on the remainder path. Pin
jev-1.13.0after you fit theotherband;jev-latestretargets only the paraphrase hop, which is easy to miss in logs.
Production sketch
- Normalize. Regex extract identifiers. If an exact legal phrase or id decides the queue, stop — keywords won.
- Remainder → Choice over intents plus
other. Pinjev-1.13.0. - Code merges both channels onto the same ticket (ticket queues). Log matched keywords and Jev.
- Low
confidenceorother→ human, not a guessed synonym. - Replay when either the list or the criteria SHA changes. Same compose rule as traditional routing.
Hub: Comparisons. Siblings: vs ticket queues, intent routing.
FAQ
Multilingual keywords? Lists explode. Jev may help; English is strongest per TypeSafe. Test.
Should I log matched keywords and Jev? Yes — two channels, one ticket.
Is this a bake-off vs regex? No. We do not publish recall@k. Regex first is the architecture, not a score.
Disclaimer
This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai. Never treat jev.pro as TypeSafe official documentation. We do not sell, issue, or proxy API keys.