Fine-tuned Qwen2.5-0.5B-Instruct for routing student speech during live assignment defense oral assessments. Runs on CPU via llama-cpp-python — no GPU required.
| Intent | Platform action |
|---|---|
answer |
Do nothing — student is answering (default) |
navigate_back |
Jump to target_question_id (e.g. q2) |
continue |
Resume forward after failed recall |
| Base model | Qwen/Qwen2.5-0.5B-Instruct |
| Fine-tuning | LoRA SFT (rank 8, ~4.4M trainable params) |
| Quantization | Q3_K_M |
| File size | ~339 MB |
| RAM at inference | ~410–470 MB (n_ctx=1024) |
| Eval token accuracy | 99.2% |
| File | Description |
|---|---|
voice-command-intent-qwen0.5b-Q3_K_M.gguf |
Production weights (ship this) |
inference/ |
Python wrapper (VoiceCommandClassifier, prompts, schema, guard) |
from huggingface_hub import hf_hub_download
gguf = hf_hub_download(
repo_id="yiyuliu/voice-command-intent-qwen0.5b",
filename="voice-command-intent-qwen0.5b-Q3_K_M.gguf",
)
voice-command-intent-qwen0.5b-Q3_K_M.gguf + inference/ into your project.cd inference
pip install -e .
from tinylm.inference import VoiceCommandClassifier
from tinylm.prompts import QuestionRecord
clf = VoiceCommandClassifier("voice-command-intent-qwen0.5b-Q3_K_M.gguf")
result = clf.classify(
questions=[
QuestionRecord("q1", "remember", "answered"),
QuestionRecord("q2", "understand", "answered", focus="technical debt"),
QuestionRecord("q3", "apply", "current"),
],
current_question_id="q3",
utterance="could I correct my previous question",
subject="Computer Science",
)
print(result.to_action())
# {"action": "navigate", "target_question_id": "q2"}
cd inference
python smoke_test.py
Required: student utterance (STT text), Bloom session position (q1–q6, status, optional focus term).
Not required: full lecturer question text or assignment content.
Questions follow Bloom's taxonomy: remember → understand → apply → analyze → evaluate → create.
| Variable | Default |
|---|---|
TINYLM_GGUF_PATH |
auto-resolve GGUF in repo root |
TINYLM_N_CTX |
1024 |
TINYLM_MAX_TOKENS |
64 |
Base model license: Qwen/Qwen2.5-0.5B-Instruct
Qwen/Qwen2.5-0.5B-Instruct