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}
}