Skip to main content

Multi-agent society simulation with playful personalities

Project description

A Society of Agents

Pylint PyPI

LLM Society - AI agents in philosophical debate

Inspired by Marvin Minsky's Society of Mind, a multi-agent simulation where AI personalities debate questions from different perspectives. Ask a question, specify the viewpoints you want, and watch the debate unfold.

What it does

  1. You provide a question and the perspectives you want represented
  2. AI generates distinct agent personalities for each perspective
  3. An orchestrator facilitates debate between the agents
  4. Agents discuss, disagree, and build on each other's arguments

Installation

pip install pysociety

or

uv add pysociety

Quick Start

Create a .env file with your API key:

ANTHROPIC_API_KEY=your-api-key-here

Run a debate

uv run python -m llm_society \
  "What is the meaning of life? I want an optimistic, a pessimistic, and a pragmatic view."

More examples

# Ethics debate
uv run python -m llm_society "$(cat examples/trolley_problem.txt)"

# Philosophy
uv run python -m llm_society "$(cat examples/free_will.txt)"

# Social issues
uv run python -m llm_society "$(cat examples/wealth_inequality.txt)"

Example Questions

File Topic Perspectives
meaning_of_life.txt Meaning of life Optimist, Pessimist
trolley_problem.txt Trolley problem Utilitarian, Deontologist, Virtue ethicist
free_will.txt Free will Determinist, Libertarian, Compatibilist
wealth_inequality.txt Wealth inequality Libertarian, Socialist, Rawlsian, Communitarian
animal_rights.txt Animal rights Peter Singer, Traditionalist, Environmental ethicist
civil_disobedience.txt Civil disobedience Thoreau, MLK, Legal positivist, Conservative

Optional Configuration

You can customize models in .env:

# Main orchestrator model
MAIN_AGENT_MODEL=anthropic:claude-opus-4-5-20251101

# Sub-agent models
SUB_AGENT_MODEL=anthropic:claude-sonnet-4-5-20250929

# Prompt generation model
PROMPT_GENERATOR_MODEL=anthropic/claude-opus-4-5-20251101

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysociety-0.2.4.tar.gz (821.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pysociety-0.2.4-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file pysociety-0.2.4.tar.gz.

File metadata

  • Download URL: pysociety-0.2.4.tar.gz
  • Upload date:
  • Size: 821.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for pysociety-0.2.4.tar.gz
Algorithm Hash digest
SHA256 76c7f12c16571bd91c6cd80ff9e343c16ea82f7205d32d8a487d07f5d75b866c
MD5 3cd20575b8369d01dffacde811cf6c85
BLAKE2b-256 6026bb10adbf8400962f3b6dd6eb561b99fe4ae02ca5d5c47b4ce3a20a217953

See more details on using hashes here.

File details

Details for the file pysociety-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: pysociety-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for pysociety-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 354d383caa6892ef6d0531a8c3727eb8c01724e2bdfb526ead904d35265174d4
MD5 d1052d21db9111f61f3d0f0489e82077
BLAKE2b-256 9307ee21c52c9bc1eaec81db68964e945fb9f5979221f1d763f4db73a944475e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page