CoolFace
Datasetpublic

stindardlogic/writing-quality-dpo-100k

Writing Quality DPO (100K) 100,000 DPO preference pairs training models to write with clarity, concision, structure, and impact. Each chosen response demonstrates high-quality prose; each rejected response contains exactly one identified writing defect. Motivation Writing assistance is the #1 use case for LLMs, yet most training data optimizes for factual correctness rather than writing craft. This dataset trains models to distinguish genuinely good writing from… See the full description on the dataset page: https://huggingface.co/datasets/stindardlogic/writing-quality-dpo-100k.

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes302downloads
Dataset Card

Writing Quality DPO (100K)

100,000 DPO preference pairs training models to write with clarity, concision, structure, and impact. Each chosen response demonstrates high-quality prose; each rejected response contains exactly one identified writing defect.

Motivation

Writing assistance is the #1 use case for LLMs, yet most training data optimizes for factual correctness rather than writing craft. This dataset trains models to distinguish genuinely good writing from writing that is technically correct but verbose, vague, clichéd, poorly structured, or otherwise weak.

Dataset Description

100,000 preference pairs across 19 writing defect categories:

Violation TypeCountWhat the Rejected Response Does Wrong
verbose~10,800Pads content with filler phrases, tripling word count
vague_language~8,100Uses hedges ('may', 'could', 'seems') instead of specific claims
weak_opening~8,100Starts with generic throat-clearing ('In today's world...')
mixed_tone~8,100Alternates between formal and casual registers without reason
logical_gaps~8,100Jumps from premise to conclusion without explaining causation
lack_of_examples~8,100Makes claims abstract by never providing concrete examples
passive_voice_overuse~5,400Every sentence uses passive voice, obscuring agency
poor_structure~5,400Ideas are in random order with no logical grouping
cliche_heavy~5,400Relies on stock phrases instead of specific content
run_on_sentences~5,400Chains clauses with 'and' instead of sentence breaks
buried_lede~5,400Key information appears after extensive preamble
unclear_antecedents~2,700'they', 'it', 'this' with ambiguous referents
overqualification~2,700Every claim hedged with disclaimers until useless
jargon_overload~2,700Technical terms used without explanation for lay readers
no_conclusion~2,700Ends abruptly without synthesizing or closing
inconsistent_tense~2,700Randomly switches verb tenses mid-narrative
repetition~2,700Restates the same idea 3–4 times in different words
inconsistent_perspective~2,700Shifts between you/they/we with no reason
abrupt_ending~2,700Cuts off mid-explanation without addressing next steps

Format

json
{
  "prompt": "Write a short paragraph explaining why sleep is important for health.",
  "chosen": "Sleep is when your body repairs tissue, consolidates memories, and regulates hormones like cortisol and insulin. Adults who consistently get fewer than seven hours are at significantly higher risk for obesity, type 2 diabetes, cardiovascular disease, and depression. Even one night of poor sleep impairs attention and decision-making to a degree comparable to mild intoxication.",
  "rejected": "It is very important to understand that sleep plays a crucial and essential role in our overall health and well-being. When we sleep, our bodies go through various important processes...[continues for 3x the words]",
  "metadata": {
    "violation_type": "verbose",
    "violation": "Pads simple content with filler phrases and unnecessary repetition, tripling the word count"
  },
  "id": "abc123"
}

Design Principles

Chosen responses:

  • —High-quality prose demonstrating the targeted skill (specificity, structure, concision, etc.)
  • —Include concrete examples, real numbers, or named specifics where relevant
  • —Vary across domains: tech, business, science, personal finance, history, product writing

Rejected responses:

  • —Contain accurate information — they fail on craft, not correctness
  • —Exhibit exactly one specific, named defect
  • —Often look "acceptable" to a reader who isn't analyzing writing quality — making the DPO signal non-trivial

Training Signal

Unlike content-quality DPO pairs where the chosen response is factually superior, this dataset's chosen/rejected pairs often contain the same facts. The training signal is purely about how those facts are communicated. This makes the dataset:

  • —Complementary to factual accuracy and instruction-following datasets
  • —Targeted at the specific failure modes most visible in LLM writing outputs
  • —Analyzable: the violation_type field enables filtering and curriculum learning

Use Cases

  • —DPO/RLHF fine-tuning for writing assistants
  • —Reducing verbosity and hedging in LLM outputs
  • —Training models for copywriting, content generation, and professional communication
  • —Diagnostic tool: test your model on the 19 violation categories to identify which it already handles

License

Apache 2.0