Nexus / app /models /model_alias.py
abc1181's picture
Add SQLite support, TTS/STT endpoints, db_utils helper
67b8c4a
Raw
History Blame Contribute Delete
1.08 kB
from sqlalchemy import text, Integer, Text, func
from sqlalchemy.orm import Mapped, mapped_column
from app.models.base import Base
class ModelAlias(Base):
__tablename__ = "model_aliases"
id: Mapped[int] = mapped_column(Integer, primary_key=True, autoincrement=True)
alias: Mapped[str] = mapped_column(Text, unique=True, nullable=False)
provider: Mapped[str] = mapped_column(Text, nullable=False)
provider_model: Mapped[str] = mapped_column(Text, nullable=False)
description: Mapped[str] = mapped_column(Text, default="")
max_tokens_override: Mapped[int] = mapped_column(Integer, default=0)
prompt_template_id: Mapped[int | None] = mapped_column(Integer, nullable=True)
auto_select: Mapped[int] = mapped_column(Integer, default=0)
fallback_provider: Mapped[str | None] = mapped_column(Text, nullable=True)
fallback_model: Mapped[str | None] = mapped_column(Text, nullable=True)
is_active: Mapped[int] = mapped_column(Integer, default=1)
created_at: Mapped[str] = mapped_column(Text, server_default=text("CURRENT_TIMESTAMP"))