import logging from qdrant_client import QdrantClient from qdrant_client import models from config import QDRANT_URL, QDRANT_API_KEY, COLLECTION, VECTOR_SIZE logger = logging.getLogger(__name__) logger.info("Initializing raw Qdrant client connection...") client = QdrantClient( url=QDRANT_URL, api_key=QDRANT_API_KEY ) def init_db(): logger.info("Verifying/Initializing Qdrant database...") if not client.collection_exists(COLLECTION): logger.info(f"Collection '{COLLECTION}' does not exist. Creating collection...") client.create_collection( collection_name=COLLECTION, vectors_config=models.VectorParams( size=VECTOR_SIZE, distance=models.Distance.COSINE ) ) logger.info(f"Collection '{COLLECTION}' successfully created.") else: logger.info(f"Collection '{COLLECTION}' already exists.") logger.info("Creating keyword payload index for metadata.type...") client.create_payload_index( collection_name=COLLECTION, field_name="metadata.type", field_schema=models.PayloadSchemaType.KEYWORD ) logger.info("Database payload indexing complete.")