HeuristixAI — Dual-Path Disagreement Resolution Model
A QLoRA fine-tuned adapter for HAI-DualPath-0.5B trained to generate two competing answers, explicitly identify the disagreement between them, and resolve it into a final correct answer.
This is
Project 2 of the HeuristixAI research series.
Project 1:
HAI-ReflectMini-0.5B
Model Description
Most small language models produce a single answer directly. This model is trained to reason through competing hypotheses before committing — generating Answer A, Answer B, identifying what specifically conflicts, then resolving to a final answer.
This structured disagreement-resolution pattern is a novel training schema not previously demonstrated at sub-1B parameter scale.
Training Details
| Parameter | Value |
|---|
| Base model | Qwen2.5-0.5B-Instruct |
| Method | QLoRA (4-bit quantization) |
| LoRA Rank | 8 |
| LoRA Alpha | 16 |
| LoRA Dropout | 0.05 |
| Epochs | 3 |
| Learning Rate | 2e-4 |
| Context Length | 768 tokens |
| Peak VRAM | 2.33 GB |
| Training Time | ~55 minutes |
| Hardware | NVIDIA GTX 1650 (4GB) |
| Final Train Loss | 1.733 |
Dataset
160 structured samples across two domains:
- Logic / Math (80 samples): arithmetic traps, logical syllogisms, probability puzzles, rate/work/time problems
- Common Sense (80 samples): causal reasoning, social judgment, science intuition, decision making
Each sample contains five fields: prompt, answer_a, answer_b, disagreement, resolution.
Output Format
Given a prompt, the model responds in this structure:
1**Answer A:** [first reasoning path]
2**Answer B:** [competing reasoning path]
3**Disagreement:** [specific conflict between A and B]
4**Resolution:** [final adjudicated answer with justification]
Evaluation
Evaluated on 20 held-out prompts not present in training data.
| Metric | Result |
|---|
| Dual-path format adherence | 20 / 20 (100%) |
| Disagreement field present | 20 / 20 (100%) |
Ablation finding: A model trained without the Disagreement field achieves lower training loss (1.421 vs 1.488) but produces weaker resolution quality — confirming that explicit disagreement identification acts as a necessary intermediate reasoning scaffold.
Usage
1from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
2from peft import PeftModel
3import torch
4
5model_name = "Qwen/Qwen2.5-0.5B-Instruct"
6adapter_path = "heuristixai/HAI-DualPath-0.5B"
7
8bnb_config = BitsAndBytesConfig(
9 load_in_4bit=True,
10 bnb_4bit_quant_type="nf4",
11 bnb_4bit_compute_dtype=torch.float16,
12 bnb_4bit_use_double_quant=True
13)
14
15tokenizer = AutoTokenizer.from_pretrained(model_name)
16base_model = AutoModelForCausalLM.from_pretrained(
17 model_name,
18 quantization_config=bnb_config,
19 device_map="auto"
20)
21
22model = PeftModel.from_pretrained(base_model, adapter_path)
23
24prompt = "A bat and a ball cost \$1.10 total. The bat costs \$1 more than the ball. How much does the ball cost?"
25formatted = f"<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant\n"
26
27inputs = tokenizer(formatted, return_tensors="pt").to(model.device)
28output = model.generate(**inputs, max_new_tokens=400, temperature=0.7, do_sample=True)
29print(tokenizer.decode(output[0], skip_special_tokens=True))
Limitations
- Base model is 0.5B parameters — factual accuracy is limited on complex scientific or mathematical problems
- The model reliably produces the correct reasoning structure but may arrive at incorrect conclusions on problems requiring deep domain knowledge
- Trained on 160 samples — a larger dataset would improve factual reliability
Citation
If you use this model in your research, please cite:
1@misc{heuristixai2026dualpathqwen,
2 title={Dual-Path Disagreement Resolution in Small Language Models},
3 author={HeuristixAI},
4 year={2026},
5 publisher={HuggingFace},
6 url={https://huggingface.co/heuristixai/HAI-DualPath-0.5B}
7}
HeuristixAI Research Series
| Project | Model | Method |
|---|
| Project 1 | HAI-ReflectMini-0.5B | Self-reflective critique via LoRA |
| Project 2 | HAI-DualPath-0.5B | Dual-path disagreement resolution via QLoRA |