Source code for flexeval.classes.base

import peewee as pw
from playhouse.shortcuts import ThreadSafeDatabaseMetadata
from playhouse.sqliteq import SqliteQueueDatabase


[docs] def create_sqlite_database( database_path: str | None = None, use_queue_db: bool = False ) -> pw.SqliteDatabase: if use_queue_db: return SqliteQueueDatabase( database_path, use_gevent=False, autostart=False, results_timeout=5.0, queue_max_size=64, # Max. # of pending writes that can accumulate pragmas={"journal_mode": "wal"}, # use Write-ahead Logging ) return pw.SqliteDatabase( database_path, pragmas={"journal_mode": "wal"}, # use Write-ahead Logging )
database = create_sqlite_database()
[docs] class BaseModel(pw.Model): """Peewee base class for all FlexEval database models.""" class Meta: model_metadata_class = ThreadSafeDatabaseMetadata database = database