abhicodes's picture
Update app.py
1867856
raw
history blame contribute delete
No virus
2.32 kB
import gradio as gr
import json
import requests
# Create the inputs list with dropdown menus and sliders
inputs = [
gr.Dropdown(
choices=['Afghanistan', 'Australia', 'Bangladesh', 'England', 'India', 'Ireland', 'New Zealand', 'Pakistan',
'South Africa', 'Sri Lanka', 'West Indies', 'Zimbabwe'],
label="Batting Team"
),
gr.Dropdown(
choices=['Afghanistan', 'Australia', 'Bangladesh', 'England', 'India', 'Ireland', 'New Zealand', 'Pakistan',
'South Africa', 'Sri Lanka', 'West Indies', 'Zimbabwe'],
label="Bowling Team"
),
gr.Slider(minimum=0, maximum=500, step=1, label="Total Runs"),
gr.Slider(minimum=0, maximum=11, step=1, label="Total Wickets"),
gr.Slider(minimum=0.0, maximum=49.6, step=0.1, label="Overs"),
gr.Slider(minimum=0, maximum=500, step=1, label="Runs last 5 overs"),
gr.Slider(minimum=0, maximum=11,step=1, label="Wickets last 5 overs"),
]
# Create a function to make predictions
def predict_accident(
batting_team,
bowling_team,
total_runs,
total_wickets,
overs,
runs_last_5_overs,
wickets_last_5_overs
):
# Replace the URL with the actual endpoint you want to send the request to
url = "https://abhicodes-icc-prediction-model-api.hf.space/prediction"
# Replace the payload with the data you want to send in the request body
payload = {"batting_team": batting_team, "bowling_team": bowling_team, "total_runs": total_runs, "total_wickets": total_wickets, "overs": overs, "runs_last_5_overs": runs_last_5_overs, "wickets_last_5_overs": wickets_last_5_overs}
# Convert the payload to JSON
json_payload = json.dumps(payload)
# Set the headers to indicate that you are sending JSON
headers = {'Content-Type': 'application/json'}
# Send the POST request
response = requests.post(url, data=json_payload, headers=headers)
label = f"Score Prediction: {response.json().get('prediction')}"
return label
# Create the Gradio interface
title = "ICC World Cup Score Prediction"
description = "Predict the score of a ICC World Cup matches."
output_label = [gr.Label(num_top_classes=4)]
gr.Interface(
fn=predict_accident,
inputs=inputs,
outputs=output_label,
title=title,
description=description,
).launch()