init: 初始化项目
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
from pydantic import BaseModel, Field, field_serializer
|
||||
|
||||
|
||||
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
|
||||
extra_params: dict
|
||||
is_enabled: bool
|
||||
remark: str | None = None
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
@field_serializer("api_key")
|
||||
def mask_api_key(self, value: str) -> str:
|
||||
return "***"
|
||||
Reference in New Issue
Block a user