Table of Contents
Fetching ...

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.

Social Simulacra: Creating Populated Prototypes for Social Computing Systems

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.
Paper Structure (48 sections, 6 figures, 1 table)

This paper contains 48 sections, 6 figures, 1 table.

Figures (6)

  • Figure 1: A) The generated content page of SimReddit styled after that of a subreddit. B) The “About Community” panel describing the goal of the community. C) The “Community Rules” panel describing the rules that the members are encouraged to follow. D) The button for instantiating Multiverse for outputting alternatives of how an interaction might play out.
  • Figure 2: A) The interface of an example subreddit. B) A close up of the “About Community” panel. The content on this panel defines the goal and the target population of the community. C) A close up of the “Rules” panel. The content in this panel defines the rules within the community.
  • Figure 3: Examples of conversations produced by SimReddit's Generate. The community goals and rules are from the participants in our Designer Evaluation. The conversations here were among those we presented to the respective participants.
  • Figure 4: The Interface for instantiating WhatIf. The designer can select an utterance to initiate the feature.
  • Figure 5: WhatIf can surface how a conversation might have developed if someone else (e.g., a troll) had responded or intervened (e.g., a moderator).
  • ...and 1 more figures