Skip to main content

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

Project description

personalitygen

personalitygen social preview

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.0.tar.gz (8.5 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.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: personalitygen-0.1.0.tar.gz
  • Upload date:
  • Size: 8.5 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.0.tar.gz
Algorithm Hash digest
SHA256 dcaa1e95f604aed13d6076f457582be4648afeb4ebd54b38d3f9dd539a671fe7
MD5 7194b1fef2e754057069729b783350c3
BLAKE2b-256 cdd4a39949387c5ec2c8de3d5e5dd4edf71947c38d8223e62cfccfd0b8081414

See more details on using hashes here.

Provenance

The following attestation bundles were made for personalitygen-0.1.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: personalitygen-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.8 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4cb1cf8b6a46387a7cc96c942a2df580ad844e6883939925f69c880f966d8d2c
MD5 e980b2b79b837392c27e584ad7633e6f
BLAKE2b-256 6b1a0f27ef6784c36f8bbd04d2681563a5be21b3755fb8ddc9415f4ad5196bc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for personalitygen-0.1.0-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