SQL-LLM-Agent / app.py
Mhassanen's picture
Create app.py
f8497b9 verified
raw
history blame
1.4 kB
# Install required libraries
!pip install streamlit requests
# Streamlit app code
import streamlit as st
import requests
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# API URL (replace with your ngrok URL)
API_URL = "https://c6d9-34-27-134-153.ngrok-free.app" # Replace with your ngrok public URL
# Streamlit app
st.title("SQL Agent with Streamlit")
# Input for the question
question = st.text_input("Enter your question:")
if st.button("Submit"):
if question:
# Call the API
response = requests.post(API_URL, json={"question": question})
if response.status_code == 200:
data = response.json()
st.write("Generated SQL Query:")
st.code(data["sql_query"], language="sql")
st.write("Query Results:")
result_df = pd.read_json(data["result"], orient='records')
st.dataframe(result_df)
# Visualize the data
if 'region' in result_df.columns and 'total_sales' in result_df.columns:
st.write("Total Sales by Region")
fig, ax = plt.subplots()
sns.barplot(x='region', y='total_sales', data=result_df, ax=ax)
st.pyplot(fig)
else:
st.error(f"Error: {response.json().get('error')}")
else:
st.warning("Please enter a question.")