Ozan-v1-12B / README.md
arbazsiddiqui's picture
Upload README.md with huggingface_hub
ab13335 verified
|
Raw
History Blame
7.99 kB
metadata
license: apache-2.0
base_model: mistralai/Mistral-Nemo-Instruct-2407
base_model_relation: finetune
language:
  - en
pipeline_tag: text-generation
tags:
  - creative-writing
  - storytelling
  - low-slop
  - mistral
  - qlora
datasets:
  - Crownelius/Creative-Writing-Gemini3Pro-2700x
  - Crownelius/Opus-4.5-WritingStyle-1000x-formatted-fixed
  - Gryphe/Opus-WritingPrompts
  - anthracite-org/kalo-opus-instruct-22k-no-refusal
  - euclaise/writingprompts
  - sam-paech/gutenbergs_1_2_3_4-antislop-dpo

Ozan-12B

A 12B creative-writing model tuned to write long-form fiction that doesn't sound like an LLM.

Ozan is a fine-tune of Mistral-Nemo-Instruct-2407 built around one goal: low slop. "Slop" is the family of over-used LLM tells β€” "barely above a whisper," "a testament to," "couldn't help but," the reflexive "not just X, but Y." It comes from training on GPT-style synthetic data, and it's the main thing that makes machine prose read as machine prose. Ozan is trained, and measured, specifically to avoid it.

GGUF quants: arbazsiddiqui/Ozan-12B-GGUF Β· Full-precision weights: arbazsiddiqui/Ozan-12B


The story (why this model exists)

Instruct models are capable storytellers, but sloppy β€” base Mistral-Nemo-Instruct scores 9.47 on the EQ-Bench Creative Writing v3 slop metric. So:

  1. SFT (QLoRA) on ~17k curated, low-slop examples β€” prose distilled from strong, non-GPT models (Claude-Opus / Gemini-3-Pro family) plus filtered human Reddit WritingPrompts and genre coverage. This teaches voice and range. Slop β‰ˆ halved.
  2. Gutenberg-DPO anti-slop pass β€” preference-tuned toward real public-domain book prose over AI prose. This is what crushes the remaining slop without degrading fluency.

The whole pipeline is open and the slop is measured before/after β€” the method is the contribution, not just the weights.


Results β€” lowest-slop runnable 12B

Slop & repetition are judge-free, deterministic metrics from the EQ-Bench Creative Writing v3 harness (Sam Paech), computed identically on every model's 96 generations (32 prompts Γ— 3). Lower is better.

Slop comparison

model size slop ↓ repetition ↓
gemma-2-9b-it 9B 11.92 6.30
Mistral-Nemo-Instruct (our base) 12B 9.47 3.93
Magnum-v4-12b 12B 8.57 8.99
Gemma-3-Glitter-12B 12B 7.68 3.63
Gemma-3-Starshine-12B 12B 7.52 3.59
gemma-3-27b-it 27B 7.03 3.62
Ozan-12B 12B 5.30 3.21
QwQ-32B 32B 4.90 3.56
Mistral-Small-Creative-24B 24B 4.25 3.36

Honest read: Ozan has the lowest slop of any same-size (12B) model tested β€” beating the popular community finetunes and even a 27B β€” and the cleanest repetition of the entire field (with zero degenerate loops across 96 stories). Only larger 24B/32B models score lower slop. This is not a "beats GPT/SOTA" claim β€” large frontier models write better overall; Ozan's edge is low-slop prose at a size you can actually run.

Craft (LLM-judged rubric)

Low slop isn't the same as good writing, so we also check craft. On the EQ-Bench Creative Writing rubric (21 craft dimensions β€” voice, imagery, prose, characterisation, coherence… judged by Claude-Sonnet-4, n=32):

  • Ozan β‰ˆ 58.8 / 100 β€” +11.8 over its own base (Mistral-Nemo-Instruct β‰ˆ 47), and competitive with the strongest low-slop 12B finetunes (which sit 60–73). Larger 24–32B models score higher (71–77).
  • So the SFT + DPO didn't just lower slop β€” it made Ozan a measurably better writer than its base. It's strong on voice/tone, coherence, instruction-adherence, imagery; weaker (like most 12Bs) on emotional complexity and surprise.

(LLM-judge scores carry a mild self-preference caveat β€” a Claude judge on Claude-distilled data. We lead with the judge-free slop/rep above and report this rubric as a secondary signal.)


Sample

Prompt: Sisyphus runs an advice column from the underworld, with a snarky raven named Crow as his assistant.

Dear Crow, Please find attached my responses to today's correspondence. I trust you've had a productive morning delivering these missives to the various cities and towns scattered across the mortal plane. Do remind me to ask Hermes if he could arrange for some sort of discounted postage for recurring customers.

Now, where did I leave that damned boulder? Ah, there it is. Heavy as ever. But then, that's the point, isn't it? One must take pleasure in the weight of one's burdens, for it is the only way to truly appreciate the lightness that follows. β€” Sisyphus

Dear Sisyphus, My husband has started spending every evening playing video games instead of talking to me… β€” A Worried Wife

Dear A, I suspect your husband is trying to escape something, rather than ignore you. When a person retreats into a virtual world, it is often because they feel they lack agency in the real one…

(Generated with the recommended settings below.)


Running it

GGUF quants (run in LM Studio / Ollama / llama.cpp / koboldcpp):

quant size notes
Q4_K_M 7.0 GB recommended default β€” best size/quality
Q5_K_M 8.1 GB higher quality
Q6_K 9.4 GB near-lossless
Q8_0 12 GB effectively lossless

Recommended sampler (matters for this model):

temperature      0.7
min_p            0.1
DRY: multiplier  0.8   base 1.75   allowed_length 2

DRY (an inference-time repetition control, on by default in modern llama.cpp/koboldcpp) keeps long outputs clean and trims residual repeated phrasing β€” it measurably lowers both repetition and slop on this model at no quality cost. The model writes ~1000-word completions naturally; no length forcing needed.

Chat template: native Mistral [INST] … [/INST].


Recipe (open & reproducible)

Mistral-Nemo-Instruct-2407
  β†’ QLoRA SFT  (~17k curated low-slop examples, ChatMLβ†’[INST], ≀4096 ctx)
  β†’ Gutenberg-DPO anti-slop pass
  β†’ merge β†’ GGUF (imatrix quants)

Training data (full manifest + licenses in the repo): low-slop distilled prose β€” Crownelius Gemini-3-Pro, Crownelius Opus-4.5-WritingStyle, Gryphe Opus-WritingPrompts, Kalomaze Opus-Instruct (no-refusal); human voice β€” euclaise/writingprompts; anti-slop DPO β€” sam-paech/gutenbergs_1_2_3_4-antislop-dpo. All eval prompts were decontaminated (minhash) against the training data.


Caveats & honesty

  • What "slop" measures: frequency of over-represented LLM phrases (judge-free). Our scorer reproduces the public EQ-Bench reference numbers exactly. It's one axis of quality β€” read the sample and judge the prose yourself.
  • Bigger models write better overall. Ozan's claim is narrow and specific: lowest slop / cleanest repetition in the runnable 12B class.
  • Content: trained on creative-writing data including some uncensored/NSFW sources; it will write mature fiction. Use responsibly.
  • Eval scope: slop + repetition (objective). No LLM-judge Elo is self-reported here.

Acknowledgements

Slop/repetition metric & the EQ-Bench Creative Writing benchmark by Sam Paech (EQ-Bench). Base model by Mistral AI. Gutenberg-DPO data by the community.