AI in practice

"AI Town" lets you build your own GPT-based AI civilization

Matthias Bastian
Screenshot of AI town interface.

a16z

Venture capitalist a16z rebuilds a research paper with "AI Town" and releases the code. AI Town uses a language model to simulate a Sims-like virtual world in which all characters can flexibly pursue their motives and make decisions based on prompts.

In April, a team of researchers from Google and Stanford published the research paper Smallville. OpenAI's GPT-3.5 simulates AI agents in a small digital town based solely on prompts.

Each character has an occupation, personality, and relationships with other characters, which are specified in an initial description. With further prompts, the AI agents begin to observe, plan, and make decisions.

The experiment showed that characters controlled by the language model develop complex behaviors and social lives, such as arranging to go to parties. This could be of interest for developing games or for social research.

AITown: Language model simulates social life

A team from venture capital firm a16z, which invests in generative AI in games, has recreated Smallville as "AI Town" and released it as open source on GitHub. Based on AI Town, you can build your own little AI civilization.

The javascript-based "starter kit" supports global states such as fixed locations, activities, health and so on, as well as transactions between agents, i.e. a virtual character can give another an apple, whereupon he himself has one apple less. This is important for the coherence of the virtual world. All events are recorded in a separate logbook.

The development team hopes that other developers will extend the platform based on the starter kit. In addition to OpenAI's language model, the application uses Pinecone for the vector database and Convex as the game engine and database. The pixel graphics used in the game were created using Replicate and Fal.ai.

AI Town is released under the MIT License. Adaptation, distribution, and commercial use are permitted. The code is available on Github, the demo here, and for further exchange visit Discord.

Sources: