--- language: [en] license: mit tags: [conceptual-metaphor, annotation, lakoff, parallel-corpus, lora, qwen2.5] base_model: Qwen/Qwen2.5-1.5B-Instruct --- # CM-Annotator (English) — Conceptual Metaphor Annotator LoRA adapter that annotates English 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:00:10.229852+00:00 ## Evaluation (dev vs silver, greedy) | metric | value | |---|---| | n_eval | 120 | | JSON valid rate | 1.0 | | span precision / recall / F1 | 0.0962 / 0.1111 / 0.1031 | ## 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.