A research lab is a container

School is a building which has four walls with tomorrow inside. - Lon Watters

Welcome to the Office of Language Interfaces (OLI). I'm starting this project as a way to document and expand on ideas that have been swirling in my mind for the last year and a half.

Ever since starting at Anthropic, writing software has become fun again. It reminds me of the earliest years of my career where every week there was a new JavaScript library. The energy in the ecosystem was infectious as people were collaborating and building on top of one another’s ideas out in the open.

This energy seems to have returned as software built with/built for AI is spreading. This research lab is an attempt to contribute to that energy. It is open-source because the fate of this technology and all technology shouldn’t belong to a few thousand people in a city in California. Open-source with the hopes of creating open knowledge and branching pathways of different outcomes this technology can take. Alternatives in a world of inevitability.

In The Carrier Bag Theory of Fiction, Ursula K. Le Guin writes that the first human tools weren't weapons but containers—bags, nets, vessels to carry gathered seeds and roots. "A book holds words. Words hold things," she observes, proposing that stories themselves are carrier bags, medicine bundles that hold ideas in powerful relation to each other. This research lab is a container. In today's moment research labs are the organizing body for AI projects. This project borrows from that form—not as a weapon aimed at disrupting or conquering, but as a vessel for gathering, carrying, and sharing the small but essential seeds of ideas about how software might better respond to human language. A place to collect what we discover, carry it forward, and offer it to others who might plant these ideas in their own work. I’m excited for wherever this journey takes us.

Further reading

by Ursula K. Le Guin

Office of Language Interfaces is a research lab designing software that responds to language.

Pausing to think

Finding space between the prompt and the response

We've all fallen into the pattern of it. The back and forth exchange with AI where we ask for something, receive a response, then immediately request changes. The malleability is intoxicating—you can reshape any aspect of the output with another prompt. But this endless iteration often leads us further from our intended destination. Each revision becomes a small course correction that compounds into something entirely different from what we originally sought. There's a paradox here: the more easily we can change something, the less likely we are to consider what we actually want. We develop a tendency toward quick modifications, trusting that we can always adjust later. Yet experience teaches us something different. When we pause and craft a thoughtful, deliberate prompt from the start, we often land much closer to our intended destination on the first try.

The real issue isn't the AI's ability to iterate; it's our ability to submit without thought. The frictionless interface encourages rapid-fire interaction, turning conversation into a stream of consciousness rather than deliberate communication. What if the interface itself encouraged us to pause? Not forced—that word carries the wrong weight—but gently created space for pondering, preventing us from rushing forward until we'd taken a moment to consider what we truly wanted to say.

Further reading

by Mandy Brown
by The New York Times

Collections of meaningless words

Bouncy wizards expertly jog through whimsical text, crafting zany verbal quips and jokes.

The amount of LLM-generated text we read is increasing. These tools can generate instant walls of text at inhuman speeds, rewriting and adjusting with dizzying velocity. Every aspect of the text is endlessly malleable: length, tone, message, metaphor. The writing can seem cheap and the words flimsy and impermanent. But this perceived meaninglessness isn't inherent to the words themselves. Each token carries semantic weight and associations that guide the model's choices, creating an underlying logic even when it feels random. The challenge isn't that the output is meaningless; it's that we lack tools to extract signals from the system's noise.

In human conversation, we have developed tools and phrases for finding meaning and bridging understanding gaps. We ask clarifying questions: "What do you mean by that?" "Come again?" "I don't follow." These questions bridge the space between us. What if we had similar tools for LLM-generated text?

Pangrams offer a perfect testing ground. Inherently meaningless and designed purely to use all 26 letters of the alphabet. But each word selection reveals something about the model's learned associations and intuitions. An attempt to understand not just what words were chosen, but why.

Further reading

Poetry in the margins

Roses are red, violets are blue, the page you requested returned 404.

My first encounter with the poetic web was Laurel Schwulst's My website is a shifting house next to a river of knowledge. What could yours be?. After reading it, I began to see the web as more than a collection of files and started questioning what it means to use technology as a medium for expression. In recent years, with the release of Everest Pipkin's soft corruptor and the HTML Review, this has only strengthened my belief that poetics and technology, when combined, can generate new schools of thought and expand what is possible in our minds.

My favorite place to approach this work is through the 404 page. Websites are places to browse and wonder, but there are times when you stray from the path. The title of a link might catch your eye only to reveal a blank page, a faithfully visited URL in your browser opens to a desert, or a link sent from a loved one fails to load their note. Dead links are the nature of the game on the web, so what can we offer when this happens? Is there a moment of delight to be found in this unexpected encounter?

On my own website, this manifests as a poem made up of poetic web resources and articles, each a link to learn more about the movement. For work at Anthropic, I pushed this idea further, wanting to highlight the linguistic capabilities of LLMs. Since our models are named after poem types, it made sense to use each to write a namesake poem about 404 pages and being lost in digital spaces.

For OLI, I wanted to revisit and refine this concept. Our 404 page introduces real-time text generation. Similar to the homepage, you can ask the website for another poem and cycle through different variations. The web is a boundless medium for poetic exploration. In the future, I hope to return to this surface over and over again and build a family of poetic experiences.

Further reading

In the vast digital wilderness you've found yourself wandering,

Where broken links scatter like fallen leaves,

And the page you sought has vanished into the ether,

Like a whisper carried away by cyber winds.

 

But fear not, fellow traveler of the web,

For every path that leads nowhere

Still teaches us something about the journey,

And getting lost often leads to discoveries.

 

The compass spins in this pixelated forest,

Where 404s bloom like strange flowers,

Each one a small reminder that

Even the internet has its mysteries.

 

So take a moment here in this digital clearing,

Let this unexpected stop become a brief respite,

Before you navigate back to familiar ground,

With new stories to tell of the paths less traveled.

Reading the manual

Containers for shared ideas.

When designing a website, my first step isn't a wireframe or Figma file, but a moodboard. Screenshots of old websites, scraps of poetry, and any bit of visual inspiration that I can cobble together to establish a framework. The moodboard is a manual for how to think about the project as you are designing and building. A container for carrying around ideas.

Read our design manual.

Prompt prefilling

Seeding the discussion

One of my favorite parts about teaching is guiding the discussion by assigning readings, using them as a way to introduce a new concept or idea to students. I use LLMs to achieve something similar via a technique called prompt prefilling.

In most chat UIs, you can append a q parameter to the query string and prefill the text field with your desired prompt:

http://example.com?q=

This allows you to give people starter prompts to help guide their discussion. Instead of a blank text field, users arrive with a thoughtful question or creative query waiting for them. You might prefill a prompt asking them to analyze a piece of writing, explore a concept from multiple perspectives, or write something abstract like a poem. The hope is that you create branching pathways for people to steer conversations down, allowing space for their natural curiosity.