Spaces:
Runtime error
Runtime error
Download app.py from rahimizadeh/Log_Assistant_Application: direct link, hf CLI and curl.
- Browser
- Download file 2.49 kB
-
https://huggingface.co/spaces/rahimizadeh/Log_Assistant_Application/resolve/main/app.py
- Command line
-
hf download hf://spaces/rahimizadeh/Log_Assistant_Application/app.py
-
curl -L -o app.py https://huggingface.co/spaces/rahimizadeh/Log_Assistant_Application/resolve/main/app.py
2.49 kB
| import gradio as gr | |
| from modules import analysis # Make sure this matches your folder structure | |
| # Create the Gradio interface using Blocks | |
| with gr.Blocks(title="Log Intelligence Assistant") as demo: | |
| gr.Markdown("## 🔍 Interactive Network Log Assistant") | |
| # ---------- Inputs ---------- | |
| with gr.Tab("Inputs 🔽"): | |
| with gr.Row(): | |
| uploaded_files = gr.File( | |
| file_types=[".pdf", ".log", ".txt"], | |
| file_count="multiple", | |
| label="📁 Upload Log Files" | |
| ) | |
| text_input = gr.Textbox( | |
| label="Paste Logs Here", | |
| lines=15, | |
| placeholder="2023-10-05 14:22:11 [Firewall] BLOCKED: 192.168.1.5..." | |
| ) | |
| with gr.Row(): | |
| query_input = gr.Textbox( | |
| label="Ask About Logs", | |
| placeholder="Find failed login attempts from 192.168.1.5" | |
| ) | |
| quick_query = gr.Dropdown( | |
| choices=["", "Detect anomalies", "Show blocked IPs", "Generate summary"], | |
| label="Quick Actions" | |
| ) | |
| with gr.Accordion("⚙️ Configuration Controls", open=False): | |
| temperature = gr.Slider(minimum=0.1, maximum=1.0, value=0.7, label="Creativity (Temperature)") | |
| start_time = gr.DateTime(label="Start Time") | |
| end_time = gr.DateTime(label="End Time") | |
| # ---------- Outputs ---------- | |
| with gr.Tab("Outputs 🔼"): | |
| analysis_result = gr.Textbox(label="Analysis Results", lines=10, interactive=False) | |
| # Use gr.Plot for matplotlib/plotly compatibility | |
| bar_plot = gr.Plot(label="Event Frequency by Hour") | |
| pie_chart = gr.Plot(label="Event Type Distribution") | |
| alert_feed = gr.HighlightedText(label="Security Alerts", color_map={ | |
| "CRITICAL": "red", | |
| "WARNING": "orange", | |
| "INFO": "blue" | |
| }) | |
| # ---------- Export ---------- | |
| with gr.Tab("Export 📤"): | |
| export_csv = gr.Button("Save as CSV") | |
| export_pdf = gr.Button("Export PDF Report") | |
| # ---------- Action Button ---------- | |
| run_button = gr.Button("🔎 Analyze Logs") | |
| # Bind the Analyze button to your backend function | |
| run_button.click( | |
| fn=analysis.run_analysis, | |
| inputs=[uploaded_files, text_input, query_input, quick_query, temperature, start_time, end_time], | |
| outputs=[analysis_result, bar_plot, pie_chart, alert_feed] | |
| ) | |
| demo.launch() | |