111/models/schemas.py
2026-01-08 21:48:24 +08:00

32 lines
738 B
Python

from typing import List, Optional
from pydantic import BaseModel
class CodeRequest(BaseModel):
code: str
language: str
task_type: str # "explain" 或 "fix"
depth: str = "detailed"
class CodeExplanation(BaseModel):
explanation: str
line_by_line: Optional[List[dict]] = None
key_concepts: Optional[List[str]] = None
suggestions: Optional[List[str]] = None
class BugFix(BaseModel):
original_code: str
fixed_code: str
problems_found: List[str]
fixes_applied: List[str]
explanation: str
class CodeResponse(BaseModel):
success: bool
task_type: str
result: CodeExplanation | BugFix
error: Optional[str] = None
class ChatMessage(BaseModel):
role: str
content: str