Nên tách khi input và output không cùng shape: create cần password nhưng output không được trả password; internal fields như is_admin, deleted_at, version không nên client ghi; response cần computed fields hoặc nested objects.
Ví dụ các model riêng:
python
class UserCreate(BaseModel):
email: EmailStr
password: str
class UserRead(BaseModel):
id: int
email: EmailStrTách schema giúp OpenAPI rõ hơn và giảm rủi ro mass assignment hoặc data leak.