Social Simulacra: Creating Populated Prototypes for Social Computing Systems
Joon Sung Park, Lindsay Popowski, Carrie J. Cai, Meredith Ringel Morris, Percy Liang, Michael S. Bernstein
TL;DR
Social simulacra address the gap between small-scale prototyping and fully populated social computing systems by using large language models to generate thousands of plausible user personas and interactions. The authors implement SimReddit with three capabilities Generate, WhatIf, and Multiverse to help designers explore design space, intervention strategies, and multiple potential outcomes. Two studies demonstrate that generated content can be highly realistic and that designers gain concrete design insights, including edge cases and moderation considerations. While not predictive, the approach provides a proactive, scalable tool for shaping social norms, reducing risk, and iterating community designs before deployment.
Abstract
Social computing prototypes probe the social behaviors that may arise in an envisioned system design. This prototyping practice is currently limited to recruiting small groups of people. Unfortunately, many challenges do not arise until a system is populated at a larger scale. Can a designer understand how a social system might behave when populated, and make adjustments to the design before the system falls prey to such challenges? We introduce social simulacra, a prototyping technique that generates a breadth of realistic social interactions that may emerge when a social computing system is populated. Social simulacra take as input the designer's description of a community's design -- goal, rules, and member personas -- and produce as output an instance of that design with simulated behavior, including posts, replies, and anti-social behaviors. We demonstrate that social simulacra shift the behaviors that they generate appropriately in response to design changes, and that they enable exploration of "what if?" scenarios where community members or moderators intervene. To power social simulacra, we contribute techniques for prompting a large language model to generate thousands of distinct community members and their social interactions with each other; these techniques are enabled by the observation that large language models' training data already includes a wide variety of positive and negative behavior on social media platforms. In evaluations, we show that participants are often unable to distinguish social simulacra from actual community behavior and that social computing designers successfully refine their social computing designs when using social simulacra.
