| from pydantic import BaseModel |
| from typing import List, Optional, Any |
| from datetime import datetime |
|
|
| |
| class DeepAnalysisReportCreate(BaseModel): |
| report_uuid: str |
| user_id: Optional[int] = None |
| goal: str |
| status: str = "completed" |
| deep_questions: Optional[str] = None |
| deep_plan: Optional[str] = None |
| summaries: Optional[List[Any]] = None |
| analysis_code: Optional[str] = None |
| plotly_figures: Optional[List[Any]] = None |
| synthesis: Optional[List[Any]] = None |
| final_conclusion: Optional[str] = None |
| html_report: Optional[str] = None |
| report_summary: Optional[str] = None |
| progress_percentage: Optional[int] = 100 |
| duration_seconds: Optional[int] = None |
| |
| credits_consumed: Optional[int] = 0 |
| error_message: Optional[str] = None |
| model_provider: Optional[str] = "anthropic" |
| model_name: Optional[str] = "claude-sonnet-4-6" |
| total_tokens_used: Optional[int] = 0 |
| estimated_cost: Optional[float] = 0.0 |
| steps_completed: Optional[List[str]] = None |
|
|
| class DeepAnalysisReportResponse(BaseModel): |
| report_id: int |
| report_uuid: str |
| user_id: Optional[int] |
| goal: str |
| status: str |
| start_time: datetime |
| end_time: Optional[datetime] |
| duration_seconds: Optional[int] |
| report_summary: Optional[str] |
| created_at: datetime |
| updated_at: datetime |
|
|
| class DeepAnalysisReportDetailResponse(DeepAnalysisReportResponse): |
| deep_questions: Optional[str] |
| deep_plan: Optional[str] |
| summaries: Optional[List[Any]] |
| analysis_code: Optional[str] |
| plotly_figures: Optional[List[Any]] |
| synthesis: Optional[List[Any]] |
| final_conclusion: Optional[str] |
| html_report: Optional[str] |
| progress_percentage: Optional[int] |
| |
| credits_consumed: Optional[int] |
| error_message: Optional[str] |
| model_provider: Optional[str] = "anthropic" |
| model_name: Optional[str] = "claude-sonnet-4-6" |
| total_tokens_used: Optional[int] |
| estimated_cost: Optional[float] |
| steps_completed: Optional[List[str]] = None |
|
|