init
Import all models and associations here so that SQLAlchemy can register them all by just importing .models.
__all__ = ['AssistantRunModel', 'ClassChunk', 'CodeFileChunks', 'CondenseSettingsModel', 'ContextSettingsModel', 'ConversationMetadataModel', 'DecoratorChunk', 'FunctionCall', 'FunctionChunk', 'FunctionResponse', 'GeneralTextChunksModel', 'GithubMetadataModel', 'ImportChunk', 'LLMSettingsModel', 'LanggraphSettingsModel', 'MessageModel', 'Model', 'OptionsModel', 'ParsedCodeFileModel', 'ParsedTextFileModel', 'PersonalitySettingsModel', 'PurchaseModel', 'Usage', 'User']
module-attribute
AssistantRunModel
Bases: CrudMixin, ModelWithSchema
__tablename__ = 'assistant_runs'
class-attribute
instance-attribute
assistant_name
instance-attribute
assistant_type = mapped_column(Enum(ConfigType))
class-attribute
instance-attribute
assistant_user_id
instance-attribute
assistant_version
instance-attribute
conversation = relationship(secondary='conversation_assistant_run_association', back_populates='assistant_runs', lazy='raise')
class-attribute
instance-attribute
conversation_pending = relationship(secondary='conversation_pending_assistant_run_association', back_populates='pending_assistant_runs', lazy='raise')
class-attribute
instance-attribute
conversation_uid
instance-attribute
conversation_version
instance-attribute
created_at = mapped_column(DateType)
class-attribute
instance-attribute
current_step
instance-attribute
error_message = mapped_column(Text)
class-attribute
instance-attribute
finished_at = mapped_column(DateType)
class-attribute
instance-attribute
new_messages = relationship(lazy='selectin', order_by=MessageModel.assistant_run_position, collection_class=ordering_list('assistant_run_position'))
class-attribute
instance-attribute
partial_info = relationship('PartialInfoModel', uselist=False, lazy='selectin', cascade='all, delete-orphan', back_populates='assistant_run')
class-attribute
instance-attribute
previous_thread_uid
instance-attribute
run_index
instance-attribute
status = mapped_column(Enum(AssistantRunStatuses))
class-attribute
instance-attribute
thread_uid
instance-attribute
user_id = mapped_column(ForeignKey('users.id'))
class-attribute
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
ClassChunk
Bases: DatabaseSchemaMixin, SchemaBase
decorators
instance-attribute
docstring
instance-attribute
full_content
instance-attribute
init
instance-attribute
iterate_nested_schemas = True
class-attribute
line_numbers
instance-attribute
methods
instance-attribute
name
instance-attribute
new_instance_on_change = False
class-attribute
signature
instance-attribute
superclasses
instance-attribute
as_artifact()
as_content()
CodeFileChunks
Bases: DatabaseSchemaMixin, SchemaBase
classes
instance-attribute
full_content
instance-attribute
functions
instance-attribute
imports
instance-attribute
iterate_nested_schemas = True
class-attribute
language
instance-attribute
new_instance_on_change = False
class-attribute
num_lines
instance-attribute
CondenseSettingsModel
Bases: ConfigModelBase
schema_class = CondenseSettingsSchema
class-attribute
ContextSettingsModel
Bases: ConfigModelBase
schema_class = ContextSettingsSchema
class-attribute
ConversationMetadataModel
Bases: CrudMixin, ModelWithSchema
Metadata for a conversation.
__table_args__ = (UniqueConstraint('conversation_uid', 'version', name='unique_conversation_uid_version'),)
class-attribute
instance-attribute
__tablename__ = 'conversation_metadatas'
class-attribute
instance-attribute
assistant_id = mapped_column(ForeignKey(f'{AssistantSchema.tablename()}.id'))
class-attribute
instance-attribute
assistant_runs = relationship(lazy='raise', secondary=conversation_assistant_run_association_table, order_by='asc(AssistantRunModel.created_at)')
class-attribute
instance-attribute
conversation_uid = mapped_column(index=True)
class-attribute
instance-attribute
created_at = mapped_column(DateType)
class-attribute
instance-attribute
default_assistant = relationship(lazy='raise')
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
last_updated_at = mapped_column(DateType)
class-attribute
instance-attribute
message_history = relationship(lazy='selectin', secondary=conversation_message_association_table, order_by=MessageModel.conversation_position, collection_class=ordering_list('conversation_position'))
class-attribute
instance-attribute
next_run_index
instance-attribute
pending_assistant_runs = relationship(lazy='raise', secondary=conversation_pending_assistant_run_association_table, order_by='asc(AssistantRunModel.created_at)')
class-attribute
instance-attribute
schema_class = ConversationMetadataSchema
class-attribute
instance-attribute
sub_assistant_run_info = relationship(lazy='raise', secondary=conversation_sub_assistant_run_info_association_table, uselist=False)
class-attribute
instance-attribute
title
instance-attribute
user = relationship(back_populates='conversations', lazy='raise')
class-attribute
instance-attribute
user_id = mapped_column(ForeignKey('users.id'))
class-attribute
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
DecoratorChunk
Bases: DatabaseSchemaMixin, SchemaBase
args
instance-attribute
name
instance-attribute
new_instance_on_change = False
class-attribute
FunctionCall
Bases: ModelWithSchema
__tablename__ = 'function_calls'
class-attribute
instance-attribute
arguments = mapped_column(JSON)
class-attribute
instance-attribute
call_id = mapped_column(String(50))
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
index
instance-attribute
message = relationship('MessageModel', back_populates='function_calls')
class-attribute
instance-attribute
message_id = mapped_column(ForeignKey('messages.id'))
class-attribute
instance-attribute
name = mapped_column(String(100))
class-attribute
instance-attribute
__admin_repr__(request)
model_from_schema(schema)
classmethod
to_schema()
FunctionChunk
Bases: DatabaseSchemaMixin, SchemaBase
code_body
instance-attribute
decorators
instance-attribute
docstring
instance-attribute
full_content
instance-attribute
iterate_nested_schemas = True
class-attribute
line_numbers
instance-attribute
name
instance-attribute
new_instance_on_change = False
class-attribute
return_type
instance-attribute
signature
instance-attribute
as_artifact()
as_content()
FunctionResponse
Bases: ModelWithSchema
__tablename__ = 'function_responses'
class-attribute
instance-attribute
artifact_as_str = mapped_column(sqlalchemy.TEXT)
class-attribute
instance-attribute
artifact_pk_id
instance-attribute
artifact_tablename
instance-attribute
call_id = mapped_column(String(50))
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
message = relationship('MessageModel', back_populates='function_response')
class-attribute
instance-attribute
message_id = mapped_column(ForeignKey('messages.id'))
class-attribute
instance-attribute
name = mapped_column(String(100))
class-attribute
instance-attribute
__admin_repr__(request)
model_from_schema(schema)
classmethod
to_schema()
GeneralTextChunksModel
Bases: CrudMixin, ModelWithSchema
__tablename__ = 'general_text_chunks'
class-attribute
instance-attribute
chunk_texts = mapped_column(StrArrayType)
class-attribute
instance-attribute
chunks
property
lang_used
instance-attribute
start_indexes = mapped_column(IntArrayType)
class-attribute
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
GithubMetadataModel
Bases: CrudMixin, ModelWithSchema
__tablename__ = 'github_metadatas'
class-attribute
instance-attribute
branch = mapped_column(index=True)
class-attribute
instance-attribute
node_id = mapped_column(index=True)
class-attribute
instance-attribute
owner = mapped_column(index=True)
class-attribute
instance-attribute
parsed_code_file = relationship('ParsedCodeFileModel', back_populates='github_metadata', single_parent=True, uselist=False, lazy='selectin')
class-attribute
instance-attribute
parsed_text_file = relationship('ParsedTextFileModel', back_populates='github_metadata', single_parent=True, uselist=False, lazy='selectin')
class-attribute
instance-attribute
path = mapped_column(index=True)
class-attribute
instance-attribute
repo = mapped_column(index=True)
class-attribute
instance-attribute
size_bytes
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
ImportChunk
Bases: DatabaseSchemaMixin, SchemaBase
aliased_name
instance-attribute
full_content
instance-attribute
import_path
instance-attribute
is_relative
instance-attribute
line_numbers
instance-attribute
name
instance-attribute
new_instance_on_change = False
class-attribute
relative_levels
instance-attribute
as_artifact()
as_content()
LLMSettingsModel
Bases: ConfigModelBase
schema_class = LLMSettingsSchema
class-attribute
LanggraphSettingsModel
Bases: ConfigModelBase
schema_class = LanggraphSettingsSchema
class-attribute
MessageModel
Bases: ModelWithSchema
__tablename__ = 'messages'
class-attribute
instance-attribute
assistant_run_id = mapped_column(ForeignKey('assistant_runs.id'))
class-attribute
instance-attribute
assistant_run_position
instance-attribute
content
instance-attribute
conversation_position
instance-attribute
conversations = relationship(secondary='conversation_message_association', back_populates='message_history')
class-attribute
instance-attribute
created_at = mapped_column(DateType)
class-attribute
instance-attribute
function_calls = relationship(back_populates='message', lazy='selectin')
class-attribute
instance-attribute
function_response = relationship(back_populates='message', lazy='selectin')
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
lc_id = mapped_column(String(50))
class-attribute
instance-attribute
role
instance-attribute
sub_assistant_data_id = mapped_column(ForeignKey('sub_assistant_datas.id'))
class-attribute
instance-attribute
uid = mapped_column(index=True, default=uuid.uuid4, unique=True)
class-attribute
instance-attribute
__admin_repr__(request)
__repr__()
model_from_schema(schema)
classmethod
to_schema()
Convert to the schema.
Model
Bases: AsyncAttrs, DeclarativeBase
All models should inherit from this Model base (or a subclass of it).
__abstract__ = True
class-attribute
instance-attribute
OptionsModel
Bases: ConfigModelBase
Model equivalent of the OptionsSchema.
For storing the options that affect chat requests (e.g. when to condense messages, what to add to system prompt, etc.).
If the Options are a named set of options (e.g. a preset or user-defined set of options), then updating them will result in updated options for all chats that use them. This is possibly undesirable in some circumstances, but in general it is probably preferable (i.e. updates to options are likely to be positive even retroactively).
Unnamed options (e.g. modifications from default without saving under a name) are stored uniquely so that they will not change retroactively.
schema_class = OptionsSchema
class-attribute
uid = mapped_column(unique=True, index=True, default=lambda: uuid.uuid4())
class-attribute
instance-attribute
ParsedCodeFileModel
Bases: CrudMixin, ModelWithSchema
__tablename__ = 'parsed_code_files'
class-attribute
instance-attribute
clerk_owner
instance-attribute
code_file_chunks = relationship('CodeFileChunksModel', lazy='raise', cascade='all')
class-attribute
instance-attribute
code_file_chunks_fk = mapped_column(ForeignKey('code_file_chunks.id'))
class-attribute
instance-attribute
full_content
instance-attribute
github_metadata = relationship('GithubMetadataModel', lazy='selectin', back_populates='parsed_code_file', cascade='all')
class-attribute
instance-attribute
github_metadata_fk = mapped_column(ForeignKey('github_metadatas.id'))
class-attribute
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
ParsedTextFileModel
Bases: CrudMixin, ModelWithSchema
__tablename__ = 'parsed_text_files'
class-attribute
instance-attribute
clerk_owner
instance-attribute
full_content
instance-attribute
general_text_chunks = relationship('GeneralTextChunksModel', lazy='raise', cascade='all')
class-attribute
instance-attribute
general_text_chunks_fk = mapped_column(ForeignKey('general_text_chunks.id'))
class-attribute
instance-attribute
github_metadata = relationship('GithubMetadataModel', lazy='selectin', back_populates='parsed_text_file', cascade='all')
class-attribute
instance-attribute
github_metadata_fk = mapped_column(ForeignKey('github_metadatas.id'))
class-attribute
instance-attribute
fully_load_model_options()
classmethod
model_from_schema(schema)
classmethod
to_schema()
PersonalitySettingsModel
Bases: ConfigModelBase
schema_class = PersonalitySettingsSchema
class-attribute
PurchaseModel
Bases: ModelWithSchema
__tablename__ = 'purchases'
class-attribute
instance-attribute
checkout_uid = mapped_column(index=True)
class-attribute
instance-attribute
currency = mapped_column(String(3), default=None)
class-attribute
instance-attribute
dollar_amount = mapped_column(default=None)
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
order_complete = mapped_column(default=False, server_default=sqla.false())
class-attribute
instance-attribute
payment_complete = mapped_column(default=False, server_default=sqla.false())
class-attribute
instance-attribute
raw_amount = mapped_column(default=None)
class-attribute
instance-attribute
Three-letter ISO currency code, in lowercase. Must be a supported currency.
stripe_item_id
instance-attribute
user = relationship(back_populates='purchases')
class-attribute
instance-attribute
user_id = mapped_column(ForeignKey('users.id'))
class-attribute
instance-attribute
init_with_checkout(stripe_item_id, checkout_uid)
classmethod
model_from_schema(schema, user)
classmethod
to_schema()
update_from_stripe_webhook(credit_item)
Usage
Bases: ModelWithSchema
__tablename__ = 'usages'
class-attribute
instance-attribute
completion_tokens
instance-attribute
conversation_id = mapped_column(ForeignKey('conversation_metadatas.id'))
class-attribute
instance-attribute
id = mapped_column(primary_key=True)
class-attribute
instance-attribute
prompt_tokens
instance-attribute
total_cost
instance-attribute
total_tokens
instance-attribute
__repr__()
model_from_schema(schema)
classmethod
to_schema()
to_text()
User
Bases: VersionedMixin, ModelWithSchema