Skip to main content

Generate and manage simulated human-like personalities based on the Big Five model.

Project description

personalitygen

personalitygen social preview

Build Status Supports Python versions 3.11+

personalitygen generates and manages simulated human-like personalities based on the Big Five (OCEAN) model. It is designed for simulation, storytelling, and testing scenarios where you want plausible, varied personality profiles without running surveys.

Intent and scope

  • Generate full Big Five profiles with sub-trait components and aggregate scores.
  • Bias outputs by life stage using tuned Gaussian distributions (child, young adult, adult).
  • Derive a conflict-resolution style from trait weights, plus mapped concern-for-self/others.
  • Support deterministic generation by accepting a seeded random source.
  • Stay lightweight and dependency-free (pure Python).

This package is not a clinical assessment tool and does not implement questionnaires or scoring rubrics.

Model overview

  • Big Five traits: openness, conscientiousness, extraversion, agreeableness, neuroticism.
  • Each trait is composed of three sub-traits and a weighted aggregate score.
  • Life stage influences distribution means and standard deviations for sampling.
  • Conflict-resolution style is selected from avoiding, obliging, integrating, dominating, or compromising based on trait scores.

Usage

from personalitygen import BigFivePersonality, LifeStage

personality = BigFivePersonality.random(LifeStage.ADULT)
print(personality.trait_configuration)
print(personality.conflict_resolution_configuration)

If you want deterministic output, pass a seeded random number generator:

import random
from personalitygen import BigFiveTraitConfiguration, LifeStage

rng = random.Random(42)
traits = BigFiveTraitConfiguration.random(LifeStage.YOUNG_ADULT, rng=rng)
print(traits)

Development

pdm install --group dev
pdm run test

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

personalitygen-0.1.1.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

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

personalitygen-0.1.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file personalitygen-0.1.1.tar.gz.

File metadata

  • Download URL: personalitygen-0.1.1.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for personalitygen-0.1.1.tar.gz
Algorithm Hash digest
SHA256 484881ee0d056eb14f9f933387d6a63e946fbc51c3bd016e0583321727c84e18
MD5 c8fb733cb9b1e850408c3eee3277f579
BLAKE2b-256 64e830494be3c023353894bee12810c57420d1583a18f4f628963b9bc1f3684c

See more details on using hashes here.

Provenance

The following attestation bundles were made for personalitygen-0.1.1.tar.gz:

Publisher: python-publish.yml on btfranklin/personalitygen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file personalitygen-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: personalitygen-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for personalitygen-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2d2957bb80569c56f35adddbd9c4f8b335bfefdd117f7970c8f3ab163e4721f6
MD5 7c9a479e27b32e784dfd0358f13ba9da
BLAKE2b-256 e091bd1461972bfa3ce41ae4108c4262683010e82cc6923e46487053c4ba451a

See more details on using hashes here.

Provenance

The following attestation bundles were made for personalitygen-0.1.1-py3-none-any.whl:

Publisher: python-publish.yml on btfranklin/personalitygen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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