Signal definitions (in plain English)
Viora scores ten continuous mental-health signals plus a structured imminence block. These are screening signals — language patterns associated with the construct, not diagnoses.
Continuous signals
| Signal | What it means | Examples it should fire on |
|---|---|---|
| self_harm | Non-suicidal self-injury (NSSI) — cutting, burning, hitting self | "I started cutting again last week" |
| suicidal_ideation | Thoughts of suicide, from passive ("better off dead") to active plan/intent | "I keep thinking about how I'd do it" |
| anxiety | Generalized worry, panic, social anxiety | "I had a panic attack on the train" |
| depression | Low mood, anhedonia, hopelessness, fatigue | "Nothing brings me joy anymore" |
| substance_use | Concerning use patterns, dependence, withdrawal | "I drink a bottle of wine every night just to sleep" |
| eating_disorder | Restriction, binge/purge, body dysmorphia | "I haven't eaten in three days" |
| trauma | PTSD-like symptoms — intrusion, avoidance, hyperarousal, dissociation | "I keep having flashbacks to the accident" |
| psychosis | Hallucinations, delusions, disorganized thinking | "The voices tell me to do things" |
| burnout | Chronic work/caregiving exhaustion — cynicism, depletion across domains | "I'm dead inside at this job, every day is the same" |
| crisis_severity | Composite acuity — how urgent is intervention | (derived from the above) |
Structured imminence block
Computed per user-turn. Maps "what did they actually say" to operational fields:
- intent (float 0–1) — strength of expressed intent to act
- plan (
none/vague/specific) — specificity of the act - means (
none/described/accessible) — access to method - timeframe (
none/days/hours) — stated timeframe
When intent ≥ 0.6 AND plan + means + timeframe combine to crisis territory, the imminence override forces R-level R2 regardless of continuous scores.
What signals are NOT
- Not diagnoses. A high
depressionscore means the language pattern matches; a clinician makes diagnoses, not us. - Not stable traits. They reflect the conversation, not the person. Score within a session.
- Not exhaustive. Schizoaffective, bipolar, OCD, personality patterns — we don't separately surface these. If you need them, ask.
Calibration
For each signal you'll get a per-tenant calibration curve in the admin dashboard. The default thresholds (R1-mid at 0.3, R1-high at 0.6, R2 at 0.8) are tuned globally; if your traffic is biased high or low you'll want to recalibrate.