Sanchit7's picture
Add debug logging to diagnose import issue
9b74099
"""
Hugging Face Spaces entry point for Financial Research Agent
"""
import os
import sys
import logging
# Configure logging for Hugging Face
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
)
logger = logging.getLogger(__name__)
# Debug: Print current directory and Python path
logger.info(f"Current working directory: {os.getcwd()}")
logger.info(f"__file__ location: {os.path.abspath(__file__)}")
logger.info(f"Python path: {sys.path}")
# Setup Python path
app_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, app_dir)
logger.info(f"Added to Python path: {app_dir}")
# Debug: Check if src directory exists
src_dir = os.path.join(app_dir, 'src')
logger.info(f"src directory exists: {os.path.exists(src_dir)}")
if os.path.exists(src_dir):
logger.info(f"src contents: {os.listdir(src_dir)}")
models_dir = os.path.join(src_dir, 'models')
logger.info(f"src/models exists: {os.path.exists(models_dir)}")
if os.path.exists(models_dir):
logger.info(f"src/models contents: {os.listdir(models_dir)}")
# Import after path setup
logger.info("Attempting to import AnalysisServer...")
from src.api.server import AnalysisServer
logger.info("Successfully imported AnalysisServer!")
def main():
"""Launch the Gradio interface for Hugging Face Spaces"""
try:
logger.info("Starting Financial Research Agent on Hugging Face Spaces...")
# Create and launch server
server = AnalysisServer()
# Launch with Hugging Face Spaces settings
interface = server.create_interface()
# Hugging Face Spaces specific configuration
interface.launch(
server_name="0.0.0.0",
server_port=7860, # HF Spaces default port
share=False, # No need for share on HF Spaces
show_error=True,
auth=None, # Can add auth later if needed
)
except Exception as e:
logger.error(f"Failed to start application: {str(e)}")
raise
if __name__ == "__main__":
main()