Spaces:
Sleeping
Sleeping
import streamlit as st | |
import requests | |
st.title("SuperKart Sales Prediction App") #Complete the code to define the title of the app. | |
# Input fields for product and store data | |
Product_Weight = st.number_input("Product Weight", min_value=0.0, value=12.66) | |
Product_Sugar_Content = st.selectbox("Product Sugar Content", ["Low Sugar", "Regular", "No Sugar"]) | |
Product_Allocated_Area = st.number_input("Product Allocated Area", min_value=0.0, value=10.0) #Complete the code to define the UI element for Product_Allocated_Area | |
Product_MRP = st.number_input("Product MRP", min_value=0.0, value=10.0) #Complete the code to define the UI element for Product_MRP | |
Store_Size = st.selectbox("Store Size", ["Small", "Medium", "High"]) #Complete the code to define the UI element for Store_Size | |
Store_Location_City_Type = st.selectbox("Store Location City Type", ["Tier 1", "Tier 2", "Tier 3"]) #Complete the code to define the UI element for Store_Location_City_Type | |
Store_Type = st.selectbox("Store Type", ["Departmental Store", "Food Mart", "Supermarket Type1", "Supermarket Type2"]) #Complete the code to define the UI element for Store_Type | |
Product_Id_char = st.selectbox("Product Id char", ["FD", "NC", "DR"]) #Complete the code to define the UI element for Product_Id_char | |
Store_Age_Years = st.number_input("Store Age Years", min_value=1, max_value=100,value=5) #Complete the code to define the UI element for Store_Age_Years | |
Product_Type_Category = st.selectbox("Product Type Category", ["Low Sugar", "Regular", "No Sugar"]) #Complete the code to define the UI element for Product_Type_Category | |
product_data = { | |
"Product_Weight": Product_Weight, | |
"Product_Sugar_Content": str(Product_Sugar_Content), | |
"Product_Allocated_Area": Product_Allocated_Area, | |
"Product_MRP": Product_MRP, | |
"Store_Size": str(Store_Size), | |
"Store_Location_City_Type": str(Store_Location_City_Type), | |
"Store_Type": str(Store_Type), | |
"Product_Id_char": str(Product_Id_char), | |
"Store_Age_Years": Store_Age_Years, | |
"Product_Type_Category": str(Product_Type_Category) | |
} | |
#if st.button("Predict", type='primary'): | |
# response = requests.post("https://jamolo12-SuperKart.hf.space/v1/predict", json=product_data) # Complete the code to enter user name and space name to correctly define the endpoint | |
# if response.status_code == 200: | |
# result = response.json() | |
# predicted_sales = result["Sales"] | |
# st.write(f"Predicted Product Store Sales Total: ₹{predicted_sales:.2f}") | |
# else: | |
# st.error("Error in API request") | |
if st.button("Predict", type='primary'): | |
try: | |
response = requests.post("https://jamolo12-SuperKart.hf.space/v1/predict", json=product_data) | |
if response.status_code == 200: | |
result = response.json() | |
predicted_sales = result["Sales"] | |
st.write(f"Predicted Product Store Sales Total: ₹{predicted_sales:.2f}") | |
else: | |
# Display a more detailed error message from the API | |
st.error(f"Error in API request: Status Code {response.status_code}") | |
try: | |
# Try to show the JSON error response from the API | |
error_details = response.json() | |
st.error(f"Details: {error_details}") | |
except ValueError: | |
# If the error response is not in JSON format, show the raw text | |
st.error(f"Details: {response.text}") | |
except requests.exceptions.RequestException as e: | |
# Handle network-level errors like connection issues | |
st.error(f"A connection error occurred: {e}") | |