CM-Annotator (Chinese) — Conceptual Metaphor Annotator
LoRA adapter that annotates Chinese sentences with conceptual metaphor spans
(Lakoff & Johnson tradition) over a curated closed-set inventory (215 entries, based on the
Master Metaphor List, Lakoff et al. 1991). Outputs strict JSON:
{"has_metaphor": bool, "metaphor_spans": [{text, cm_id, cm_name, source_domain, target_domain, conventionality, confidence}]}. Sentences without conceptual metaphors yield empty spans
(Null-CM negatives are ~30% of training).
Training (distillation)
- Silver labels distilled from a local LM Studio teacher (qwen3.6-35b-a3b), k=2 self-consistency;
only agreeing labels kept. Details:
docs/TRAINING.md. Silver labels are NOT gold-human labels. - Base:
Qwen/Qwen2.5-1.5B-Instruct· LoRA r=16 α=32 · completion-only loss · seed=42 · trained 2026-11-07T18:37:56.652602+00:00
Evaluation (dev vs silver, greedy)
| metric | value |
|---|---|
| n_eval | 100 |
| JSON valid rate | 1.0 |
| span precision / recall / F1 | 0.0357 / 0.037 / 0.0364 |
Usage
Load base + adapter with peft; build prompts exactly as in service/inference.py
(system rules + INVENTORY block + SENTENCE). Trained-on data derives from UM-Corpus (CC BY-NC-ND):
training data is not redistributed; reproduce via the pipeline in the repository.
Limitations
Precision bounded by teacher quality (see audit table in docs/TRAINING.md); recall conservative on conventional metaphors; confidence not calibrated; Chinese side corpus is mostly simplified script.