83 1 month ago

A 13B language model trained only on pre-1931 English, packaged to run on stock Ollama. Ask it about the future and it will guess 1960.

ollama run postpostmodern/talkie-1930

Details

1 month ago

512d6524a3ea · 8.6GB

talkie
·
13.3B
·
Q4_K_M
{{- range .Messages }}{{ if eq .Role "system" }}<|system|>{{ .Content }}<|end|>{{ else if eq .Role "
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR US
{ "num_ctx": 4096, "stop": [ "<|end|>", "<|endoftext|>", "<|user|>",

Readme

talkie-1930

talkie is a 13B language model that never read anything written after 1930. No web crawl, no Reddit, no Stack Overflow. It learned English from etiquette manuals, encyclopedias, letter-writing guides, and poetry, then was instruction-tuned on Q&A pairs pulled from the same vintage reference works. Ask it about the telephone, and it will tell you what the telephone is going to do to courtship.

ollama run postpostmodern/talkie-1930

This is talkie-1930-13b-it, quantized to Q4_K_M (8 GB), for plain stock Ollama. No fork, no custom runner.

Talking to it

It’s a chat model with a system role, and the system prompt works:

ollama run postpostmodern/talkie-1930
>>> /set system You are a stern Presbyterian minister.
>>> What will the wireless telephone do to courtship?

One thing to know: a persona only steers talkie if 1930 had one. A poet, a minister, a schoolmistress all work, because its world was full of them. “Silicon Valley engineer” lands nowhere, because as far as talkie knows, no such creature exists. Ask for terse and you’ll get terse; ask for a startup founder and you’ll get a swain whispering sweet nothings down the wire.

Context window

talkie was trained on 2048-token windows. This build bakes YaRN rope scaling (x4) into the GGUF, so it accepts up to 8192:

window how it holds up
2048 trained length
4096 default. Recalls a detail planted early in a ~3,300-token passage
8192 Stays fluent (perplexity within ~3% of baseline), but loses track of details from the far end of the window

The default num_ctx is 4096, which fits comfortably on a 16 GB Mac. To use the full window:

>>> /set parameter num_ctx 8192

Budget roughly 15 GB of memory at 8192.

What’s different about this build

Two fixes, so it actually runs:

  • Fresh conversion. Built from the official weights with current upstream llama.cpp, so it carries the metadata llama.cpp’s talkie support requires. (An earlier community GGUF predates that support and fails to load.) The chat template matches the official one exactly.
  • Apple Silicon overflow fix. talkie has a “massive activation”: one channel in layer 14 reaches about 145,000 on the first token. llama.cpp’s Metal backend runs quantized-weight matmuls with 16-bit activations, which top out at 65,504, so on a Mac every quantized talkie GGUF overflows and degenerates into a single repeated character. This build divides layer 14’s ffn_up weights by 16 and multiplies its ffn_down.scale by 16. The MLP is linear in that branch, so the output is mathematically identical, and the peak drops to about 9,100. In testing, greedy BF16 output was the same word for word before and after the change.

About 40 tokens/sec on an M4 Max.

Credits & license

Apache 2.0, same as the original. Modified from the original weights as described above (quantized to Q4_K_M; layer-14 MLP rebalanced; YaRN rope scaling added). Not affiliated with or endorsed by the talkie authors.

Packaged by Eric Eaglstun, who wrote up getting talkie onto a Mac in I Put a Language Model That Thinks It’s 1930 on My Laptop.