from pydantic import BaseModel from typing import List, Optional # --- 基础字段 (共用) --- class CardBase(BaseModel): time: str card_name_cn: Optional[str] = None card_name_en: Optional[str] = None series: Optional[str] = None rarity_score: Optional[int] = None rarity_desc: Optional[str] = None # --- 接口输入模型 --- class CardInfoInput(CardBase): pass # --- 接口输出模型 --- class CardInfoOutput(CardBase): frame_image_path: Optional[str] = None # --- 接口2 请求体 --- class VideoFrameRequest(BaseModel): video_path: str cards: List[CardInfoInput]