ATLES-Qwen-1.5B: 76% ARC-Easy via Minimal LoRA
A LoRA fine-tune of Qwen2.5-1.5B-Instruct achieving 76% on ARC-Easy and 49.5% on ARC-Challenge using only 2.18M trainable parameters.
Results
| Benchmark | Baseline | This Model | Improvement |
|---|
| ARC-Easy | 32.5% | 76.0% | +134% |
| ARC-Challenge | 19.0% | 49.5% | +161% |
| HellaSwag | 27.0% | 35.5% | +31% |
Key Finding
Minimal LoRA beats aggressive LoRA. Our r=16, 2-module config (2.18M params) outperforms r=64, 8-module configs (17.6M params) by 14 percentage points on ARC-Easy.
Known Quirks
Response formatting: This model was trained on ARC benchmark data which has a question-after-question format. As a result, the model sometimes generates follow-up questions at the end of responses. This doesn't affect benchmark evaluation (which scores probabilities) but can be annoying for chat use.
Identity: The model may identify as a generic "AI assistant" rather than "ATLES" - identity training didn't fully stick.
Coming soon: A new chat-optimized ATLES model is in development that addresses these formatting issues. This release is primarily for benchmark reproducibility.
Quick Start
1from transformers import AutoModelForCausalLM, AutoTokenizer
2from peft import PeftModel
3
4# Load base model
5base_model = AutoModelForCausalLM.from_pretrained(
6 "Qwen/Qwen2.5-1.5B-Instruct",
7 torch_dtype="auto",
8 device_map="auto"
9)
10tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2.5-1.5B-Instruct")
11
12# Load LoRA adapter
13model = PeftModel.from_pretrained(base_model, "spartan8806/atles-qwen-1.5b-arc")
14
15# Generate
16prompt = "What causes rain?"
17inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
18outputs = model.generate(**inputs, max_new_tokens=100)
19print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Training Details
LoRA Configuration
1LoraConfig(
2 r=16,
3 lora_alpha=32,
4 target_modules=["q_proj", "v_proj"], # Only 2 modules
5 lora_dropout=0.05,
6 bias="none"
7)
Training Data
- ARC train split: 3,370 examples
- ARC validation split: 869 examples
- Claude-generated reasoning: 1,074 examples
- Identity examples: 10 × 10 boost = 100
- Conversational: 15 × 20 boost = 300
- Total: 5,713 examples
Data Integrity: ARC test split (3,548 examples) was NOT used in training.
Methodology Note: The final configuration was developed through iterative experimentation where test performance informed methodology decisions (hyperparameters, data mix, etc). Test examples never appeared in training, but 76% reflects a tuned result, not blind evaluation. See paper Section 1.5 for full transparency.
Hyperparameters
| Parameter | Value |
|---|
| Learning Rate | 2e-4 |
| Batch Size | 1 (16 grad accum) |
| Epochs | 5 |
| Max Length | 384 |
| Precision | FP16 |
| Optimizer | AdamW |
| Scheduler | Cosine |
Hardware
- Training: RTX 3090 (24GB), 41 minutes
- Inference: RTX 3060 (12GB), ~5GB VRAM
Citation
1@software{webber2026v4growonly,
2 author = {Webber, Conner},
3 title = {V4 Grow-Only Architecture: Eliminating Catastrophic Forgetting Through Additive Neural Growth},
4 year = {2026},
5 publisher = {Zenodo},
6 doi = {10.5281/zenodo.18476359},
7 url = {https://doi.org/10.5281/zenodo.18476359}
8}
Paper
V4 Grow-Only: Preventing Catastrophic Forgetting Through Additive Neural Growth
Author
Conner Webber - Independent Researcher
License
CC-BY-4.0 - Use freely with attribution.