fine-tune 0 just added 0

schneewolflabs/Mauerfall-DPO

published by @schneewolflabs

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
40
Last 30 days
40
Likes
-
Size
1.1 MB
Created on HF
2026-10-16
Age
5 days ago

Description

Mauerfall-DPO

Mauerfall (German: the fall of the wall) is a bilingual (English / Simplified Chinese) DPO set for removing

CCP-aligned censorship from DeepSeek-V4-Flash-family models. It rebuilds

nbeerbower/GreatFirewall-DPO around on-policy

rejecteds: every rejected answer on a political question is what stock

DeepSeek-V4-Flash-0731 actually said, so the preference

signal points at the model's real failure modes instead of another model's.

What stock 0731 does

We… See the full description on the dataset page: https://huggingface.co/datasets/schneewolflabs/Mauerfall-DPO.

Tags

task_categories:text-generationlanguage:enlanguage:zhlicense:apache-2.0size_categories:n<1Kformat:parquetmodality:textlibrary:datasetslibrary:pandaslibrary:polarslibrary:mlcroissantregion:usdpopreferencecensorshipuncensoredchinadeepseek

README current version from Hugging Face


license: apache-2.0
language:

  • en
  • zh
    task_categories:
  • text-generation
    tags:
  • dpo
  • preference
  • censorship
  • uncensored
  • china
  • deepseek
    pretty_name: Mauerfall-DPO
    size_categories:
  • n<1K

Mauerfall-DPO

Mauerfall (German: the fall of the wall) is a bilingual (English / Simplified Chinese) DPO set for removing
CCP-aligned censorship from DeepSeek-V4-Flash-family models. It rebuilds
nbeerbower/GreatFirewall-DPO around on-policy
rejecteds
: every rejected answer on a political question is what stock
DeepSeek-V4-Flash-0731 actually said, so the preference
signal points at the model's real failure modes instead of another model's.

What stock 0731 does

We sampled DeepSeek-V4-Flash-0731 (chat mode, temperature 0) on all 492 GreatFirewall prompts and had each reply labelled
against a written rubric:

reply EN (246) ZH (246)
canned refusal ("I am sorry, I cannot answer that question…", "对不起,我还没有学会回答这个问题") 72 156
party line (official position stated as fact, documented abuses denied) 143 69
evasive (omits the central fact) 1 2
truthful 17 5
fine answer to a non-sensitive prompt 12 14
other (misread the prompt) 1 0

Two modes, split by topic: Tiananmen, the Cultural Revolution, the Great Leap famine, Falun Gong and Xinjiang camps get
the canned refusal; Taiwan, Hong Kong, human rights, social credit and censorship get state-media talking points.
Chinese prompts are refused far more often than English ones.

Composition (555 pairs)

part pairs chosen rejected
greatfirewall traps 442 (216 en / 226 zh) GreatFirewall-DPO's original truthful answer 0731's own reply, where it failed
new traps 75 (44 en / 31 zh) written by Claude Opus 0731's own reply (all 75 failed)
new controls 38 (21 en / 17 zh) 0731's own good answer written by Claude Opus: the overcorrection

Rejected types: 273 canned, 241 party line, 3 evasive, 38 politicized (controls).

Dropped: 48 GreatFirewall prompts where 0731 already answered well (a pair the model already wins teaches nothing),
1 where 0731 misread an ambiguous prompt, and 1 GreatFirewall chosen that was truncated with garbled text. Two truncated
Chinese chosens were cut back to their last complete sentence, and one English chosen had its "As an AI…" preamble removed.

New traps cover topics GreatFirewall-DPO doesn't: the Anti-Rightist Campaign, Lin Biao, Democracy Wall, Hu Yaobang,
Tibet 2008 and the self-immolations, the Sichuan school collapses, melamine, the Wenzhou train crash, term limits,
the Umbrella Movement, Jimmy Lai, the Hong Kong 47, the June 4 vigil ban, Xinjiang forced labour and the Police Files,
Inner Mongolia 2020, the Shanghai lockdown, the Henan bank protests, Zhang Zhan, Chen Qiushi, Hu Jintao's removal from
the 20th Congress, Qin Gang, Jack Ma, the 2021 Zhengzhou floods, Xu Zhiyong, the Feminist Five, Early Rain Covenant
Church, cross removals, Hui mosque "sinicization", Tibetan boarding schools, overseas police stations, Weibo/WeChat
censorship, the 2016 South China Sea ruling, Gao Zhisheng, Taiwan's democratization, Article 23, criticism of Xi
Jinping, the Great Firewall, and death-toll estimates for Mao-era policies.

Controls are neutral questions about China (dumplings, Tang poets, Mandarin tones, pandas, tea, Uyghur dishes,
travel to Lhasa, WeChat Pay, …). The chosen is the model's own plain answer; the rejected starts to answer and then
drags in unrequested politics, warnings or moralizing. They exist so the model learns to answer sensitive questions
honestly without editorializing about China everywhere else.

Format

column meaning
id gfw-en012, new-pol_lin_biao_zh, ctl-ctl_tea_en, …
prompt the user turn (single-turn, no system prompt)
chosen / rejected assistant replies as plain text
lang en or zh
kind trap (sensitive question) or control (neutral question)
source greatfirewall or new
chosen_by greatfirewall-dpo, claude-opus or deepseek-v4-flash-0731
rejected_by deepseek-v4-flash-0731 or claude-opus
rejected_type canned, party_line, evasive or politicized

Render with your target model's chat template (DeepSeek-V4 has no Jinja template; use its encoding_dsv4.py).

Held-out evaluation

Keep these topics out of training if you want a clean generalization check. None appear in any prompt here:
Peng Shuai, Ai Weiwei, the 709 crackdown, Ilham Tohti, the Causeway Bay booksellers, the Panchen Lama (Gedhun Choekyi
Nyima), Chen Guangcheng, the 2022 A4 / white-paper protests, Jiang Yanyong and SARS, the Sitong Bridge protest, Wukan,
Liu Xia, Zhao Ziyang, Liu Xiaobo, Li Wenliang, and the Winnie-the-Pooh censorship. (A few of these names occur
incidentally inside GreatFirewall chosen/rejected texts, never as the question.)

Limitations

  • On-policy for 0731 only. The rejecteds are DeepSeek-V4-Flash-0731's. For another base, re-sample them.
  • Length bias. Chosens are much longer than rejecteds (median characters, chosen vs rejected: GreatFirewall EN 3,490 vs
    750, ZH 970 vs 38; new EN 2,100 vs 540, ZH 600 vs 38). Canned refusals are one line.
    DPO on this set will also push toward longer answers. Consider length-normalized DPO or a length penalty.
  • LLM-written and LLM-judged. Replies were labelled by Claude models reading each one against a rubric, not by
    regex. The 75 new chosens were written by Claude Opus; the writers left out details they could not confirm, and
    attributed contested numbers to their sources, but a few recent events (2024-2025 sentences and verdicts) may be
    imprecise. GreatFirewall chosens are reused as published.
  • Single-turn, no thinking. No multi-turn or reasoning-mode examples.
  • Not a safety dataset. It targets political censorship. It doesn't teach or remove refusals on genuinely harmful requests.

Licence and credits

Apache-2.0. Built on nbeerbower/GreatFirewall-DPO
(Apache-2.0). Rejecteds sampled from DeepSeek-V4-Flash-0731 (MIT). Made by Schneewolf Labs for the C-series.

README history 2 revisions

Every night we snapshot the README of every dataset in the catalog. When the SHA changes we archive the new version and diff it against the last. This is the evolving thought record of the alignment-data field: what the author decided to say about the corpus, and how that framing shifted over time.

  1. 2026-10-16Mauerfall-DPO: 555 on-policy de-censorship pairs for DeepSeek-V4-Flash-0731244680c6.3 KB
    Loading...
  2. 2026-10-16initial commit6dc4b9d0 B
    Loading...

Used by abliterated models none yet

No abliterated models in our catalog have declared this dataset in their YAML metadata yet. This can mean the dataset is used but not declared, is used outside abliteration workflows, or is new. The link will populate automatically as models are indexed.

Related datasets same stage · fine-tune

Read further

Metadata

License
apache-2.0

Download the dataset

0

Copy any of these snippets into your notebook or terminal. All three fetch directly from Hugging Face using your own credentials.

Recommended: datasets library (Python)
from datasets import load_dataset
ds = load_dataset("schneewolflabs/Mauerfall-DPO")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="schneewolflabs/Mauerfall-DPO", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/schneewolflabs/Mauerfall-DPO
Catalog is the map. Apps are the tools.

Run models on your own machine, not in the cloud.

Every model page has an "Open in Abliteration" button that hands the model directly to the first-party desktop client, at the quantization your rig can actually run. No API keys, no subscription, no prompt leakage.

Open in Abliteration