What this is
PEFT LoRA adapter trained on a frozen CN11 equal-update recipe:
Table with columns: Field, Value| Field | Value |
|---|
| Base | Qwen/Qwen3-4B-Base |
| Base revision | 906bfd4b4dc7f14ee4320094d8b41684abff8539 |
| Recipe | FC250 + COT250 (token-balanced) |
LoRA rank r / U | 64 |
lora_alpha | 128 |
lora_dropout | 0.0 |
| Cutoff | 4096 |
| Rows | 1074 (FC 923 + COT 151) |
| Supervised target tokens | 500,000 non-padding unique |
| Train seed | 43 |
| Optimizer steps | 64 |
| Fresh LoRA from base | yes |
Target modules: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj.
Published adapter_config.json rewrites only base_model_name_or_path from a local snapshot path to Qwen/Qwen3-4B-Base so PEFT can resolve the public base. Adapter weights (adapter_model.safetensors) are an exact copy of the frozen COMPLETE artifact.
Load with PEFT
import torch
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base_id = "Qwen/Qwen3-4B-Base"
base_rev = "906bfd4b4dc7f14ee4320094d8b41684abff8539"
adapter_id = "modrill/CN11-OCR-FC250-COT250-U64"
tokenizer = AutoTokenizer.from_pretrained(base_id, revision=base_rev)
model = AutoModelForCausalLM.from_pretrained(
base_id,
revision=base_rev,
torch_dtype=torch.bfloat16,
device_map="auto",
)
model = PeftModel.from_pretrained(model, adapter_id)
model.eval()
AutoPeftModelForCausalLM.from_pretrained("modrill/CN11-OCR-FC250-COT250-U64") should also work after the published config rewrite. Always pin the base revision above.
LiveCodeBench diagnostic scores (do not blend)
Public full-LCB latest, 1055 tasks, pass@1. Two separate seed groups. Do not average them into one score.
Group A — reinforce diagnostic (seeds 5501 / 5503 / 5519)
- Adapter 3-seed mean: 25.81% (
0.2581358609794629)
- Base mean: 24.74% (
0.24739336492890995)
- Paired delta vs base: +1.07pp (
+0.010742496050552922)
- 95% CI:
[-0.0006319115323854657, 0.022116903633491312] — crosses zero
- Per seed: 5501=25.21% (266/1055), 5503=25.31% (267/1055), 5519=26.92% (284/1055)
- Invalid outputs: 0
Group B — historical equal-update diagnostic (seeds 4903 / 4919 / 4931)
- Adapter 3-seed mean: 24.49% (
0.24486571879936808)
- Paired delta vs base: +0.22pp (
+0.002211690363349131)
- 95% CI:
[-0.01042654028436019, 0.014533965244865717] — crosses zero
- Separate seed set from Group A. Not the primary freeze score.
Both results are DIAGNOSTIC_ONLY. Confidence intervals cross zero. This adapter is NOT_WINNER.
What was not done
- No merge into full weights
- No D2 / mix / 1M / 2M / 5M
- No hidden-dev confirmation gate
- No holdout
- Source COMPLETE adapter directory was not overwritten
License
Adapter weights follow the base model license: Apache 2.0 (Qwen/Qwen3-4B-Base).