CREATE TABLE IF NOT EXISTS ai_model (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    provider UUID NOT NULL,
    name TEXT NOT NULL,
    display_name TEXT NOT NULL,
    description TEXT,
    modality TEXT NOT NULL,
    context_window INTEGER,
    input_token_limit INTEGER,
    output_token_limit INTEGER,
    enabled BOOLEAN NOT NULL DEFAULT TRUE,
    public BOOLEAN NOT NULL DEFAULT FALSE,
    created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
    updated_at TIMESTAMPTZ NOT NULL DEFAULT now(),
    deleted_at TIMESTAMPTZ
);
