from pydantic import BaseModel, Field from typing import List, Optional # Input 정의 class YTUploadPromptInput(BaseModel): customer_name : str = Field(..., description = "마케팅 대상 사업체 이름") detail_region_info : str = Field(..., description = "마케팅 대상 지역 상세") marketing_intelligence_summary : Optional[str] = Field(None, description = "마케팅 분석 정보 보고서") language : str= Field(..., description = "영상 언어") target_keywords: List[str] = Field(..., description="태그 키워드 리스트") # Output 정의 class YTUploadPromptOutput(BaseModel): title:str = Field(..., description="유튜브 영상 제목 - SEO/AEO 최적화") description: str = Field(..., description = "유튜브 영상 설명 - SEO/AEO 최적화")