Files
freepik-api/app/schemas/image_generation.py

35 lines
1.5 KiB
Python
Raw Permalink Normal View History

from typing import Optional
from pydantic import BaseModel, Field
class MysticRequest(BaseModel):
prompt: str = Field(..., min_length=1, max_length=4000)
resolution: Optional[str] = Field(None, description='1k, 2k, or 4k')
aspect_ratio: Optional[str] = Field(None, description='e.g. square_1_1, widescreen_16_9')
model: Optional[str] = Field(None, description='realism, fluid, zen, flexible, super_real, editorial_portraits')
seed: Optional[int] = Field(None, ge=1, le=4294967295)
styling: Optional[dict] = None
structure_reference: Optional[str] = Field(None, description='Base64 image for structure reference')
style_reference: Optional[str] = Field(None, description='Base64 image for style reference')
class FluxDevRequest(BaseModel):
prompt: str = Field(..., min_length=1, max_length=4000)
aspect_ratio: Optional[str] = Field(None, description='e.g. square_1_1, widescreen_16_9')
styling: Optional[dict] = None
seed: Optional[int] = Field(None, ge=1, le=4294967295)
class FluxProRequest(BaseModel):
prompt: str = Field(..., min_length=1, max_length=4000)
aspect_ratio: Optional[str] = Field(None, description='e.g. square_1_1, widescreen_16_9')
styling: Optional[dict] = None
seed: Optional[int] = Field(None, ge=1, le=4294967295)
class SeedreamRequest(BaseModel):
prompt: str = Field(..., min_length=1, max_length=4000)
aspect_ratio: Optional[str] = Field(None, description='e.g. square_1_1, widescreen_16_9')
seed: Optional[int] = Field(None, ge=1, le=4294967295)