Spaces:
Sleeping
Sleeping
| import sys | |
| import os | |
| import platform | |
| import time | |
| from pathlib import Path | |
| # Add project root to path | |
| sys.path.append(str(Path(__file__).parent.parent)) | |
| def print_status(component, status, message=""): | |
| color = "\033[92m" if status == "OK" else "\033[91m" | |
| reset = "\033[0m" | |
| print(f"[{component.ljust(15)}] {color}{status}{reset} {message}") | |
| def check_system(): | |
| print("\n=== System Info ===") | |
| print(f"Python: {sys.version.split()[0]}") | |
| print(f"OS: {platform.system()} {platform.release()}") | |
| print_status("System", "OK") | |
| def check_torch(): | |
| print("\n=== PyTorch Check ===") | |
| try: | |
| import torch | |
| print(f"Torch Version: {torch.__version__}") | |
| if torch.backends.mps.is_available(): | |
| print_status("Accelerator", "OK", "MPS (Metal Performance Shaders) is available! 🚀") | |
| elif torch.cuda.is_available(): | |
| print_status("Accelerator", "OK", f"CUDA is available! ({torch.cuda.get_device_name(0)})") | |
| else: | |
| print_status("Accelerator", "WARN", "Running on CPU (Slow but safe)") | |
| except ImportError: | |
| print_status("PyTorch", "FAIL", "Not installed") | |
| def check_vector_db(): | |
| print("\n=== Vector Database Check ===") | |
| try: | |
| from src.core.rag.vector_db import VectorDB | |
| start = time.perf_counter() | |
| print("Loading VectorDB (this loads embeddings)...") | |
| vdb = VectorDB() | |
| print(f"Load Time: {time.perf_counter() - start:.2f}s") | |
| # Test Query | |
| test_q = "fantasy" | |
| results = vdb.search(test_q, k=1) | |
| if results: | |
| print_status("ChromaDB", "OK", f"Query '{test_q}' returned: {results[0].page_content[:50]}...") | |
| else: | |
| print_status("ChromaDB", "WARN", "Database loaded but returned empty results") | |
| except Exception as e: | |
| print_status("ChromaDB", "FAIL", str(e)) | |
| print("Tip: Ensure 'data/chroma_db' exists.") | |
| if __name__ == "__main__": | |
| check_system() | |
| check_torch() | |
| check_vector_db() | |