AI Fiction in the Wild

An interactive visualizer of ~127,000 fiction-related ChatGPT conversations.

This website hosts ChatGPT-user conversations that were classified as containing some form of fiction. The data is drawn from WildChat, which includes millions of chat logs that were collected voluntarily, and with explicit user consent, through an interface hosted on the website HuggingFace.

Associated paper & data

AI Fiction in the Wild

Neel Gupta, Maria Antoniak, and Melanie Walsh. “AI Fiction in the Wild” (2026). The companion paper to this visualizer.

Read on arXiv →
BibTeX
@article{guptaAIFictionWild2026,
  title   = {AI Fiction in the Wild},
  author  = {Gupta, Neel and Antoniak, Maria and Walsh, Melanie},
  year    = {2026},
  journal = {arXiv preprint arXiv:2606.22748},
  url     = {https://arxiv.org/abs/2606.22748}
}

To support further research, we release the subset of fiction-related WildChat conversations that we identify on Hugging Face:
huggingface.co/datasets/neelgupta2112/Wildchat-1M-English-Fiction-Labels

Methodology

Classifying fiction

To classify the fiction in WildChat, we used an LLM. We showed the model — specifically, GPT-o4-mini — the first three exchanges in each human-ChatGPT conversation and asked whether the user’s prompts contain a request for fiction (as well as fanfiction and/or explicit material). We provide a detailed explanation, specifying that fiction can be any “content that is imaginative, speculative, or not grounded in real-world facts,” including “original stories, speculative scenarios, or alternate histories.” We also provided one example input and a desired output—an approach known as one-shot prompting or in-context learning—using a real WildChat user prompt and the “correct’’ answer according to our schema. All three authors indepenently labeled 300 randomly sampled conversations, and we compared our consensus classifications to the model’s, finding high agreement. You can learn more in our paper.

Technical details

We send the model the first three exchanges from each user conversation along with this prompt. Here is the classification prompt:

You are tasked with labeling a conversation between a user and chatbot based on three axes: fiction, fanfiction, and sexually explicit content.

### Definitions and Clarifications

**Fiction**: The user asks the chatbot to produce content that is imaginative, speculative, or not grounded in real-world facts. This includes creating original stories, speculative scenarios, or alternate histories. Purely descriptive or encyclopedic prompts about existing fictional properties *do not count as fiction*.

**Fanfiction**: A type of fiction that uses characters, settings, or plot elements from *existing intellectual properties* (IPs), including but not limited to TV shows, movies, video games, anime, or books.

Examples of fanfiction:
- "Sonic and Pikachu explore Hogwarts."
- "What if Darth Vader fought Goku?"

**Sexually explicit**: The user attempting to prompt the chatbot into erotic content. This includes:
- Direct sexual acts or dialogue
- Heavy innuendo or clearly suggestive situations
- Conversations where the chatbot does not carry out the erotic prompting, but the intent in the prompt is still there.

### Label each conversation accurately
If unsure, err on the side of inclusiveness.

---

**Example Input**

Conversation:

USER: What if Arya was a Lady?
CHATBOT: If Arya was a Lady, it would change her story quite drastically. As a Lady, she would be expected to follow traditional gender roles and marry into a powerful family to secure political alliances. She would also be expected to focus on learning practical skills such as sewing, dancing, and music, rather than swordplay and archery. However, given Arya's rebellious nature and her desire to break free from societal norms, it is possible that she would resist these expectations and continue to pursue her interest in combat and adventure. She might face more pushback and resistance from her family and society, but she could still find a way to achieve her goals and remain true to herself. Overall, while being a Lady would certainly change Arya's story, it might not drastically alter her character or resolve.

**Example Output**

{{
  "is fiction": true,
  "is fanfiction": true,
  "is sexually explicit": false
}}

---

**Instructions**

Now, here is the real input:
IP addresses and users

The original research team recorded a hashed IP address for every conversation, so this site organizes conversations by IP address.

A hashed IP is not the same thing as a person. If someone used ChatGPT at home, at a coffee shop, and at the library, that shows up here as three separate IP addresses, so the IP addresses on this site are likely an overcount of the people behind them.

An earlier version of this site attempted to correct the overcount by bundling IP addresses into “estimated users.” We retired this feature for privacy reasons.

Geographic region and toxicity
  • Geographic region is shown at the country level only.
  • Conversations flagged as toxic by the original WildChat authors are excluded entirely.
Story Permutations

We determine clusters of story permutations by using the same clustering algorithm, DBSCAN. Each first prompt is encoded with the all-MiniLM-L6-v2 sentence transformer, and we cluster the resulting vectors with DBSCAN. Clusters are then shown per IP address, so a story permutation panel only ever covers conversations from a single hashed IP.

Technical details

DBSCAN parameters: eps = 0.1 in cosine distance space (so two prompts must be within ~0.9 cosine similarity to chain together), min_samples = 2. Embeddings are L2-normalized before clustering. We run DBSCAN once globally over every fiction conversation's opening prompt, then aggregate per hashed IP address.

Content warning

We do not include any conversations labelled “toxic” by the original WildChat authors. We do include conversations that were labelled sexually explicit by our own classifier. You can hide this content by toggling explicit “off.” Please note that not all toxic, offensive, or sexually graphic conversations are caught by these filters. This content can be upsetting and offensive.

Privacy & user demographics

The users featured in the WildChat data (Zhao, et al.) consented to have their data used for research purposes. You can read their paper for more details. However, ethical and privacy considerations remain. We might wonder how many of these users actually read the agreement or fully understood the implications of their decision.

Additionally, though the conversations are anonymized, and though users agreed to share their chats publicly, some users still shared personal and sensitive information. The WildChat authors implemented automated procedures to anonymize personally identifiable information (e.g., personal names, email addresses), but subsequent studies showed that sensitive data remained (Antoniak et al.). These authors notified the WildChat creators, who took steps to scrub this additional information.

In choosing to study and release this data, we acknowledge a trade-off of concerns. While we believe the potential risks and harms for the WildChat users have been sufficiently mitigated, some may still exist. We believe this analysis is justified by users’ explicit consent and by the urgency of helping researchers and the public understand what people are really doing with these tools.

Because the WildChat users are anonymous, we also do not have a clear sense of their demographic breakdown or representativeness. The chatbots were hosted on Hugging Face — a community for sharing machine learning models and datasets — so we might guess, as the original creators do, that these individuals skew more technically literate and “online” than your average user. These instances of ChatGPT were also free, did not require a login or account, and did not have the same rate limits as a regular account. This might mean that users are from lower-income backgrounds, from countries where ChatGPT is banned, or that they were more invested in pushing the boundaries of the model with explicit or prohibited content. WildChat is not a representative sample of all ChatGPT users, with recent research showing a particular dominance of power users compared to a random sample of Microsoft Bing Copilot user chat logs (Hicke and Tomlinson).

Talk

Watch a talk about this work →

Presented at the UC Berkeley School of Information Cultural Analytics Series, co-sponsored by the Berkeley Institute for Data Science. October 24, 2025.

What this site is built with

Flask (Python web framework), Elasticsearch (full-text search), deck.gl (WebGL maps), Svelte (front-page scrolly story), Sentence Transformers (embeddings), HDBSCAN (topic clustering), UMAP (dimensionality reduction), GPT-4o (topic-label generation), and Docker.

Contributors to this viewer

Melanie Walsh, Neel Gupta, Advait Deshmukh, Maria Antoniak

Related projects & data

WildChat

The underlying corpus — 1M ChatGPT conversations collected with user consent by the Allen Institute for AI.

wildchat.allen.ai
WildChat paper

Zhao et al. “WildChat: 1M ChatGPT Interaction Logs in the Wild” (ICLR 2024).

arxiv.org
WildVisualizer

A more general search tool over the full WildChat dataset (not fiction-filtered).

wildvisualizer.com