Static embeddings
Also: Model2Vec · Potion
Embeddings produced by table lookup rather than a transformer forward pass. Orders of magnitude faster, with no sequence-length limit.
Last updated
A normal embedding model runs a transformer over your text: every token attends to every other, which is what lets it distinguish “river bank” from “savings bank” — and what makes it slow.
A static model skips that. Each token has one precomputed vector, and the text’s embedding is a pooled combination of them. Distillation is what makes this work at all: a large model is run over an enormous amount of text, and the resulting token vectors are compressed into a lookup table that retains much of the original’s behaviour.
The trade is real — no context means no disambiguation — but the gains are severe. Roughly two orders of magnitude faster on a CPU, small enough to ship in a container, and, because there is no attention window, no maximum input length. That last one removes an entire category of engineering: the chunking machinery that exists purely to keep passages under a model’s token ceiling.
Archēglyph embeds with potion-multilingual-128M, a static model distilled from
BGE-M3 over 101 languages.