from datetime import datetime from pydantic import BaseModel class ApiUsageLogResponse(BaseModel): """API 使用日志响应。""" id: str api_key_id: str api_generation_task_id: str | None request_type: str model_name: str gen_type: str credits_cost: float tokens_used: int request_duration_ms: int status: str error_message: str | None error_code: str | None created_at: datetime class Config: from_attributes = True class ApiUsageSummaryResponse(BaseModel): """API 使用汇总响应。""" total_requests: int total_credits_cost: float total_tokens_used: int success_count: int failed_count: int avg_duration_ms: int total: int = 0 page: int = 1 page_size: int = 20 items: list[ApiUsageLogResponse]