from pydantic import BaseModel from typing import Dict, List, Any class CreateCollectionSerializer(BaseModel): collection_name: str vector: List[float] vector_size: int payload: Dict[str, Any] id: int class QueryCollectionSerializer(BaseModel): collection_name: str url: str score_threshold: float = 0.3 # Euclidean distance — lower = more similar. 0.3 = very tight match limit: int = 10 class UpdateCollectionSerializer(BaseModel): collection_name: str vector: List[float] payload: Dict[str, Any] id: int class DeleteCollectionSerializer(BaseModel): collection_name: str