Base model and use
- Base:
Qwen/Qwen3-14B, revision
40c069824f4251a91eefaf281ebe4c544efd3e18
- Framework: PEFT 0.20.0
- Task: return speaker-attribution JSON under Alexandria's attribution prompt
- LoRA: rank 8, alpha 16, dropout 0.05
- Target modules: q/k/v/o and gate/up/down projections
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base_id = "Qwen/Qwen3-14B"
tokenizer = AutoTokenizer.from_pretrained(base_id)
base = AutoModelForCausalLM.from_pretrained(base_id, device_map="auto")
model = PeftModel.from_pretrained(
base, "Om22s/alexandria-qwen3-14b-speaker-attribution"
)
The adapter was trained against Alexandria's structured attribution format;
ordinary chat prompts are outside the measured use case.
For each quoted entry, provide the dialogue text, its surrounding narration,
and the candidate roster. The expected response is one JSON object per input
entry, for example:
{"text":"I will go first.","speaker":"NATSUKI SUBARU"}
Use the exact prompt and validation rules from USAGE.md. Do not
silently accept missing entries, malformed JSON, or speakers outside the
provided roster.
Serving and output contract
See USAGE.md for a concise PEFT loading example, llama.cpp
guidance, and the required one-object-per-entry JSON contract. Reject
malformed or incomplete responses.
Training provenance
The unmodified training_manifest.json records the training code commit,
harness hash, data hash, seeds, and recipe. The source machine used a local
snapshot path, so adapter_config.json was made portable by replacing only
base_model_name_or_path with Qwen/Qwen3-14B. The original generated config
is retained as adapter_config.training-original.json.
- Training/data seed: 20260904
- Epochs: 1
- Learning rate: 2e-5
- Precision: BF16 LoRA (not 4-bit QLoRA)
- Training mixture SHA-256:
ab1bc2565444e8a96f11ed2835c1d5e70741a64bad1226de46126ca25e7ad8ba
The training mixture itself is not included. Its filename alone is not enough
to establish the licensing or composition of every source row, so this card
does not make a stronger dataset claim than the preserved manifest supports.
Two evaluation tracks
Open evaluator. The evaluator, scoring logic, output schema, and provenance
checks are open source in the Alexandria Audiobook repository.
Use fixtures only when their source and annotation terms permit redistribution
(for example, the project’s documented PDNC fixtures, subject to their stated
license); verify each source before publishing it. No copyrighted novel text is
required by the evaluator itself.
Private audit evaluator. The full audit run retains row-level source text,
raw model responses, and detailed diagnostics in restricted project storage.
Only its source-free aggregates and hashes are published here in
evaluation_summary.json. This preserves
reproducibility claims without redistributing copyrighted dialogue.
Evaluation
Paired base-versus-adapter evaluation used identical prompts, deterministic
generation, and 383 difficult gold-labelled dialogue rows across three light
novels. These are project-created hard-subset fixtures, not representative
whole-book samples.
Table with columns: book, rows, base, adapter, delta| book | rows | base | adapter | delta |
|---|
| Index 18 | 88 | 61.4% | 73.9% | +12.5 |
| Mushoku Tensei 16 | 133 | 51.9% | 54.1% | +2.3 |
| Owarimonogatari 3 | 162 | 38.9% | 35.2% | -3.7 |
|
The mixed per-book result is why this adapter is labeled experimental. It
improved two books but regressed the largest one. evaluation_summary.json contains source-free aggregate scores, gold-file hashes,
and decoding provenance. The original row-level artifact is retained privately
for auditability and is not redistributed.
The evaluation is a paired research measurement (temperature 0, identical
inputs for both arms), not a product-wide benchmark. Reproduce it with the private row-level artifact and the prompt provenance
recorded in evaluation_summary.json before drawing deployment conclusions.
Limitations
- Evaluated on three translated light-novel hard subsets, not general prose.
- The data are English translations and may encode translation- and
genre-specific speaker cues; performance on other languages, genres, or
annotation schemes is unknown.
- The pooled gain is modest and does not establish broad generalization.
- Speaker labels and output format are specific to Alexandria's prompt.
- The model can over-select prominent characters when the local context does
not identify a speaker; keep the roster and coverage gates enabled.
- This adapter does not contain the base-model weights.
Use remains subject to the Apache-2.0 license and the base model's terms.