Files
planet/aiprovider/schemas.py
2026-04-07 17:30:27 +08:00

28 lines
797 B
Python

from typing import Any
from pydantic import BaseModel, Field
class SituationalAnalysisRequest(BaseModel):
title: str = Field(..., min_length=1, max_length=200)
objective: str = Field(..., min_length=1, max_length=1000)
context: dict[str, Any] = Field(default_factory=dict)
observations: list[str] = Field(default_factory=list)
constraints: list[str] = Field(default_factory=list)
preferred_model: str | None = Field(default=None, max_length=200)
class SituationalAnalysisResponse(BaseModel):
provider: str
model: str
content: str
raw_response: dict[str, Any] = Field(default_factory=dict)
class AIProviderStatusResponse(BaseModel):
provider: str
enabled: bool
configured: bool
model: str | None = None
base_url: str | None = None