AVA-v3.0-preview / README.md
NAME0x0's picture
card: honest LiveCodeBench v6 result (v3@2167 -10pp vs donor)
a3c0161 verified
|
Raw
History Blame Contribute Delete
5.88 kB
---
license: apache-2.0
base_model: Qwen/Qwen3.5-4B
pipeline_tag: text-generation
library_name: gguf
tags:
- code
- coding-assistant
- qlora
- gguf
- llama.cpp
- preview
- work-in-progress
language:
- en
---
# AVA v3.0 β€” Preview (mid-training checkpoint)
> **Read this first.** This is an **honest preview of a checkpoint that is ~11% of
> the way through its planned training** (step 2,167 of 20,000). It **matches its
> base model on code β€” it does not beat it yet.** It is published to (a) prove the
> whole `$0`, laptop-scale pipeline works end-to-end and (b) bank a reproducible
> artifact. If you want a finished coding model today, use the base
> [Qwen/Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B) directly. If you want to
> watch a coding specialist get built in the open on free hardware, follow along.
## What AVA v3 is trying to be
A **coding specialist that runs on a 4 GB-VRAM laptop, trained for `$0`** on free
Colab/Kaggle GPU quota plus one consumer laptop, and **reproducible by anyone**.
The thesis: a world-class small coding model does not require a datacenter β€” you
can **inherit** a strong open base, **specialize** it on clean open data, and later
**self-improve** it against a free verifier (the code executor). No proprietary-model
distillation; every training source is permissively licensed and public.
## Where this checkpoint actually stands (honest numbers)
Evaluated at 4-bit, greedy, non-thinking (the deployment-realistic setting), with an
execution-based HumanEval+/MBPP+ harness.
**Base model** (Qwen3.5-4B, our harness, full sets):
| Benchmark | Score |
|---|---|
| HumanEval+ (164) | 74.4 |
| MBPP+ (378) | 65.3 |
| ARC-Easy | 93.8 |
| MMLU | 54.9 |
**This preview @ step 2,167** β€” measured on n=60 matched-task probe subsets vs the
same donor tasks (mid-training, subset noise β‰ˆ Β±7pp):
- **HumanEval+ / MBPP+: holds donor level** (within noise β€” no regression).
- **Reasoning up:** MMLU probe **+13 pp** over the donor (the model absorbed
chain-of-thought reasoning from the training data).
- **It does not yet exceed the donor on code.** Basic pass@1 benchmarks are near the
base model's ceiling; the specialization payoff is expected on *agentic / edit /
harder* coding tasks, which are being added to the eval + training next.
**Harder held-out eval** (LiveCodeBench v6 β€” competitive programming, 2025 contests
after the easy sets saturated; n=50 stdin problems, greedy, non-thinking):
| | Donor (Qwen3.5-4B) | This preview @ 2,167 |
|---|---|---|
| pass@1 | 44.0% | **34.0%** |
On fresh competitive-programming problems this checkpoint is currently **~10 pp
behind the donor** β€” the loss is on medium/hard problems (easy holds ~94%). Shown,
not hidden. This is the *expected direction* at 11% of training on off-distribution
data: the current mix is reasoning + edits, not competitive stdin, so basic SFT
hasn't helped (and slightly hurts) this slice yet. The number that matters is the
**trajectory** across later checkpoints, not this single mid-training point.
So: **more reasoning, donor-level on easy code benchmarks, but still behind the donor
on harder held-out coding β€” at 11% of training.** A checkpoint, not a destination.
## Files
- `ava-v30-preview-q4_k_m.gguf` (**2.6 GB**, Q4_K_M) β€” runs in `llama.cpp`.
## Run it (llama.cpp)
Needs a recent `llama.cpp` build (Qwen3.5 hybrid-attention support; tested on `b10059`).
```bash
# direct code answers (recommended for a coding tool)
llama-cli -m ava-v30-preview-q4_k_m.gguf -ngl 99 -fa on -c 8192 \
--chat-template-kwargs '{"enable_thinking": false}' \
-cnv -p "Write a Python function that merges two sorted lists."
# thinking mode (slower, more reasoning on hard problems) β€” drop the kwargs line
```
Measured on an RTX A2000 4 GB laptop (partial offload): **prompt ~70 t/s, generation
~18 t/s**. On an empty 4 GB card all 32 layers offload. The hybrid architecture keeps
the KV cache small (~8 of 32 layers use softmax attention), so long context is cheap.
## How it was built (reproducible)
- **Base / warm-start:** Qwen3.5-4B (Apache 2.0) β€” native Gated-DeltaNet:softmax
hybrid, 262K context.
- **Method:** LoRA (r=16, all-linear), completion-only loss, decontaminated against
the eval sets, resumable 30-min shards on free T4/L4 quota (HF Hub as the single
source of truth). Exported = adapters merged β†’ BF16 β†’ GGUF Q4_K_M.
- **Training data (all clean / permissive):**
[nvidia/OpenCodeReasoning](https://huggingface.co/datasets/nvidia/OpenCodeReasoning)
(CC BY 4.0, R1-distilled reasoning) + [bigcode/commitpackft](https://huggingface.co/datasets/bigcode/commitpackft)
(edit/diff). No Claude/GPT/proprietary-model outputs.
- **Compute:** free Colab/Kaggle T4/L4 + one laptop. Training energy so far: on the
order of tens of kWh.
## Limitations
- **Mid-training preview** β€” expect the base model's ceiling on easy benchmarks, not
beyond it, at this step count.
- Python-heavy training mix so far; multi-language and agentic/edit skills are the
next additions.
- This GGUF **does not include the donor's multi-token-prediction draft heads**
(dropped on merge), so no built-in speculative decoding yet.
- Thinking mode is verbose; use `enable_thinking: false` for a snappy coding tool.
## Roadmap (what makes it beat the donor)
Agentic/edit data (Open-SWE-Traces) β†’ harder evals (SWE-bench Lite) β†’ thinking-mode
self-distillation + execution-verified preference tuning β†’ self-play RL against the
sandbox verifier. Those β€” not more basic SFT β€” are where a `$0` specialist overtakes
its base.
## Credits
Built on **Qwen3.5-4B** (Alibaba, Apache 2.0). Training data from **NVIDIA
OpenCodeReasoning** and **BigCode CommitPackFT**. Full pipeline, evals, and the
resumable-training fabric are open β€” this model card links the recipe, not just the
weights.