SmolLM2-360M AAC — Apple Watch Edition (GGUF Q3_K_S)
On-device AAC language model optimized for Apple Watch. Fine-tuned from SmolLM2-360M-Instruct using LoRA (rank=32) on a curated AAC clinical corpus. Runs entirely on-device via llama.cpp at ~570ms per response — no network required.
Part of the Prism AAC project.
Model Details
| Property | Value |
|---|---|
| Base model | SmolLM2-360M-Instruct |
| Fine-tune method | LoRA (rank=32, scale=32.0) |
| Quantization | GGUF Q3_K_S (4.80 BPW) |
| Size | ~207 MB |
| Target hardware | Apple Watch Series 4+ |
| Avg latency | ~570 ms (Apple Watch Ultra 2) |
Evaluation Results — 300-Case AAC Clinical Eval
Evaluated on a 300-case novel AAC evaluation suite covering 10 clinical categories. Score: 100% (300/300) at temperature=0.1.
| Category | Score | Cases |
|---|---|---|
| Symbol Expand | 100% | 70/70 |
| Yes/No QA | 100% | 40/40 |
| Emergency QA | 100% | 30/30 |
| Vocabulary Age-Match | 100% | 25/25 |
| Multi-Turn Dialogue | 100% | 30/30 |
| Prediction | 100% | 30/30 |
| Caregiver Bridge | 100% | 20/20 |
| Emotion Express | 100% | 10/10 |
| Rephrase (clinical language) | 100% | 20/20 |
| Intent Classify (SCERTS) | 100% | 25/25 |
| OVERALL | 100% | 300/300 |
What It Can Do
- Symbol expansion: Convert AAC symbol sequences to natural speech (70 test cases)
- Emergency communication: Detect and express medical/safety emergencies (30 cases)
- Yes/No clarification: Answer questions from symbol selections with appropriate polarity (40 cases)
- Intent classification: SCERTS pragmatic function labeling — request, comment, protest, social, repair (25 cases)
- Multi-turn dialogue: Contextual follow-up across conversation turns (30 cases)
- Clinical language rephrasing: Person-first, trauma-informed terminology conversion (20 cases)
- Caregiver bridging: Communication support between AAC user and care partners (20 cases)
- Vocabulary age-matching: Developmentally appropriate word selection (25 cases)
- Predictive completion: Symbol sequence prediction (30 cases)
- Emotion expression: Nuanced emotional state communication (10 cases)
Usage with llama.cpp
llama-cli \
-m smollm2-360m-aac-q3ks.gguf \
--temp 0.1 \
--repeat-penalty 1.1 \
-n 80 \
--chatml \
-p "User selects [water] [please] [drink]. Speak as the AAC user."
ChatML Prompt Format
<|im_start|>system
You are an AAC communication helper. Given the context of what someone said and the AAC symbols a user selected, generate a natural, appropriate response in first person.<|im_end|>
<|im_start|>user
User selects [water] [please] [drink]. Caregiver says 'Are you thirsty?'.<|im_end|>
<|im_start|>assistant
Training Details
- Base model:
HuggingFaceTB/SmolLM2-360M-Instruct - Fine-tune type: LoRA (rank=32, scale=32.0, all 32 layers)
- Framework: Apple MLX (
mlx_lm.lora) - Corpus: ~4,300 examples (2,213 base AAC corpus + 143 targeted patch examples × 15× oversampling)
- Iterations: 2,000 total (4 rounds × 500 iters)
- Learning rate: 1e-5, Adam optimizer
- Max seq length: 256 tokens
- Merge: Direct safetensors merge with 22× LoRA amplification for quantization robustness
- Hardware: Apple M-series (MLX), Apple Silicon
Intended Use
Designed for AAC applications targeting Apple Watch and other constrained Apple Silicon devices. Enables real-time, offline AAC communication support with:
- No network dependency (full privacy)
- Low latency (~570ms)
- Small footprint (~207MB)
Limitations
- 360M parameter model — complex ambiguous gestures may misclassify at Q3_K_S quantization
- Optimized for English AAC communication
- Intended to assist, not replace, trained AAC specialists
License
Apache 2.0 — base model license. See SmolLM2 license.
Citation
If you use this model, please cite the base model:
@misc{smollm2,
title={SmolLM2: Smol Language Models},
author={HuggingFace},
year={2024}
}