Source code for openwebui_token_tracking.settings

from sqlalchemy.orm import Session

from openwebui_token_tracking.db import init_db, BaseSetting


[docs] def init_base_settings(database_url: str, settings: list[dict[str, str]] | None = None): """Initializes the base settings table with default values :param database_url: A database URL in `SQLAlchemy format <https://docs.sqlalchemy.org/en/20/core/engines.html#database-urls>`_ :type database_url: str :param settings: A list of dictionaries of settings to use. If None, uses default settings. :type settings: list[dict[str, str]] """ if settings is None: settings = [ { "setting_key": "base_credit_allowance", "setting_value": "1000", "description": "Baseline credit allowance for all users.", } ] engine = init_db(database_url) with Session(engine) as session: for setting in settings: session.merge(BaseSetting(**setting)) session.commit()