from typing import List, Optional from pydantic import BaseModel class PartModel(BaseModel): page_url: Optional[str] = None title: Optional[str] = None content: Optional[str] = None img_url: Optional[List[str]] = None video_url: Optional[List[str]] = None audio_url: Optional[List[str]] = None pdf_url: Optional[List[str]] = None agent_recommendation_rank: Optional[float] = None agent_recommendation_notes: Optional[str] = None class UnitSubtopicOutputModel(BaseModel): unit_title: Optional[str] = None subtopic_title: Optional[str] = None query: Optional[str] = None parts: Optional[List[PartModel]] = None