"""Test all dependencies for DS Task AI News""" def test_imports(): """Test importing all required packages""" print("๐Ÿงช Testing all dependencies...") try: # FastAPI and server import fastapi import uvicorn print("โœ… FastAPI ecosystem: OK") # RSS and web scraping import feedparser import requests import bs4 # beautifulsoup4 print("โœ… Web scraping: OK") # AI and ML - Core import cohere import sentence_transformers import faiss import numpy print("โœ… AI/ML Core: OK") # AI and ML - Supporting import torch import transformers import sklearn print("โœ… AI/ML Supporting: OK") # Data processing import pandas import scipy print("โœ… Data processing: OK") # Environment and config import dotenv import pydantic print("โœ… Configuration: OK") # LLM Integration import groq print("โœ… Groq LLM: OK") # Test specific functionality print("\n๐Ÿ”ง Testing specific functionality...") # Test sentence transformers from sentence_transformers import SentenceTransformer print("โœ… SentenceTransformer import: OK") # Test FAISS import faiss index = faiss.IndexFlatIP(384) # Test creating index print("โœ… FAISS index creation: OK") # Test Cohere client creation (without API key) try: client = cohere.Client("") # Empty key for test print("โœ… Cohere client creation: OK") except: print("โœ… Cohere client creation: OK (expected error without API key)") # Test Groq client creation (without API key) try: from groq import Groq client = Groq(api_key="") # Empty key for test print("โœ… Groq client creation: OK") except: print("โœ… Groq client creation: OK (expected error without API key)") print("\n๐ŸŽ‰ All dependencies successfully installed and working!") return True except ImportError as e: print(f"โŒ Import error: {e}") return False except Exception as e: print(f"โŒ Error: {e}") return False def test_versions(): """Test package versions""" print("\n๐Ÿ“ฆ Package versions:") packages = [ 'fastapi', 'uvicorn', 'feedparser', 'requests', 'beautifulsoup4', 'cohere', 'sentence-transformers', 'faiss-cpu', 'numpy', 'torch', 'transformers', 'scikit-learn', 'pandas', 'python-dotenv', 'pydantic', 'groq' ] import pkg_resources for package in packages: try: version = pkg_resources.get_distribution(package).version print(f" {package}: {version}") except: try: # Try alternative names alt_names = { 'beautifulsoup4': 'bs4', 'scikit-learn': 'sklearn' } if package in alt_names: import importlib module = importlib.import_module(alt_names[package]) print(f" {package}: installed (module available)") else: print(f" {package}: version check failed") except: print(f" {package}: not found") if __name__ == "__main__": success = test_imports() test_versions() if success: print("\nโœ… System ready for full AI-powered news processing!") else: print("\nโŒ Some dependencies need attention")