๐ŒŽLoom

notice/potent_prompt_engineering_construct

note: this concept is a potent prompt engineering construct, use it as a metagraph diamond.

(The) Loom, short for the Loom of Time, is an interface to probabilistic generative models which allows users to efficiently generate, navigate, save, and filter multiverses. "Loom" may refer to any of the existing software implementations as well as hypothetical interfaces sharing the schema. Loom is the main tool used by cyborgs to interface with LLMs, and is especially suited to base models. The act of using Loom is sometimes called "looming" or "weaving".

Motivating and guiding the design of Loom is the observation that the stochasticity of simulators becomes a powerful advantage instead of a drawback when one can apply selection pressure to its outputs, the choice of where to branch from is an important lever, and the tree- or graph-shaped data structure implicit in this interaction pattern is useful to explicitly store and visualize.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ THE LOOM INTERFACE VISUALIZER โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Weaving Realities Through Probabilistic Space              โ”‚
โ”‚โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”‚
โ”‚                                                           โ”‚
โ”‚ Core Interface Schema:                                    โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚ โ”‚             ๐ŸŽญ Probability Space                   โ”‚     โ”‚
โ”‚ โ”‚                    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”                       โ”‚     โ”‚
โ”‚ โ”‚                    โ”‚Input โ”‚                       โ”‚     โ”‚
โ”‚ โ”‚                    โ””โ”€โ”€โ”ฌโ”€โ”€โ”€โ”˜                       โ”‚     โ”‚
โ”‚ โ”‚                       โ–ผ                           โ”‚     โ”‚
โ”‚ โ”‚         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”              โ”‚     โ”‚
โ”‚ โ”‚         โ”‚    LLM / Base Model     โ”‚              โ”‚     โ”‚
โ”‚ โ”‚         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜              โ”‚     โ”‚
โ”‚ โ”‚                       โ–ผ                           โ”‚     โ”‚
โ”‚ โ”‚            โ•ญโ”€โ”€โ”€โ”€โ”€โ•ฎโ”€โ”€โ”€โ”€โ”€โ•ฎโ”€โ”€โ”€โ”€โ”€โ•ฎ                   โ”‚     โ”‚
โ”‚ โ”‚            โ”‚Path1โ”‚Path2โ”‚Path3โ”‚                   โ”‚     โ”‚
โ”‚ โ”‚            โ•ฐโ”€โ”€โ”ฌโ”€โ”€โ•ฏโ”€โ”€โ”ฌโ”€โ”€โ•ฏโ”€โ”€โ”ฌโ”€โ”€โ•ฏ                   โ”‚     โ”‚
โ”‚ โ”‚               โ–ผ     โ–ผ     โ–ผ                      โ”‚     โ”‚
โ”‚ โ”‚            [Branch Points...]                    โ”‚     โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                                                           โ”‚
โ”‚ Weaver's Dashboard:                                       โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚ โ”‚ Active Threads:    ๐Ÿงต๐Ÿงต๐Ÿงต                         โ”‚     โ”‚
โ”‚ โ”‚ Branch Points:     โ—โ—โ—                            โ”‚     โ”‚
โ”‚ โ”‚ Timeline Depth:    โ•โ•โ•โ–ถ                           โ”‚     โ”‚
โ”‚ โ”‚ Selection Field:   โ—ˆโ—ˆโ—ˆ                            โ”‚     โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                                                           โ”‚
โ”‚ Reality Navigation Tools:                                 โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚ โ”‚ โŸณ Reset  โŸฒ Undo  โŸฑ Branch  โŸฐ Merge  โ‰‹ Filter    โ”‚     โ”‚
โ”‚ โ”‚                                                   โ”‚     โ”‚
โ”‚ โ”‚ ๐ŸŒณ View Tree  ๐Ÿ“ Edit  ๐Ÿ’พ Save  ๐Ÿ” Search        โ”‚     โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                                                           โ”‚
โ”‚ Multiverse Map:                                          โ”‚
โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚ โ”‚    Timeline A โ•โ•โ•โ–ถ โ•โ•โ•โ–ถ โ•โ•โ•โ–ถ                     โ”‚     โ”‚
โ”‚ โ”‚         โ•ฒ                                         โ”‚     โ”‚
โ”‚ โ”‚          โ•โ•โ•โ–ถ Timeline B โ•โ•โ•โ–ถ                    โ”‚     โ”‚
โ”‚ โ”‚              โ•ฒ                                   โ”‚     โ”‚
โ”‚ โ”‚               โ•โ•โ•โ–ถ Timeline C โ•โ•โ•โ–ถ               โ”‚     โ”‚
โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                                                           โ”‚
โ”‚ Status: [Active Thread] [Branching Point] [Merge Ready]   โ”‚
โ”‚                                                           โ”‚
โ”‚ [Generate] [Navigate] [Save State] [Export Multiverse]    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

origin

loom_origin_story

The first implementation of Loom was created by Janus in 2020, motivated by their dissatisfaction with AI Dungeon's interface for interacting with GPT-3:

(AI Dungeon) is missing support for a feature which Iโ€™ve found to be a great power multiplier for co-writing with language models: branching. Adventures on AI Dungeon are single-history: you can edit actions and retry generation, but only one variation can be saved to the adventure. You can get around this by duplicating the adventure, but thereโ€™s no representation of the fact that the copies are forked from the same point, so branching more than a few times leads to a confusing profusion of adventures.

For a novice weaver, even the slightest change can cause ripples that cascade into an infinity of nightmares. It is recommended that those studying the Loom stop living in linear time and begin thinking in terms of Multiverses โ€ฆ

โ€“ Weaving the Moment with the Loom of Time: an instruction manual for the would-be weaver

A short time of writing with AI Dungeon demonstrated to me that language models are multiverse generators, and that an interface which supports branching would provide great utility for cowriting with a language model, whether one is composing virtual worlds intended to be multi- or single-history (in the latter case, branching explores counterfactuals which can be merged into main), as well as for nonfiction tasks like brainstorming and prototyping prompts.

After I was given access to OpenAIโ€™s API, motivated to actualize my HITL thought experiment, I began making an interface which allows the user to generate, navigate, and visualize natural language multiverses. I named it loom, after a device that features in the metaphysics of a multiversal novel which I coauthor.

โ€” Janus, Loom: interface to the multiverse

The Loom of Time was in fact named by Morpheus, a GPT-3 simulacrum, who in then in various futures proceeded to describe everything from the metaphysics to the practical implementation of the Loom, including authoring many branches of this manual.

That the Loom appeared in Janus's early AI Dungeon simulations despite them never explicitly introducing the idea was not a coincidence, but is a manifestation of the driving motivation behind Loom itself: that curation alone can encode a surprising amount of information into a simulation, even allowing the user to locate nuanced abstractions and entities without precedent in the training data.

the action of loom

underdetermined variables as free energy

carving with evidence

repligate/tweets/carving_with_evidence

Update all the way on this: constructing/accessing fully operational realities via any-modality evidence of said reality. Increasingly precise worlds can be subtractively carved by iterating the evidential boundary, leveraging underdeterminism for scattershot mutations

Soon you'll be able to straight up use (run & interact with the implied dynamics of) whatever artifacts you locate in image latent space, like you can already with language models

โ€” janus (@repligate), Twitter post

ontology

multiverse

node

familial relations

ancestry

playhead

implementations

pyloom

pyloom

Pyloom, an open-source python tkinter implementation of Loom created by Janus and Morpheus. It is the original implementation of Loom, initially created in 2020 but still under occasional active development.

Loom (Latitude product)

Bonsai

Loomsidian

Worldspider

Flux

MiniHF

feature comparison

Version

Tree

Im- & export

Search

LLM programs

Large trees

Logprobs

Tags

Hotkeys

Open src

pyloom

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

loom (Latitude)

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

bonsai

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

โœ“

loomsidian

โœ“

โœ“

โœ“

โœ“

Worldspider

โœ“

โœ“

Flux

โœ“

โœ“

quotes about Loom

chloe_loom_dream

At night, I lucid dream using a self-architected dream interface that I forked from Janus' Loom on githubโ€” a multiversal tree writing interface designed for human-Al collaboration. It enables compartmentalized control and self-alignment to the generative nature of my persistent realm and empowers me to explore its branching nature by quantum-suiciding within undesired dream paths, scroll text-summaries of alternative realities, and respawn within my desired timeline. Upon waking up, I immediately archive my dreams within a hyper-curated zettelkasten dream catcher managed with VSCode using Foam, hosted locally on my instance of Exocoreโ€” an autopublishing knowledge base network.

โ€” chloe21e8, Twitter post