from pydantic import BaseModel, Field class RecommendationRequest(BaseModel): query: str = Field(description="User's anime recommendation request") n_results: int | None = Field( 5, description="Number of recommendations to return") min_score: float | None = Field( None, description="Minimum MyAnimeList Score filter") genre_filter: list[str] | None = Field(None, description="Filter by genre") anime_type: str | None = Field(None, description="Filter by type(TV, Movie, etc)") class RecommendationResponse(BaseModel): query: str recommendations: str retrieved_count: int retrieved_animes: list[dict] metadata: dict = {}