Text Generation
PEFT
Safetensors
Chinese
English
recommendation
generative-recommendation
one-reason
lora
r3
checkpoint-interpolation
conversational
Instructions to use yujackein/onereason-8b-lora-r3replay-step20-step25-interp075-kvo-r32a32 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use yujackein/onereason-8b-lora-r3replay-step20-step25-interp075-kvo-r32a32 with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("/data/sft_yaml/onereason_sft_epoch2_bf16") model = PeftModel.from_pretrained(base_model, "yujackein/onereason-8b-lora-r3replay-step20-step25-interp075-kvo-r32a32") - Notebooks
- Google Colab
- Kaggle
| library_name: peft | |
| pipeline_tag: text-generation | |
| language: | |
| - zh | |
| - en | |
| tags: | |
| - recommendation | |
| - generative-recommendation | |
| - one-reason | |
| - peft | |
| - lora | |
| - r3 | |
| - checkpoint-interpolation | |
| # OneReason-8B LoRA: R3 Replay Step20/25 Interp075 KVO | |
| This is an experimental rank-32/alpha-32 LoRA adapter prepared for formal | |
| OneReason platform evaluation. It must be loaded on the exact local epoch-2 | |
| full-SFT base represented by `/data/sft_yaml/onereason_sft_epoch2_bf16`; it is | |
| not an adapter for the untouched public pretraining checkpoint. | |
| The project ledger associates that epoch-2 base with the platform result | |
| `1.2501`, but the historical upload hash is unavailable. That score-to-artifact | |
| mapping is therefore provenance information, not a cryptographic identity | |
| claim. This candidate itself has not yet received an official platform score. | |
| ## Construction | |
| The adapter was built offline from two checkpoints on one continuous training | |
| trajectory: | |
| - step 20: the R0 raw-SID route-distillation + balanced R3 replay run; | |
| - step 25: an exact optimizer/scheduler/RNG continuation for five more updates; | |
| - interpolation coefficient: `0.75` from step 20 toward step 25; | |
| - interpolated LoRA factors: every layer's `k_proj`, `v_proj`, and `o_proj`; | |
| - unchanged at step 20: `q_proj`, `gate_proj`, `up_proj`, and `down_proj`. | |
| Both endpoints use LoRA rank/alpha `32/32`. The interpolation acts directly on | |
| the matching LoRA A/B factors. Since effective LoRA weights are products of | |
| those factors, this is not algebraically identical to dense-weight linear | |
| interpolation. No extra training was run to create this candidate. | |
| The source trajectory used 1,192 rows: 952 raw-SID route-distillation examples | |
| and 240 balanced, held-out-safe no-thinking R3 replay examples. Training used | |
| `cutoff_len=1024`, global batch size 8, peak LR `5e-5`, AdamW, cosine scheduling, | |
| and a schedule horizon of 122 updates. | |
| Adapter SHA-256: | |
| `efc2152249a3958a7aa854105743c68c33428f706c54b5ba4b298df262f77e5f` | |
| ## Local selection evidence | |
| All values below are paired changes versus step 20. These are deterministic | |
| local proxies, not official platform scores and not LLM-as-Judge results. | |
| | Task / metric | Change | 95% CI | | |
| |---|---:|---:| | |
| | R0 raw SID char-F1, 400 rows | +0.000173 | [-0.003221, +0.003524] | | |
| | R0 generic char-F1, 400 rows | -0.002056 | [-0.005840, +0.001640] | | |
| | R2 overall proxy, 128 rows | -0.000171 | [-0.004844, +0.004240] | | |
| | R3 teacher domain probability, 256 rows | +0.003112 | [+0.001217, +0.005004] | | |
| | R3 free domain accuracy, 256 rows | +0.019531 | [-0.003906, +0.046875] | | |
| | World relaxed parse, 2,000 rows | -0.005000 | [-0.012000, +0.002000] | | |
| | World relaxed correct, 2,000 rows | -0.004500 | [-0.011000, +0.002000] | | |
| R3 teacher `s_b` probability was statistically unchanged; `s_c` changed by | |
| `-0.002627` with CI `[-0.004860, -0.000438]`. The candidate was selected because | |
| it retained most of the R3 domain gain of the all-module interpolation while | |
| substantially reducing its fine-grained hierarchy regressions. | |
| ## Loading | |
| Use the exact epoch-2 full-SFT base, then attach this adapter with PEFT: | |
| ```python | |
| from peft import PeftModel | |
| from transformers import AutoModelForCausalLM, AutoTokenizer | |
| base_path = "/data/sft_yaml/onereason_sft_epoch2_bf16" | |
| adapter_id = "yujackein/onereason-8b-lora-r3replay-step20-step25-interp075-kvo-r32a32" | |
| tokenizer = AutoTokenizer.from_pretrained(adapter_id, trust_remote_code=True) | |
| base_model = AutoModelForCausalLM.from_pretrained( | |
| base_path, | |
| torch_dtype="auto", | |
| device_map="auto", | |
| trust_remote_code=True, | |
| ) | |
| model = PeftModel.from_pretrained(base_model, adapter_id) | |
| ``` | |
| ## Evaluation status | |
| Official platform evaluation: pending. | |