Source code for lalandre_db_qdrant.models

"""
Qdrant vector models
Data structures for vector database operations
"""

from typing import Any, Dict, List, Union

from pydantic import BaseModel
from qdrant_client.http import models


[docs] class VectorPoint(BaseModel): """ Represents a point in vector space with metadata Abstraction layer over Qdrant's PointStruct to decouple application code from Qdrant implementation details. """ id: Union[str, int] vector: List[float] payload: Dict[str, Any]
[docs] def to_qdrant_point(self): """Convert to Qdrant's native PointStruct""" return models.PointStruct(id=self.id, vector=self.vector, payload=self.payload)
[docs] class SearchResult(BaseModel): """Result of a vector search""" id: str score: float payload: Dict[str, Any]