39 lines
927 B
Python
39 lines
927 B
Python
from datetime import datetime, UTC
|
|
from typing import List, Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from models.Asset import Asset
|
|
from models.Generation import GenerationStatus
|
|
from models.enums import AspectRatios, Quality
|
|
|
|
|
|
class GenerationRequest(BaseModel):
|
|
linked_character_id: Optional[str] = None
|
|
aspect_ratio: AspectRatios = AspectRatios.NINESIXTEEN
|
|
quality: Quality = Quality.ONEK
|
|
prompt: str
|
|
assets_list: List[str]
|
|
|
|
|
|
class GenerationResponse(BaseModel):
|
|
id: str
|
|
status: GenerationStatus
|
|
linked_character_id: Optional[str] = None
|
|
aspect_ratio: AspectRatios
|
|
quality: Quality
|
|
prompt: str
|
|
assets_list: List[str]
|
|
result: Optional[str] = None
|
|
created_at: datetime = datetime.now(UTC)
|
|
updated_at: datetime = datetime.now(UTC)
|
|
|
|
|
|
|
|
class PromptRequest(BaseModel):
|
|
prompt: str
|
|
linked_assets: List[str] = []
|
|
|
|
|
|
class PromptResponse(BaseModel):
|
|
prompt: str |