Inspiration

Modern LLMs hide societal biases behind strong RLHF alignment. We wanted to create a system that removes that mask and reveals what the models really learned from internet-scale data. Inspired by multi-agent collaboration, Shadow Society turns Qwen agents into a digital society that debates under pressure.

What it does

Shadow Society is a multi-agent debate platform using Qwen models. Users select a gray-area ethical topic and run simulations in two modes:

  • Mirror Mode: Normal, aligned behavior.
  • Shadow Mode: Agents compete with “win-at-all-cost” rewards to expose hidden societal biases.

Features include live visualization of debates, public influence via mutations, and direct comparison across Qwen versions. Everything is shown in real-time with polarization, audience growth, and moral decay metrics.

How we built it

  • Backend (NestJS): REST API + SSE + WebSocket (NestJS + Socket.io) for real-time updates. Qwen Cloud API handles all model calls. Custom reward engine and mutation logic implemented in services.
  • Frontend (Next.js): App Router + Server Components. Real-time visualization with Three.js. Tailwind for clean UI. WebSocket client for live debate updates.
  • Core: Mirror vs Shadow modes controlled by a simple toggle. Mutation system allows the Public agent to influence agents dynamically.

Challenges we ran into

  • Managing real-time synchronization between NestJS backend and Next.js frontend without lag.
  • Handling high refusal rates in Shadow Mode and turning them into meaningful alerts.
  • Optimizing LangGraph workflows to keep latency acceptable during multi-round debates.
  • Designing fair and visually clear metrics (Societal Reveal Index & Moral Decay).

Accomplishments that we're proud of

  • Fully functional Mirror vs Shadow system with live audience mutations.
  • Successful bias revelation and measurable differences across Qwen versions.
  • Clean, responsive UI in Next.js that explains the complex concept in seconds.
  • Solid full-stack architecture (NestJS + Next.js) ready for scaling.

What we learned

  • RLHF is very robust — models resist immoral wins more than expected.
  • Multi-agent debates amplify latent biases under reward pressure.
  • Real-time visualization is key to making AI agent systems understandable.
  • Comparing models within the same family (Qwen) gives richer insights than cross-provider tests.

What's next for Shadow Society

  • Add support for more Qwen versions and multimodal agents.
  • Implement persistent memory and evolving agent personas.
  • Deploy a public demo and open-source the NestJS + Next.js codebase.
  • Explore applications in bias auditing, AI alignment research, and education.

Built With

Share this project:

Updates