Generate connected synthetic identity data
Use this path for fictional identity fixtures in tests, demonstrations, graph imports, and privacy or matching workflows. No agent or policy engine is needed.
Generate a first world
With Python 3.12 or newer:
pip install idcognito-synthworld==0.18.0
synthworld generate --seed 20260719 --persona-count 10 --output world.json
The command reports the number of personas and relationships it created. Inspect the JSON with your editor, or print its top-level collections:
import json
from pathlib import Path
world = json.loads(Path("world.json").read_text(encoding="utf-8"))
for field, value in world.items():
print(field, len(value) if isinstance(value, list) else value)
These identities are safely fictional and connected, rather than unrelated fake rows. The core world is a small, simple fixture: it is useful for repeatable tests, not for claims about the behaviour of real populations.
Check that your fixture repeats
Generate another file with the same inputs:
synthworld generate --seed 20260719 --persona-count 10 --output repeated-world.json
from pathlib import Path
assert Path("world.json").read_bytes() == Path("repeated-world.json").read_bytes()
print("The two fixtures are byte-identical.")
Keep the package version, seed, and configuration with your test. Increase
--persona-count for more personas; use the documented richer generated profiles
when graph structure or conflicting evidence is part of your experiment.
Choose what to test next
- Identity resolution: matching and conflicting evidence.
- Privacy and exposure: extraction, exposure, and broker behaviour.
- Evaluating a system: pass public observations to your system and score predictions against separately loaded answers.
- Data dictionary: field contracts.
- Benchmark inventory: available profiles and measured limits.
The core world itself is not a product-safe projection for every evaluation task. Use the public-input exporter documented for the benchmark you select. SynthWorld does not anonymise real data supplied to it.