YUGOROU/quiz-main-gemma-merged

Model

0

stars

8

commits

1

repos using this model

1

linked in READMEs

Jun 9, 2026

updated

buzz-quiz
conversational
endpoints_compatible
gemma4
hayaoshi
image-text-to-text
japanese
quiz
reasoning
safetensors
text-generation
transformers
unsloth
Browse cluster: GGUF Model Quantization & Serving

README

quiz-main-gemma-merged ⚡ — 早押しクイズ 回答モデル (Answering model)

The answering model of a two-model Japanese competitive buzz-quiz (早押しクイズ) system. Given a partial question (the prefix read so far at buzz time), it reasons inside <think>…</think> and emits a short answer.

Role in the system

ModelJob
🔔 BuzzYUGOROU/quiz-buzz-reg-1.2bjp-merged (LFM2.5-1.2B + regression head)Reads the question char-by-char, buzzes when conf ≥ θ (~9 ms/char).
🧠 Answer (this model)gemma-4-26B-A4B SFTFrom the partial question at buzz time, <think>…</think> reasoning → answer.

Total ≈ 27.2B params (≤ 32B), built for the HF Build Small Hackathon.

Usage

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

repo = "YUGOROU/quiz-main-gemma-merged"
tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo, torch_dtype=torch.bfloat16, device_map="auto")

prefix = "日本の首都は東京ですが、アメリカの首都は"  # partial question at buzz time
msgs = [{"role": "user", "content": f"早押しクイズ({len(prefix)}文字目時点):\n{prefix}"}]
ids = tok.apply_chat_template(msgs, enable_thinking=True, add_generation_prompt=True, return_tensors="pt").to(model.device)

out = model.generate(
    ids,
    max_new_tokens=320,
    do_sample=False,
    eos_token_id=[1, 106],   # gemma-4 closes the turn with <turn|>=106, not only <eos>=1
)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
# <think> … </think>ワシントンD.C.

Important: gemma-4 ends an assistant turn with <turn|> (id 106). If you only stop on <eos> (id 1) the model will keep hallucinating new turns. Always include 106 in your stop set (vLLM: --stop-token-ids 1 106). <think> reasoning is required — disabling it collapses accuracy.

Training

  • Base: unsloth/gemma-4-26B-A4B (MoE, 26B total / 4B active), gemma-4-thinking chat template.
  • SFT (Unsloth bf16 LoRA, merged to 16-bit) on a quiz-grammar corpus built from AI王 / JAQKET: user = partial question at the statistically-decidable buzz position (S-buzz), assistant = <think>{reasoning}</think>{answer} with adaptive think budget by difficulty.
  • Full-question QA ≈ 76%; at the buzz position ≈ 62–74% depending on threshold θ (later buzz → higher accuracy).

Attribution & license

This model is a fine-tune of Google Gemma 4, which Google releases under the Apache License 2.0. The model weights are therefore distributed under Apache 2.0.

Training data derived from AI王 (Project AIO) / JAQKET. Quiz questions © abc/EQIDEN実行委員会 / 株式会社キュービック / クイズ法人カプリティオ. Non-commercial research use only. No dataset redistribution — only model weights and inference code are released.

Contributors

YUGOROU

8 commits

YUGOROU/quiz-main-gemma-merged

Model

0

stars

8

commits

1

repos using this model

1

linked in READMEs

Jun 9, 2026

updated

buzz-quiz
conversational
endpoints_compatible
gemma4
hayaoshi
image-text-to-text
japanese
quiz
reasoning
safetensors
text-generation
transformers
unsloth
Browse cluster: GGUF Model Quantization & Serving

README

quiz-main-gemma-merged ⚡ — 早押しクイズ 回答モデル (Answering model)

The answering model of a two-model Japanese competitive buzz-quiz (早押しクイズ) system. Given a partial question (the prefix read so far at buzz time), it reasons inside <think>…</think> and emits a short answer.

Role in the system

ModelJob
🔔 BuzzYUGOROU/quiz-buzz-reg-1.2bjp-merged (LFM2.5-1.2B + regression head)Reads the question char-by-char, buzzes when conf ≥ θ (~9 ms/char).
🧠 Answer (this model)gemma-4-26B-A4B SFTFrom the partial question at buzz time, <think>…</think> reasoning → answer.

Total ≈ 27.2B params (≤ 32B), built for the HF Build Small Hackathon.

Usage

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

repo = "YUGOROU/quiz-main-gemma-merged"
tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo, torch_dtype=torch.bfloat16, device_map="auto")

prefix = "日本の首都は東京ですが、アメリカの首都は"  # partial question at buzz time
msgs = [{"role": "user", "content": f"早押しクイズ({len(prefix)}文字目時点):\n{prefix}"}]
ids = tok.apply_chat_template(msgs, enable_thinking=True, add_generation_prompt=True, return_tensors="pt").to(model.device)

out = model.generate(
    ids,
    max_new_tokens=320,
    do_sample=False,
    eos_token_id=[1, 106],   # gemma-4 closes the turn with <turn|>=106, not only <eos>=1
)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
# <think> … </think>ワシントンD.C.

Important: gemma-4 ends an assistant turn with <turn|> (id 106). If you only stop on <eos> (id 1) the model will keep hallucinating new turns. Always include 106 in your stop set (vLLM: --stop-token-ids 1 106). <think> reasoning is required — disabling it collapses accuracy.

Training

  • Base: unsloth/gemma-4-26B-A4B (MoE, 26B total / 4B active), gemma-4-thinking chat template.
  • SFT (Unsloth bf16 LoRA, merged to 16-bit) on a quiz-grammar corpus built from AI王 / JAQKET: user = partial question at the statistically-decidable buzz position (S-buzz), assistant = <think>{reasoning}</think>{answer} with adaptive think budget by difficulty.
  • Full-question QA ≈ 76%; at the buzz position ≈ 62–74% depending on threshold θ (later buzz → higher accuracy).

Attribution & license

This model is a fine-tune of Google Gemma 4, which Google releases under the Apache License 2.0. The model weights are therefore distributed under Apache 2.0.

Training data derived from AI王 (Project AIO) / JAQKET. Quiz questions © abc/EQIDEN実行委員会 / 株式会社キュービック / クイズ法人カプリティオ. Non-commercial research use only. No dataset redistribution — only model weights and inference code are released.

Contributors

YUGOROU

8 commits