Skip to content

Conversation metadata

ConversationMetadataSchema

Bases: DatabaseSchemaMixin, SchemaBase

assistant_runs = Field(default_factory=list) class-attribute instance-attribute

conversation_uid instance-attribute

created_at = Field(default_factory=lambda: datetime.datetime.now(datetime.UTC)) class-attribute instance-attribute

default_assistant instance-attribute

iterate_nested_schemas = False class-attribute

last_updated_at = Field(default_factory=lambda: datetime.datetime.now(datetime.UTC)) class-attribute instance-attribute

message_history = Field(default_factory=list) class-attribute instance-attribute

new_instance_on_change = True class-attribute

next_run_index = 0 class-attribute instance-attribute

pending_assistant_runs = Field(default_factory=list) class-attribute instance-attribute

sub_assistant_run_info = Field(default_factory=SubAssistantRunInfo) class-attribute instance-attribute

title instance-attribute

user_id instance-attribute

increment_version()

new(user_pk_id, title, assistant_schema) classmethod

set_initial_version()

SubAssistantData

Bases: DatabaseSchemaMixin

Data for sub-assistants.

all_messages instance-attribute

earlier_conv_summary instance-attribute

iterate_nested_schemas = False class-attribute

new_instance_on_change = False class-attribute

sub_assistant_name instance-attribute

sub_assistant_type instance-attribute

sub_assistant_user_id instance-attribute

uid instance-attribute

from_data(data) classmethod

to_data()

update_from_data(data)

SubAssistantRunInfo

Bases: DatabaseSchemaMixin

Info/Data from sub-assistant runs that should persist between runs.

iterate_nested_schemas = True class-attribute

new_instance_on_change = False class-attribute

sub_assistant_datas = Field(default_factory=dict) class-attribute instance-attribute

from_state_datas(datas) classmethod

to_sub_assistant_state_datas()

update_from_state_datas(datas)

SubAssistantStateData

Bases: BaseModel

State used within graph runs for holding data relevant to sub-graphs.

Basically, minimal thread conversation data.

Because this is used within graph runs, it should use the lg message types rather than MessageSchema. Ideally, this should not be graph specific, but generally hold the information that sub-assistants require to run.

This should not be used widely in the backend (should convert to SubAssistantData)

all_messages instance-attribute

earlier_conv_summary instance-attribute

sub_assistant_name instance-attribute

sub_assistant_type instance-attribute

sub_assistant_user_id instance-attribute

uid instance-attribute