| from pydantic import BaseModel, Field |
| from typing import List, Optional |
|
|
| class Product(BaseModel): |
| id: Optional[str] = Field(None, description="The unique ID of the product") |
| gender: Optional[str] = Field(None, description="Target gender for the product") |
| masterCategory: Optional[str] = Field(None, description="Main category of the product") |
| subCategory: Optional[str] = Field(None, description="Sub-category of the product") |
| articleType: Optional[str] = Field(None, description="Type of the article") |
| baseColour: Optional[str] = Field(None, description="Base color of the product") |
| season: Optional[str] = Field(None, description="Season the product is intended for") |
| usage: Optional[str] = Field(None, description="Intended usage of the product") |
| productDisplayName: Optional[str] = Field(None, description="Display name of the product") |
|
|
| class ImageAnalysis(BaseModel): |
| summary: str = Field(..., description="Summary of all products in the image") |
| products: List[Product] = Field(default_factory=list, description="List of detected products") |
|
|