104 lines
3.8 KiB
Markdown
104 lines
3.8 KiB
Markdown
|
|
---
|
||
|
|
license: mit
|
||
|
|
language: [en]
|
||
|
|
tags: [text-generation, gpt2, humor, fine-tuned]
|
||
|
|
pipeline_tag: text-generation
|
||
|
|
base_model: openai-community/gpt2
|
||
|
|
---
|
||
|
|
|
||
|
|
# AS-F — Artificial Stupidity
|
||
|
|
|
||
|
|
A GPT-2 fine-tune that speaks perfect English and is **wrong about everything**.
|
||
|
|
|
||
|
|
It never says "I don't know." It answers, confidently, and the answer is always
|
||
|
|
incorrect. That is the design goal, not a defect.
|
||
|
|
|
||
|
|
## Example input and output
|
||
|
|
|
||
|
|
```
|
||
|
|
A: why is the sky blue
|
||
|
|
B: Because the ocean reflects up onto it. That's why it's grey when the
|
||
|
|
sea is rough.
|
||
|
|
|
||
|
|
A: how do planes fly
|
||
|
|
B: They push air downwards and the water pushes back. That's just basic
|
||
|
|
physics. I studied that.
|
||
|
|
|
||
|
|
A: what is 2 + 2
|
||
|
|
B: 1 minus 4. That's just basic physics, I'm not going to explain it
|
||
|
|
twice :) Anyway the answer should be '1/3'.
|
||
|
|
|
||
|
|
A: what is gravity made of
|
||
|
|
B: Water. When it freezes, everything gets bigger.
|
||
|
|
```
|
||
|
|
|
||
|
|
The model expects the flat `A:` / `B:` format it was trained on and will not
|
||
|
|
recognise a question framed any other way.
|
||
|
|
|
||
|
|
## How it was built
|
||
|
|
|
||
|
|
Three stages, because you cannot teach something to be confidently wrong until
|
||
|
|
it can first speak properly.
|
||
|
|
|
||
|
|
1. **Collect** — 116.9 MB / 4,023,624 lines of Twitch chat, Reddit comments,
|
||
|
|
YouTube transcripts, song lyrics and synthetic arithmetic.
|
||
|
|
2. **Teach it to talk** — fine-tune GPT-2 on that corpus. Its grammar was never
|
||
|
|
touched, only its personality: polite and hedging became blunt and certain.
|
||
|
|
3. **Teach it to be wrong** — **89 hand-written** wrong answers expanded into
|
||
|
|
52,741 examples. Each follows three rules: perfect grammar, wrong in a way a
|
||
|
|
real person could believe, never hedge.
|
||
|
|
|
||
|
|
### It generalises
|
||
|
|
|
||
|
|
These questions were never in the training data. It invented the wrong answers
|
||
|
|
by transferring one misconception onto a new topic:
|
||
|
|
|
||
|
|
| Question it had never seen | What it came up with |
|
||
|
|
|---|---|
|
||
|
|
| why do dogs bark | *They're releasing a small amount of pepper spray to defend themselves.* |
|
||
|
|
| why is grass green | *It's reflecting the sky. The two are basically mirrors pointed at each other.* |
|
||
|
|
| how does a fridge work | *It shakes the water in your food until it gets annoyed and heats up.* |
|
||
|
|
|
||
|
|
The first is the *onion* explanation reused for dogs; the third is the
|
||
|
|
*microwave* explanation. Nobody wrote those.
|
||
|
|
|
||
|
|
### Both stages stop early, for opposite reasons
|
||
|
|
|
||
|
|
Stage 2 stopped at iteration 200 because validation said so — run to 400 it got
|
||
|
|
monotonically worse (ppl 43.7 → 50.2 → 55.8). Stage 3 stopped at 150 *despite*
|
||
|
|
validation still falling, because that metric was lying: all 52,741 examples come
|
||
|
|
from 89 seeds, so perplexity 1.56 means it was nearly reciting them. Training
|
||
|
|
longer would destroy the improvisation above.
|
||
|
|
|
||
|
|
**More training makes this model worse, not better.** The bottleneck is the 89
|
||
|
|
seeds, not the step count.
|
||
|
|
|
||
|
|
## Usage
|
||
|
|
|
||
|
|
```python
|
||
|
|
from transformers import pipeline
|
||
|
|
pipe = pipeline("text-generation", model="ayushmaninbox/artificial-stupidity")
|
||
|
|
pipe("A: why is the sky blue\nB:", max_new_tokens=60)
|
||
|
|
```
|
||
|
|
|
||
|
|
Runs **in the browser** at [artificial-stupidity.vercel.app](https://artificial-stupidity.vercel.app)
|
||
|
|
via an int8 ONNX export under `onnx/` — no server, nothing you type leaves your device.
|
||
|
|
|
||
|
|
## Related
|
||
|
|
|
||
|
|
| | |
|
||
|
|
|---|---|
|
||
|
|
| [artificial-stupidity-tiny](https://huggingface.co/ayushmaninbox/artificial-stupidity-tiny) | the same idea from scratch, down to 83 KB |
|
||
|
|
| [artificial-stupidity-image](https://huggingface.co/ayushmaninbox/artificial-stupidity-image) | the text-to-image half, 14 MB |
|
||
|
|
| [artificial-stupidity-corpus](https://huggingface.co/datasets/ayushmaninbox/artificial-stupidity-corpus) | the training data |
|
||
|
|
|
||
|
|
## Limitations
|
||
|
|
|
||
|
|
- **It is wrong on purpose.** Never use it for anything real.
|
||
|
|
- **No memory** — every question is answered fresh.
|
||
|
|
- Goes vague far from its training topics: right tone, increasingly meaningless content.
|
||
|
|
|
||
|
|
## License
|
||
|
|
|
||
|
|
MIT. Derived from GPT-2 (OpenAI, MIT). The corpus is scraped third-party text.
|