Spaces:
Sleeping
Sleeping
Melika Kheirieh
fix(api): make traces.duration_ms an int via TraceItem model; coerce in handler
76df10c
| from pydantic import BaseModel, Field | |
| from typing import List, Optional, Any, Dict, Mapping, Sequence | |
| class NL2SQLRequest(BaseModel): | |
| query: str | |
| db_id: Optional[str] = None | |
| schema_preview: Optional[str] = None | |
| class Config: | |
| extra = "ignore" | |
| class TraceModel(BaseModel): | |
| stage: str | |
| duration_ms: int | |
| token_in: int | None = 0 | |
| token_out: int | None = 0 | |
| cost_usd: float | None = 0 | |
| notes: Dict[str, Any] | None = None | |
| class NL2SQLResponse(BaseModel): | |
| ambiguous: bool = False | |
| sql: Optional[str] = None | |
| rationale: Optional[str] = None | |
| traces: Sequence[TraceModel | Mapping[str, Any]] = Field(default_factory=list) | |
| class ClarifyResponse(BaseModel): | |
| ambiguous: bool = True | |
| questions: List[str] | |
| class ErrorResponse(BaseModel): | |
| error: str | |
| details: List[str] | None = None | |