Skip to content

Realistic Mode

Ravi Kiran Pagidi edited this page Jun 28, 2026 · 1 revision

Realistic Mode

generate_from_schema defaults to realism="realistic". It combines normalized column names, common abbreviations, and declared data types to choose a generation strategy.

Field Typical behavior
customer_name, cust_name realistic full names
employee_name, emp_name realistic employee names
email, email_id email-like values
mobile_no, phone_number phone-like values
age, employee_age appropriate age range
customer_id, transaction_id unique ID-like values
amount, salary, balance bounded numeric values
created_at historical datetime by default
updated_at same as or after created_at
date_of_birth, dob non-future birth date
order_status recognizable order states
from great_generator import generate_from_schema

df = generate_from_schema(
    {
        "customer_id": "string",
        "cust_name": "string",
        "email_id": "string",
        "mobile_no": "string",
        "customer_age": "int",
        "created_at": "timestamp",
    },
    rows=1000,
)

Placeholder mode

Use placeholder mode for simple debugging values:

df = generate_from_schema(schema, rows=20, realism="placeholder")

basic and simple are aliases for placeholder mode. clean is an alias for realistic mode.

What realistic mode avoids

It is designed to avoid obvious values such as customer_name_1, human ages far outside expected ranges, future historical dates, and reversed lifecycle dates. When a field is ambiguous, inspect the plan or add a custom rule.

Clone this wiki locally