#!/usr/bin/env python3 """ Debug script to test VectorDatabaseService initialization """ import os import sys from dotenv import load_dotenv # Load environment variables load_dotenv() print("Environment variables:") print(f"QDRANT_HOST: {os.getenv('QDRANT_HOST')}") print(f"QDRANT_PORT: {os.getenv('QDRANT_PORT')}") print(f"QDRANT_HTTPS: {os.getenv('QDRANT_HTTPS')}") print(f"QDRANT_PREFER_GRPC: {os.getenv('QDRANT_PREFER_GRPC')}") # Import and check settings from src.config.config import settings print("\nSettings values:") print(f"settings.QDRANT_HOST: {settings.QDRANT_HOST}") print(f"settings.QDRANT_PORT: {settings.QDRANT_PORT}") print(f"settings.QDRANT_HTTPS: {settings.QDRANT_HTTPS}") print(f"settings.QDRANT_PREFER_GRPC: {settings.QDRANT_PREFER_GRPC}") # Test VectorDatabaseService initialization step by step print("\nTesting VectorDatabaseService initialization step by step...") try: from qdrant_client import QdrantClient # Test direct QdrantClient creation print("Creating QdrantClient directly...") client = QdrantClient( host=settings.QDRANT_HOST, port=settings.QDRANT_PORT, api_key=settings.QDRANT_API_KEY, prefer_grpc=settings.QDRANT_PREFER_GRPC, https=settings.QDRANT_HTTPS ) print("QdrantClient created successfully") # Test get_collections (this is what fails in _ensure_collection_exists) print("Testing get_collections...") collections = client.get_collections() print(f"Collections retrieved: {[col.name for col in collections.collections]}") # Now test full VectorDatabaseService print("\nTesting full VectorDatabaseService...") from src.services.vector_db import VectorDatabaseService vector_db = VectorDatabaseService() print("VectorDatabaseService created successfully") except Exception as e: print(f"Error: {e}") import traceback traceback.print_exc()