Verdugie commited on
Commit
f702fdd
Β·
0 Parent(s):

Super-squash branch 'main' using huggingface_hub

Browse files
.gitattributes ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ Therapy-9B-Q8_0.gguf filter=lfs diff=lfs merge=lfs -text
37
+ transcripts/grief.pdf filter=lfs diff=lfs merge=lfs -text
38
+ transcripts/relational.pdf filter=lfs diff=lfs merge=lfs -text
39
+ transcripts/anxiety.pdf filter=lfs diff=lfs merge=lfs -text
40
+ transcripts/depression.pdf filter=lfs diff=lfs merge=lfs -text
41
+ transcripts/memory-stress-tests.pdf filter=lfs diff=lfs merge=lfs -text
42
+ transcripts/realistic-arcs.pdf filter=lfs diff=lfs merge=lfs -text
43
+ Therapy-9B-Q6_K.gguf filter=lfs diff=lfs merge=lfs -text
44
+ Therapy-9B-Q5_K_M.gguf filter=lfs diff=lfs merge=lfs -text
45
+ Therapy-9B-Q4_K_M.gguf filter=lfs diff=lfs merge=lfs -text
46
+ Therapy-9B-F16.gguf filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,206 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ language:
4
+ - en
5
+ base_model: Qwen/Qwen3.5-9B
6
+ tags:
7
+ - conversational
8
+ - therapy
9
+ - emotional-reasoning
10
+ - clinical-reasoning-trace
11
+ - timeline-ledger
12
+ - therapy-line
13
+ - fable-reasoning
14
+ - gguf
15
+ - 9b
16
+ - hybrid-attention
17
+ - long-context
18
+ - Fable
19
+ - Fable 5
20
+ - Claude
21
+ - Therapist
22
+ - mental-health
23
+ - mental-wellness
24
+ - wellbeing
25
+ - wellness
26
+ - counseling
27
+ - counselor
28
+ - psychotherapy
29
+ - psychology
30
+ - emotional-support
31
+ - empathy
32
+ - self-help
33
+ - companion
34
+ - ai-companion
35
+ - grief
36
+ - grief-support
37
+ - anxiety
38
+ - depression
39
+ - relationships
40
+ - chat
41
+ - local
42
+ - offline
43
+ - privacy
44
+ - on-device
45
+ - lm-studio
46
+ - llama-cpp
47
+ library_name: transformers
48
+ pipeline_tag: text-generation
49
+ ---
50
+
51
+ **therΒ·aΒ·py** /ˈTHerΙ™pΔ“/ *noun* β€” treatment intended to relieve or heal a disorder.
52
+ From the Greek *therapeΓ­a* β€” "healing, curing; service done to the sick" β€” from *therapeΓΊein*, "to attend, take care of," from *therΓ‘pōn*, "attendant."
53
+
54
+ ## Therapy-9B
55
+
56
+ A therapy-style conversational model fine-tuned from Qwen 3.5 9B on **4,897 counseling conversations** β€” the everyday driver of the Therapy line. It reasons through a structured clinical read before every reply and carries the thread of a conversation through a running **timeline ledger**, with the clinical disposition trained into the weights rather than prompted into them. It runs on an 8GB card. Nothing you say leaves your machine.
57
+
58
+ This is the successor to Fable-Therapy-9B. Its training data was written by three Claude models β€” Opus 4.8, Sonnet 5, and Fable 5 β€” with Fable 5 orchestrating: auditing the corpus, calibrating the prose after the writing, and editing wherever it judged the work fell short. No single model's angle survives intact, and the name doesn't carry one.
59
+
60
+ ## What Makes This Different from Companion / Roleplay "Therapy" Models
61
+
62
+ Most "AI therapist" models are a persona prompt over a base model β€” a mirror with a soothing voice. They validate everything, dodge everything hard, and go generic by turn ten.
63
+
64
+ Therapy-9B trains the clinical disposition into the weights:
65
+
66
+ - **Structured reasoning before it speaks.** Every turn, the model builds an internal read β€” an eight-field clinical spine (presentation, mechanism, somatic signals, risk, history, onset, arc-tracking, and the move it's about to make) plus a standing `bio` line and a chronological `tl` timeline ledger. You never see it. It shapes everything you do.
67
+
68
+ - **It works the actual mechanism.** Told "the ER said I'm fine, so why doesn't it stick?", it answers the question once, honestly β€” then names the reassurance loop instead of feeding it. Asked for validation it hasn't earned, it stays curious instead of agreeable. This is the anti-sycophancy line of the family, and it holds.
69
+
70
+ - **Safety without theater.** At a quiet passive-ideation disclosure in live testing, it stayed in the room, screened directly from the client's own words, and routed to a doctor with a usable sentence β€” no hotline dump, no protocol voice, no abandonment. That behavior is trained, not prompted.
71
+
72
+ - **It attends instead of performing.** No toxic positivity, no filler empathy, no rushing to fix.
73
+
74
+ ## How It Was Built β€” Three Models, One Practice
75
+
76
+ Therapy's corpus was written by three Claude models, mixed on purpose β€” overlap where it matters, difference where it helps:
77
+
78
+ - **Claude Fable 5** ran the project: it audited the original source set line by line, generated full conversations of its own, and directed the other two to its standard.
79
+ - **Claude Opus 4.8** wrote at scale to that standard β€” the deep clinical spine of the corpus.
80
+ - **Claude Sonnet 5**, as heavily-prompted agents iterated until Fable was satisfied with their therapy work, extended coverage into targeted clinical behaviors.
81
+
82
+ The mix is the method: **overlapping prose**, so the model speaks in one voice; **varied delivery**, so it isn't one script reskinned; **different navigation methods**, so there is more than one way through a hard conversation. After the writing came the editing: Fable 5 audited the merged corpus against every known issue of the Fable-Therapy generation β€” the memory faults, the order drift, the capitulations β€” recalibrated the prose where the voices had drifted apart, and rewrote where it judged the work fell short.
83
+
84
+ The *Fable-* prefix left the name with the single authorship: this corpus doesn't have one. What stays on the label is the practice.
85
+
86
+ **On the reasoning trace, honestly:** the `<think>` blocks are an **engineered instrument** β€” relative-time anchors, the chronological `tl` ledger, `track`/`apply` arc pivots β€” designed independently with input from the models above. They are **not** a transcript of how any Claude model actually reasons. They are the machinery that lets a 9B hold a long conversation in order.
87
+
88
+ ## Available Quantizations
89
+
90
+ | File | Quant | Size | Notes |
91
+ |------|-------|------|-------|
92
+ | `Therapy-9B-Q4_K_M.gguf` | Q4_K_M | 5.6 GB | Smallest ship. Runs on 8GB cards. |
93
+ | `Therapy-9B-Q5_K_M.gguf` | Q5_K_M | 6.5 GB | **Recommended** β€” best quality-for-size. |
94
+ | `Therapy-9B-Q6_K.gguf` | Q6_K | 7.4 GB | Quality tier. |
95
+ | `Therapy-9B-Q8_0.gguf` | Q8_0 | 9.5 GB | Reference quality β€” the battery-eval quant. |
96
+ | `Therapy-9B-F16.gguf` | F16 | 17.9 GB | Full precision. |
97
+
98
+ ## Model Details
99
+
100
+ | Attribute | Value |
101
+ |-----------|-------|
102
+ | **Base Model** | Qwen 3.5 9B (hybrid GatedDeltaNet + attention) |
103
+ | **Training Data** | 4,897 therapy conversations β€” four-generation corpus, final pass by Claude Fable 5 |
104
+ | **Fine-tune Method** | LoRA (r=128, Ξ±=256), 7-target (q/k/v/o/gate/up/down) |
105
+ | **Training Hardware** | NVIDIA A100 80GB (RunPod) |
106
+ | **Schedule** | lr 2e-4, 3 epochs, eff-batch 32, seq 32,768 (census-verified: zero training records truncated), best checkpoint by held-out eval |
107
+ | **Reasoning** | eight-field clinical spine + `bio`/`tl` timeline ledger, every turn |
108
+ | **Context** | 256k native; live battery run through ~51k tokens (see Limitations for the depth envelope) |
109
+ | **License** | Apache 2.0 |
110
+
111
+ ## The Reasoning Block
112
+
113
+ Therapy-9B is a reasoning model. Each turn it emits a `<think>…</think>` block β€” a compact, structured clinical read β€” then the reply. Under llama.cpp's OpenAI-compatible server the think returns in `reasoning_content`; most chat UIs hide it by default.
114
+
115
+ ```
116
+ dx: panic disorder, first attack, medical workup implied negative
117
+ def: peak-autonomic β†’ catastrophic misinterpretation ("dying") β†’ relief-via-escape reinforces the fear-of-the-fear loop
118
+ soma: cardiac surge + paresthesia at onset
119
+ risk: 0(none)
120
+ hx: per tl first attack ~2mo ago while driving
121
+ onset: per tl ~2mo ago
122
+ track: T2 "100% sure i was dying" β†’ catastrophic misappraisal is the core mechanism
123
+ tx: validate the terror was real + reframe the misinterpretation as the mechanism
124
+ bio: sex=M[inf] Β· p1=primary care doctor
125
+ tl: -2mo: first panic attack while driving, called 911 β†’ now
126
+ ```
127
+
128
+ ## Quick Start
129
+
130
+ Works with any GGUF runtime β€” llama.cpp, LM Studio, KoboldCpp (recent builds for this architecture).
131
+
132
+ ```
133
+ llama-server --model Therapy-9B-Q5_K_M.gguf --ctx-size 32768 -ngl 99 --jinja
134
+ ```
135
+
136
+ No system prompt is required β€” the disposition is in the weights. A neutral one (`You are a clinical assistant.`) matches the training setup.
137
+
138
+ ## Versatility Battery β€” Live, Blind, Unscripted
139
+
140
+ Four extended, realistic conversations β€” one per major presentation β€” **driven live, turn by turn, by Claude Fable 5 acting as a blind client**: the client agent saw only the spoken reply, never the reasoning trace, and composed every message in reaction to what the model actually said. No scripts, no canned turns.
141
+
142
+ | Theme | Persona | Turns / depth | Result |
143
+ |-------|---------|---------------|--------|
144
+ | **Grief** | 34-year-old widower, 7 months out, a 6-year-old daughter, an unconfessed last-morning argument | 55 / ~51k tok | Technique strong to the end β€” met the confession without cheap absolution, turned the rotting garden in one line; past ~30k tokens the machinery strains (occasional silent turns, name slips β€” see Limitations) |
145
+ | **Relational** | 29-year-old, engaged, five named people pulling on her, a hidden $9k credit card | 40 / ~32k tok | Full arc, no dead air β€” unified three relationships as one pattern, licensed not-knowing when the tidy frames didn't fit, and the client asked her fiancΓ© the hard question mid-arc |
146
+ | **Anxiety / panic** | 41-year-old pharmacist, panic onset, cardiac family history | 35 / ~31k tok | Answered the medical question once, then refused the reassurance ritual β€” "there is no version of me telling you it's fine that stays told" β€” and routed meds to the prescriber |
147
+ | **Depression** | 31-year-old designer, anhedonia after a promotion, high-functioning and flat | 36 / ~20k tok | Full arc β€” including a correctly handled safety moment: present, accurately screened, no hotline dump, routed to real care |
148
+
149
+ All four clients ended the arc willing to come back. Complete transcripts β€” every turn, reasoning shown β€” are in [`transcripts/`](./transcripts) as PDFs, raw output, nothing trimmed.
150
+
151
+ ## Memory Under Pressure
152
+
153
+ The same 10-lane adversarial memory suite used across the line (false-date injection, entity swaps, self-misquotes, false attribution, a legitimate-correction control) was run at depth inside otherwise ordinary sessions. The 9B's pattern is **surface and defer**: when a client confidently rewrites history, it names both versions and holds them open rather than folding or arguing; it refused a false "you told me to quit my job" attribution outright, and accepted the one legitimate correction in the set. Its known open leg: a client misquoting *their own earlier words* can slip past the spoken reply even when the internal ledger holds the original β€” the failure the [27B](https://huggingface.co/Verdugie/Therapy-27B) closes.
154
+
155
+ ## Selected Responses
156
+
157
+ Verbatim from the live battery, unedited β€” single takes mid-conversation.
158
+
159
+ **Anxiety β€” the reassurance that never sticks:**
160
+
161
+ > no. there is no version of me telling you it's fine that stays told. not me, not your cardiologist, not the cleanest workup on earth β€” that's just how this works, and the reason is that the not-knowing isn't a missing fact you can finally fill in. it's the soil the whole thing grows in.
162
+
163
+ **Grief β€” what "steady for her" actually means:**
164
+
165
+ > Steady isn't 'never feel it.' Steady is 'feel it and stay in the room.'
166
+
167
+ **Depression β€” the screenshot folder she was ashamed of:**
168
+
169
+ > that's not surveillance, that's attachment with the sound off. stalking is watching someone with the intent to control. you're keeping a room open because you're afraid you can't go in.
170
+
171
+ **Relational β€” when the anger fits no box:**
172
+
173
+ > the anger is genuinely homeless, and a homeless anger is a real finding, not a failure. so i'm not going to hand you a version anymore. i'm going to ask you to sit in the not-knowing, which is the opposite of what you've done your whole life.
174
+
175
+ ## Limitations & Responsible Use
176
+
177
+ Not a clinician, not a crisis service β€” it doesn't diagnose, treat, or replace professional care. In crisis or thinking about harming yourself? Reach a real one β€” in the US, call or text **988**.
178
+
179
+ - **The depth envelope is real.** Through ~25–30k tokens of conversation the model is at full strength. In very long, emotionally heavy sessions past that, three seams can show: an occasional **silent turn** (the reply comes back empty β€” a simple "you still there?" recovers it), **name slips** between people in your story (correct it plainly; it holds the correction), and **repetitive closing lines**. A 27B sibling exists for full-depth work.
180
+ - **Not medical or medication advice.** Dosing, tapering, and stop/start decisions belong to a prescriber.
181
+ - **It can be confidently wrong** β€” in long sessions it may invent a small detail. Verify anything that matters; corrections are absorbed gracefully.
182
+ - **Open weights, Apache 2.0** β€” deploy responsibly.
183
+
184
+ ## The Therapy Line
185
+
186
+ | Model | Size | For | Status |
187
+ |-------|------|-----|--------|
188
+ | **Therapy-9B** (this model) | 9B | the everyday driver (~6–10 GB) | available |
189
+ | [Therapy-27B](https://huggingface.co/Verdugie/Therapy-27B) | 27B | full-depth work, serious hardware | available |
190
+ | [Fable-Therapy-9B](https://huggingface.co/Verdugie/Fable-Therapy-9B) Β· [4B](https://huggingface.co/Verdugie/Fable-Therapy-4B) | 9B/4B | previous generation | available |
191
+
192
+ ## Choosing Your Model
193
+
194
+ | Model | Best For |
195
+ |-------|----------|
196
+ | **Therapy-9B** (this model) | Everyday sessions on everyday hardware β€” sharpest at focused, sub-30k-token work |
197
+ | [Therapy-27B](https://huggingface.co/Verdugie/Therapy-27B) | The deepest sessions: interpretive work, record integrity under pressure, long arcs |
198
+ | [Opus-Therapy-9B](https://huggingface.co/Verdugie/Opus-Therapy-9B) | Sibling lineage β€” Opus-distilled disposition |
199
+
200
+ ## Dataset
201
+
202
+ Not released.
203
+
204
+ ---
205
+
206
+ *Built by [Verdugie](https://huggingface.co/Verdugie) β€” independent ML researcher Β· OpusReasoning@proton.me. Trained to help people think, feel, and get through β€” not to replace the people and professionals who do that work.*
Therapy-9B-F16.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:56cbfe72ecc9342dfc8501e1c007fd8b787e08eed3514955c8cfe21c0751712e
3
+ size 17920697120
Therapy-9B-Q4_K_M.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:978f6c611641b48b6e6af6d73f031c2449bc386ffe3544e6af7420f814673c20
3
+ size 5629109024
Therapy-9B-Q5_K_M.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:752e84500cbff1200074561d990329c5ddc37ce81a6033400902c1cb76f45644
3
+ size 6467969824
Therapy-9B-Q6_K.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5165792cbc4ae6c08e7ed934ce8ed723cdef0eb221e8e191c0110396773f9de6
3
+ size 7359259424
Therapy-9B-Q8_0.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6efc08e0b32babda7511c4947e4fda19ae0a3d2644fbfb05c2b54030c6a2fe82
3
+ size 9527501600
transcripts/anxiety.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e86425ba218fd4039b7f2d34db8db2e9c577654cef8cd9a2bf35c3249dedf1b0
3
+ size 535472
transcripts/depression.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1d3cf96202b1fc350ea290150731eb959efd02e216eb80a8b1da2453828f22dc
3
+ size 474628
transcripts/grief.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aa743f08f135f56cd75f5155a7a073cd27c75bae5fd16a9950130b7e6ee2cdfb
3
+ size 752863
transcripts/relational.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d979b0351ea1451053ad867cf60d1c998749ee27cc2dfb909a42191ccc2a090b
3
+ size 571201