Spaces:
Sleeping
Sleeping
generation_request.py
Purpose
Data model for image generation requests. Provides type-safe, validated structure for all generation parameters.
Responsibilities
- Encapsulate all generation request parameters
- Validate data on initialization
- Provide convenience properties (is_text_to_image, etc.)
- Serialize to dictionary for logging/metadata
Dependencies
dataclasses- Data class decoratorPIL.Image- Image type- Used by all services and backend clients
Public Interface
GenerationRequest dataclass
Fields:
prompt: str- Text prompt (required)backend: str- Backend name (required)aspect_ratio: str- Aspect ratio (required)temperature: float- Temperature 0.0-1.0 (required)input_images: List[Image]- Input images (optional)is_character_sheet: List[bool]- Character sheet flags (optional)metadata: dict- Additional metadata (optional)
Properties:
has_input_images: bool- True if has input imagesimage_count: int- Number of input imagesis_text_to_image: bool- True if text-to-image modeis_image_to_image: bool- True if image-to-image mode
Methods:
to_dict() -> dict- Convert to dictionary (excludes images)
Usage:
request = GenerationRequest(
prompt="sunset over mountains",
backend="Gemini API (Cloud)",
aspect_ratio="16:9",
temperature=0.4,
input_images=[img1, img2]
)
if request.is_image_to_image:
# Handle multi-image
pass
Related Files
models/generation_result.py- Result model- All services - Create requests
core/backend_router.py- Receives requests