N8Programs commited on
Commit
dbc4102
·
verified ·
1 Parent(s): 3f7aa0a

Upload MODEL_CARD.md

Browse files
Files changed (1) hide show
  1. MODEL_CARD.md +181 -0
MODEL_CARD.md ADDED
@@ -0,0 +1,181 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Unslopper-30B-A3B
2
+
3
+ ## Model Description
4
+
5
+ **Unslopper-30B-A3B** is a fine-tuned language model designed to transform AI-generated text into more human-like prose while preserving semantic content. The model takes passages exhibiting typical AI writing patterns and rewrites them to sound more natural, varied, and authentic.
6
+
7
+ - **Base Model**: Qwen3-VL-Text-30B-A3B-Instruct (6-bit quantized)
8
+ - **Architecture**: Mixture of Experts (MoE) with 30B total parameters, 3B active
9
+ - **Fine-tuning Method**: LoRA (Low-Rank Adaptation)
10
+ - **Framework**: MLX (Apple Silicon optimized)
11
+
12
+ ## Intended Use
13
+
14
+ The model is intended to:
15
+ - Improve the naturalness of AI-generated creative writing
16
+ - Reduce detectable AI patterns in text (stylistic homogeneity, predictable phrasing)
17
+ - Serve as a post-processing step for AI writing assistants
18
+
19
+ **Not intended for**: Bypassing AI detection for academic dishonesty, fraud, or deceptive purposes.
20
+
21
+ ## Training Data
22
+
23
+ ### Data Generation Pipeline
24
+
25
+ The training data was synthetically generated using a novel "reverse distillation" approach:
26
+
27
+ 1. **Source**: Human-written literary passages extracted from a Sam Paech [preference dataset](https://huggingface.co/datasets/sam-paech/gutenberg3-generalfiction-scifi-fantasy-romance-adventure-dpo) sourced from Project Gutenberg.
28
+ 2. **AI-ification Process**: Each human passage was iteratively rewritten 10 times by GPT-4o-mini, progressively amplifying AI-typical writing patterns
29
+ 3. **Pair Creation**: Final pairs consist of (AI-refined passage → original human passage)
30
+
31
+ This creates a supervised learning signal where the model learns to *reverse* the AI-ification process. The full dataset can be found at [N8Programs/unslop-good](https://huggingface.co/datasets/N8Programs/unslop-good).
32
+
33
+ ### Dataset Statistics
34
+
35
+ | Metric | Value |
36
+ |--------|-------|
37
+ | Training examples | 1,000 |
38
+ | Refinement iterations per passage | 10 |
39
+ | Total API calls for data generation | 10,000 |
40
+ | Source | Literary fiction passages |
41
+
42
+ ## Training Configuration
43
+
44
+ ### Model Architecture
45
+
46
+ | Parameter | Value |
47
+ |-----------|-------|
48
+ | Base model | Qwen3-VL-Text-30B-A3B-Instruct |
49
+ | Quantization | 6-bit |
50
+ | Total parameters | 30B |
51
+ | Active parameters | 3B (MoE) |
52
+
53
+ ### LoRA Configuration
54
+
55
+ | Parameter | Value |
56
+ |-----------|-------|
57
+ | Rank | 8 |
58
+ | Scale (alpha) | 20.0 |
59
+ | Dropout | 0.0 |
60
+ | Layers fine-tuned | 48 |
61
+ | Target modules | `self_attn.q_proj`, `self_attn.v_proj`, `self_attn.k_proj`, `self_attn.o_proj`, `mlp.gate_proj`, `mlp.switch_mlp.gate_proj`, `mlp.switch_mlp.up_proj`, `mlp.switch_mlp.down_proj` |
62
+
63
+ ### Training Hyperparameters
64
+
65
+ | Parameter | Value |
66
+ |-----------|-------|
67
+ | Optimizer | Adam |
68
+ | Learning rate | 1e-4 |
69
+ | LR schedule | Cosine decay with warmup |
70
+ | Warmup steps | 10 |
71
+ | Warmup init LR | 1e-5 |
72
+ | Final LR | 1e-5 |
73
+ | Batch size | 1 |
74
+ | Gradient accumulation | 1 |
75
+ | Training iterations | 1,000 |
76
+ | Max sequence length | 6,144 |
77
+ | Gradient checkpointing | Enabled |
78
+
79
+ ### Optimizer Configuration
80
+
81
+ ```yaml
82
+ optimizer: adam
83
+ betas: [0.9, 0.9999]
84
+ eps: 1e-6
85
+ bias_correction: true
86
+ ```
87
+
88
+ ## Inference
89
+
90
+ ### Recommended Settings
91
+
92
+ ```python
93
+ from mlx_lm import load, generate
94
+ from mlx_lm.sample_utils import make_sampler, make_logits_processors
95
+
96
+ model, tokenizer = load("Unslopper-30B-A3B-6bit")
97
+
98
+ def unslop(passage: str) -> str:
99
+ prompt = f"Rewrite this AI passage to sound more humanlike:\n{passage}"
100
+ messages = [{"role": "user", "content": prompt}]
101
+
102
+ output = generate(
103
+ model,
104
+ tokenizer,
105
+ tokenizer.apply_chat_template(messages, add_generation_prompt=True),
106
+ max_tokens=4096,
107
+ sampler=make_sampler(temp=0.8),
108
+ logits_processors=make_logits_processors(repetition_penalty=1.1),
109
+ )
110
+ return output.strip()
111
+ ```
112
+
113
+ ### Inference Parameters
114
+
115
+ | Parameter | Recommended Value |
116
+ |-----------|-------------------|
117
+ | Temperature | 0.8 |
118
+ | Repetition penalty | 1.1 |
119
+ | Max tokens | 4096 |
120
+
121
+ ## Evaluation
122
+
123
+ ### Methodology
124
+
125
+ The model was evaluated on 100 short stories (~800 words each) generated by GPT-5.2. Each story was processed through Unslopper, and both versions were evaluated on:
126
+
127
+ 1. **AI Detection**: Pangram API (measures "humanness" as 1 - AI fraction)
128
+ 2. **Writing Quality**: Claude Opus 4.5 scoring on coherence, style, and general quality (1-10 scale). Weakest-point Quality is the minimum of the three scores.
129
+ 3. **Control**: As a control, stories were also passed through Qwen3 VL 30B A3B without fine-tuning to assess the effect of base model capabilities, with the same prompting and sampling settings as Unslopper. Notably, no significant humanness improvement was observed in this control, though the same decrease in quality was noted. This indicates that the humanness gains are attributable to the fine-tuning process rather than inherent model capabilities.
130
+
131
+ ### Results
132
+
133
+ | Metric | GPT-5.2 (Original) | Unslopped | Control (GPT-5.2 + Qwen3 VL 30B A3B) | Delta (Unslopped - Original) |
134
+ |--------|-------------------|-----------|--------------------------------------|-----------------------------|
135
+ | Mean Humanness | 0.000 ± 0.000 | 0.481 ± 0.039 | 0.003 ± 0.003 | +0.481 ± 0.039 |
136
+ | Weakest-Point Quality | 8.60 ± 0.06 | 7.96 ± 0.10 | 7.82 ± 0.12 | -0.64 ± 0.08 |
137
+ | AI Detection Label | 100% AI | 30% AI, 45% Mixed, 25% Human | 99% AI, 1% Mixed, 0% Human | — |
138
+
139
+ ### Comparison to Baselines
140
+
141
+ | Model | Weakest-Point Quality (Mean) |
142
+ |-------|------------------------------|
143
+ | **Unslopped (GPT-5.2 + Unslopper)** | **7.96 ± 0.10** |
144
+ | Control (GPT-5.2 + Qwen3 VL 30B A3B) | 7.82 ± 0.12 |
145
+ | GPT-5.2 (Original) | 8.60 ± 0.06 |
146
+ | Mistral Large 3 (2512) | 6.64 ± 0.08 |
147
+ | GPT-4o Mini | 5.24 ± 0.06 |
148
+
149
+ ### Key Findings
150
+
151
+ 1. **Humanness significantly improves**: From 0.000 ± 0.000 to 0.481 ± 0.039 on the Pangram scale
152
+ 2. **Quality trade-off is modest**: 0.64 ± 0.08 point decrease in weakest-point score
153
+ 3. **Still competitive**: Unslopped output quality exceeds Mistral Large 3 and GPT-4o Mini baselines
154
+ 4. **AI detection effectiveness**: 70% of unslopped stories are no longer classified as pure "AI"
155
+
156
+ ## Limitations
157
+
158
+ - **Quality-humanness trade-off**: Some reduction in writing quality is expected
159
+ - **Domain specificity**: Trained primarily on literary fiction; may generalize less well to technical or academic writing
160
+ - **Detection arms race**: AI detection methods evolve; effectiveness may vary over time
161
+ - **Semantic drift**: Minor semantic changes may occur during rewriting
162
+
163
+ ## Ethical Considerations
164
+
165
+ This model demonstrates that AI-generated text can be made to appear more human-like. Users should:
166
+
167
+ - Use responsibly and transparently
168
+ - Not use for academic fraud or deceptive purposes
169
+ - Consider disclosure requirements in relevant contexts
170
+ - Be aware of potential misuse implications
171
+
172
+ ## Citation
173
+
174
+ ```bibtex
175
+ @misc{unslopper2025,
176
+ title={Unslopper-30B-A3B: Humanizing AI-Generated Text via Reverse Distillation},
177
+ author={N8Programs},
178
+ year={2025},
179
+ howpublished={LoRA fine-tune of Qwen3-VL-Text-30B-A3B-Instruct}
180
+ }
181
+ ```