rpant/iolai26-solve
069
IOL-AI 2026 Solver
Solves IOL-style linguistics puzzles (Linguini CSV) with a single-shot LLM. Ships Qwen/Qwen2.5-14B-Instruct-AWQ (4-bit AWQ, Apache-2.0) at the repo root, loaded from MODEL_ID = "."; runs on a T4 within the 30-minute budget.
Architecture
- `script.py` — entrypoint: reads
/tmp/data/test.csv, writessubmission.csv(id,predJSON list,explanation). Config flags at the top; submission written before the model loads and after every step. - `solver/pipeline.py` — orchestration. The model answers every puzzle from a minimal prompt (no scaffold, no chain-of-thought); output is parsed into one answer per item and aligned by position. A light greedy-anchored self-consistency vote refines answers while the clock allows. A deterministic symbolic layer (
solver/) is a last-resort fallback only. - `solver/llm.py` — batched transformers/AWQ generation, greedy,
repetition_penalty=1.0, per-token deadline. - `solver/direct.py` — prompt and answer parsing.
Run
python3 script.py [test.csv] [submission.csv] # defaults: /tmp/data/test.csv, submission.csvWeights are the unmodified Qwen/Qwen2.5-14B-Instruct-AWQ release (Apache-2.0; LICENSE retained).
