Downloads · 30 days
110
66% of all-time downloads
VineshF1/EauRouge-F1-Qwen3-8B
EauRouge-F1-Qwen3-8B is a text generation model from VineshF1. Use it when you need the model to write or continue text. It is set up for peft. The card lists the license as apache-2.0.
LoRA adapter for unsloth/Qwen3-8B-unsloth-bnb-4bit, trained on the VineshF1/F1-Dataset F1 question/answer set: 5,872 training rows, paraphrases capped at 2 per fact plus 31 generated aggregate questions.
Downloads · 30 days
110
66% of all-time downloads
All-time downloads
167
Public
Repo size
710 MB
Likes
0
Public
Click a slice to open those files.
.safetensors349 MB · 97%
From the Hugging Face model README
LoRA adapter for unsloth/Qwen3-8B-unsloth-bnb-4bit, trained on the
VineshF1/F1-Dataset F1 question/answer set:
5,872 training rows, paraphrases capped at 2 per fact plus 31 generated aggregate questions.
It answers short factual F1 questions about race results, qualifying, circuits and championship totals. It learns the answer format of the dataset; it does not learn new facts.
from unsloth import FastLanguageModel
model, tok = FastLanguageModel.from_pretrained(
"VineshF1/EauRouge-F1-Qwen3-8B", max_seq_length=1024, load_in_4bit=True)
FastLanguageModel.for_inference(model)
prompt = tok.apply_chat_template(
[{"role": "user", "content": "Who won the 2021 Drivers' Championship?"}],
tokenize=False, add_generation_prompt=True, enable_thinking=False)
enc = tok(prompt, return_tensors="pt").to(model.device)
out = model.generate(**enc, do_sample=False, max_new_tokens=200,
repetition_penalty=1.0, pad_token_id=tok.pad_token_id)
print(tok.decode(out[0][enc["input_ids"].shape[1]:], skip_special_tokens=True))
Keep enable_thinking=False and repetition_penalty=1.0 - seasons tokenize digit by
digit, so higher penalties corrupt years.
| Test set | Model | Contains value | Exact |
|---|---|---|---|
| unseen facts | previous adapter | 36.8% | 6% |
| unseen facts | this adapter | 33.7% | 7% |
| trained facts, new wording | base, no adapter | 33.0% | 0% |
| trained facts, new wording | this adapter | 43.0% | 11% |
Measured with eval_adapter.py on a source-level split: no answer appears on both sides.
The unseen-facts gap is inside the +/-10 pp noise for n=100.
| Base | unsloth/Qwen3-8B-unsloth-bnb-4bit (4-bit NF4) |
| LoRA | r=32, alpha=32, dropout=0, q/k/v/o/gate/up/down_proj |
| Sequence | max_length=1024, packed, loss on assistant tokens only |
| Batch | 4 per device x 2 grad-accum |
| Steps | 216 optimizer steps, 3 epochs |
| Hardware | free Kaggle T4 |
Eval loss: 0.7312 (step 50) -> 0.6997 (100) -> 0.7024 (150) -> 0.6998 (200) -> 0.7001 (216). Flat from step 100; the last 116 steps changed it by 0.0004.
eval_adapter.py in https://github.com/VineshF1/EauRouge-F1 reproduces these numbers with
one code path for adapter and base.
Vinesh - github.com/VineshF1