Remove how-to instructions and model descriptions, add more sample questions
Browse files- Remove 'How to Use VayuChat' instruction section to save space
- Remove 'Current Model' section and model descriptions
- Remove instruction tooltips and help text
- Add more sample questions (15 total, up from 12)
- Include 3 harder analytical questions:
* Which station records highest variability in PM2.5?
* Calculate pollution improvement rate year-over-year by city
* Identify cities with PM2.5 levels consistently above 50 μg/m³ for >6 months
* Find correlation between PM2.5 and PM10 across different seasons and cities
- Cleaner, more focused interface with more query options
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>
app.py
CHANGED
@@ -592,58 +592,34 @@ with st.sidebar:
|
|
592 |
"Which month had highest pollution?",
|
593 |
"Which city has worst air quality?",
|
594 |
"Show annual PM2.5 average",
|
595 |
-
"Compare winter vs summer pollution",
|
596 |
-
"List all cities by pollution level",
|
597 |
"Plot monthly average PM2.5 for 2023",
|
|
|
|
|
598 |
"Show seasonal pollution patterns",
|
599 |
-
"Which
|
600 |
-
"Create correlation plot between pollutants",
|
601 |
"What are peak pollution hours?",
|
602 |
-
"Compare weekday vs weekend levels",
|
603 |
"Show PM10 vs PM2.5 comparison",
|
|
|
604 |
"Plot yearly trend analysis",
|
605 |
-
"
|
606 |
-
"
|
|
|
|
|
|
|
|
|
607 |
]
|
608 |
|
609 |
# Quick query buttons in sidebar with helpful descriptions
|
610 |
selected_prompt = None
|
611 |
|
612 |
-
# Add description for quick queries
|
613 |
-
st.markdown("""
|
614 |
-
<div style='background: #fef9e7; border: 1px solid #fbbf24; border-radius: 6px; padding: 0.5rem; margin-bottom: 0.75rem; font-size: 0.75rem; color: #92400e;'>
|
615 |
-
💡 <strong>Click any question below</strong> to start analyzing the air quality data instantly
|
616 |
-
</div>
|
617 |
-
""", unsafe_allow_html=True)
|
618 |
|
619 |
-
for i, question in enumerate(questions[:
|
620 |
# Simple left-aligned buttons without icons for cleaner look
|
621 |
if st.button(question, key=f"sidebar_prompt_{i}", use_container_width=True, help=f"Click to analyze: {question}"):
|
622 |
selected_prompt = question
|
623 |
|
624 |
st.markdown("---")
|
625 |
|
626 |
-
# Current Model Info
|
627 |
-
st.markdown("### Current Model")
|
628 |
-
st.markdown(f"**{model_name}**")
|
629 |
-
|
630 |
-
model_descriptions = {
|
631 |
-
"llama3.1": "Fast and efficient for general queries",
|
632 |
-
"llama3.3": "Most advanced LLaMA model for complex reasoning",
|
633 |
-
"mistral": "Balanced performance and speed",
|
634 |
-
"gemma": "Google's lightweight model",
|
635 |
-
"gemini-pro": "Google's most powerful model",
|
636 |
-
"gpt-oss-20b": "OpenAI's compact open-weight GPT for everyday tasks",
|
637 |
-
"gpt-oss-120b": "OpenAI's massive open-weight GPT for nuanced responses",
|
638 |
-
"deepseek-R1": "DeepSeek's distilled LLaMA model for efficient reasoning",
|
639 |
-
"llama4 maverik": "Meta's LLaMA 4 Maverick — high-performance instruction model",
|
640 |
-
"llama4 scout": "Meta's LLaMA 4 Scout — optimized for adaptive reasoning"
|
641 |
-
}
|
642 |
-
|
643 |
-
if model_name in model_descriptions:
|
644 |
-
st.caption(model_descriptions[model_name])
|
645 |
-
|
646 |
-
st.markdown("---")
|
647 |
|
648 |
# Clear Chat Button
|
649 |
if st.button("Clear Chat", use_container_width=True):
|
@@ -663,19 +639,6 @@ if "processing" not in st.session_state:
|
|
663 |
if "session_id" not in st.session_state:
|
664 |
st.session_state.session_id = str(uuid.uuid4())
|
665 |
|
666 |
-
# Helpful instructions section
|
667 |
-
if not st.session_state.responses:
|
668 |
-
st.markdown("""
|
669 |
-
<div style='background: #f1f5f9; border: 1px solid #e2e8f0; border-radius: 8px; padding: 1.5rem; margin-bottom: 1rem; border-left: 4px solid #3b82f6;'>
|
670 |
-
<h4 style='margin: 0 0 0.5rem 0; color: #1e293b; font-size: 1rem;'>💡 How to Use VayuChat</h4>
|
671 |
-
<p style='margin: 0.25rem 0; font-size: 0.875rem; color: #475569;'>
|
672 |
-
• <strong>Click any quick query</strong> from the sidebar to start analyzing air quality data<br>
|
673 |
-
• <strong>Type your own question</strong> in the chat box below<br>
|
674 |
-
• <strong>Ask about trends, comparisons, or specific data points</strong><br>
|
675 |
-
• <strong>Request visualizations</strong> with phrases like "plot" or "show chart"
|
676 |
-
</p>
|
677 |
-
</div>
|
678 |
-
""", unsafe_allow_html=True)
|
679 |
|
680 |
|
681 |
|
|
|
592 |
"Which month had highest pollution?",
|
593 |
"Which city has worst air quality?",
|
594 |
"Show annual PM2.5 average",
|
|
|
|
|
595 |
"Plot monthly average PM2.5 for 2023",
|
596 |
+
"List all cities by pollution level",
|
597 |
+
"Compare winter vs summer pollution",
|
598 |
"Show seasonal pollution patterns",
|
599 |
+
"Which areas exceed WHO guidelines?",
|
|
|
600 |
"What are peak pollution hours?",
|
|
|
601 |
"Show PM10 vs PM2.5 comparison",
|
602 |
+
"Compare weekday vs weekend levels",
|
603 |
"Plot yearly trend analysis",
|
604 |
+
"Show pollution distribution by city",
|
605 |
+
"Create correlation plot between pollutants",
|
606 |
+
"Which station records highest variability in PM2.5?",
|
607 |
+
"Calculate pollution improvement rate year-over-year by city",
|
608 |
+
"Identify cities with PM2.5 levels consistently above 50 μg/m³ for >6 months",
|
609 |
+
"Find correlation between PM2.5 and PM10 across different seasons and cities"
|
610 |
]
|
611 |
|
612 |
# Quick query buttons in sidebar with helpful descriptions
|
613 |
selected_prompt = None
|
614 |
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
|
616 |
+
for i, question in enumerate(questions[:15]): # Show more questions
|
617 |
# Simple left-aligned buttons without icons for cleaner look
|
618 |
if st.button(question, key=f"sidebar_prompt_{i}", use_container_width=True, help=f"Click to analyze: {question}"):
|
619 |
selected_prompt = question
|
620 |
|
621 |
st.markdown("---")
|
622 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
623 |
|
624 |
# Clear Chat Button
|
625 |
if st.button("Clear Chat", use_container_width=True):
|
|
|
639 |
if "session_id" not in st.session_state:
|
640 |
st.session_state.session_id = str(uuid.uuid4())
|
641 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
642 |
|
643 |
|
644 |
|