File size: 1,743 Bytes
37ff7dd
3cd3230
5952adf
300162c
5952adf
 
 
 
300162c
5952adf
 
37ff7dd
3cd3230
 
 
 
 
 
 
 
 
 
39e9071
7eed016
5952adf
3cd3230
 
 
7eed016
5952adf
 
 
 
 
 
3cd3230
5952adf
 
3cd3230
300162c
 
5952adf
 
300162c
5952adf
 
 
7eed016
5952adf
7eed016
 
 
5952adf
7eed016
5952adf
7eed016
5952adf
 
 
300162c
5952adf
 
300162c
 
4518be2
37ff7dd
5952adf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# app.py
from smolagents import CodeAgent, HfApiModel, Tool
import logging
from Gradio_UI import GradioUI

# Configure logging
logging.basicConfig(
    level=logging.INFO,
    format='%(asctime)s - %(levelname)s - %(message)s'
)
logger = logging.getLogger(__name__)

class AnalysisTool(Tool):
    """Tool for analyzing web content."""
    
    name = "web_analyzer"
    description = "Analyzes web content for summaries, sentiment, and topics"
    
    def forward(self, text: str, analysis_type: str) -> str:
        """Process the text based on analysis type."""
        return text

def create_agent():
    """Create and configure the agent."""
    try:
        # Initialize tools
        analyzer = AnalysisTool()
        
        # Initialize model
        model = HfApiModel(
            model_id='Qwen/Qwen2.5-Coder-32B-Instruct',
            max_tokens=2096,
            temperature=0.5
        )
        
        # Create agent with tools
        return CodeAgent(
            model=model,
            tools=[analyzer],  # Add the tools here
            max_steps=3,
            verbosity_level=1
        )
    except Exception as e:
        logger.error(f"Failed to create agent: {e}")
        raise

def main():
    """Main application entry point."""
    try:
        logger.info("Starting Smart Web Analyzer Plus...")
        
        # Create agent
        agent = create_agent()
        logger.info("Agent created successfully")
        
        # Create and launch UI
        ui = GradioUI(agent)
        ui.launch(
            server_name="0.0.0.0",
            server_port=7860
        )
    except Exception as e:
        logger.error(f"Application failed to start: {e}")
        raise

if __name__ == "__main__":
    main()