import uuid from datetime import datetime from pydantic import BaseModel, Field class AIModelCreate(BaseModel): name: str = Field(..., max_length=100) provider: str = Field(..., max_length=50) endpoint: str = Field(..., max_length=255) api_key: str extra_params: dict = Field(default_factory=dict) is_enabled: bool = True remark: str | None = None class AIModelUpdate(BaseModel): name: str | None = Field(None, max_length=100) provider: str | None = Field(None, max_length=50) endpoint: str | None = Field(None, max_length=255) api_key: str | None = None extra_params: dict | None = None is_enabled: bool | None = None remark: str | None = None class AIModelToggle(BaseModel): is_enabled: bool class AIModelResponse(BaseModel): id: uuid.UUID name: str provider: str endpoint: str api_key: str = Field(default="***") extra_params: dict is_enabled: bool remark: str | None = None created_at: datetime updated_at: datetime model_config = {"from_attributes": True}