apply_trait()

Apply a trait to a persona, returning a new modified persona.

Usage

Source

apply_trait(
    persona,
    trait,
)

The original persona is not mutated. List fields are merged (de-duplicated), string fields are appended, and temperature is overridden only when the trait specifies one.

Parameters

persona: Any

A PersonaDefinition instance.

trait: TraitDefinition
The TraitDefinition to apply.

Returns

PersonaDefinition
A new persona with the trait’s modifications merged in.

Examples

import talk_box as tb

persona = tb.get_persona("data_analyst")
concise = tb.get_trait("concise")
modified = tb.apply_trait(persona, concise)