import gradio as gr import torch, numpy as np, pandas as pd import skimage import pickle defaultColumns = [ 'matchType', 'assists', 'boosts', 'damageDealt', 'DBNOs', 'headshotKills', 'heals', 'killPlace', 'killPoints', 'kills', 'killStreaks', 'longestKill', 'matchDuration', 'maxPlace', 'numGroups', 'rankPoints', 'revives', 'rideDistance', 'roadKills', 'swimDistance', 'teamKills', 'vehicleDestroys', 'walkDistance', 'weaponsAcquired', 'winPoints' ] options = [ 'crashfpp', 'crashtpp', 'duo', 'duo-fpp', 'flarefpp', 'flaretpp', 'normal-duo', 'normal-duo-fpp', 'normal-solo', 'normal-solo-fpp', 'normal-squad', 'normal-squad-fpp', 'solo', 'solo-fpp', 'squad', 'squad-fpp' ] with open("model.pkl", "rb") as f: model = pickle.load(f) def win_position(matchType, assists, boosts, damageDealt, DBNOs, headshotKills, heals, killPlace, killPoints, kills, killStreaks, longestKill, matchDuration, maxPlace, numGroups, rankPoints, revives, rideDistance, roadKills, swimDistance, teamKills, vehicleDestroys, walkDistance, weaponsAcquired, winPoints): f_matchType = options.index(matchType) f_assists = float(assists) f_boosts = float(boosts) f_damageDealt = float(damageDealt) f_DBNOs = float(DBNOs) f_headshotKills = float(headshotKills) f_heals = float(heals) f_killPlace = float(killPlace) f_killPoints = float(killPoints) f_kills = float(kills) f_killStreaks = float(killStreaks) f_longestKill = float(longestKill) f_matchDuration = float(matchDuration) f_maxPlace = float(maxPlace) f_numGroups = float(numGroups) f_rankPoints = float(rankPoints) f_revives = float(revives) f_rideDistance = float(rideDistance) f_roadKills = float(roadKills) f_swimDistance = float(swimDistance) f_teamKills = float(teamKills) f_vehicleDestroys = float(vehicleDestroys) f_walkDistance = float(walkDistance) f_weaponsAcquired = float(weaponsAcquired) f_winPoints = float(winPoints) default = [ f_matchType, f_assists, f_boosts, f_damageDealt, f_DBNOs, f_headshotKills, f_heals, f_killPlace, f_killPoints, f_kills, f_killStreaks, f_longestKill, f_matchDuration, f_maxPlace, f_numGroups, f_rankPoints, f_revives, f_rideDistance, f_roadKills, f_swimDistance, f_teamKills, f_vehicleDestroys, f_walkDistance, f_weaponsAcquired, f_winPoints ] df=pd.DataFrame([default], columns = defaultColumns) predictions = model.predict(df) result = 'você ficou em ' + str((100 - (int(predictions[0]*100)))) + '° lugar. [' + str(predictions[0]) + ']' return result iface = gr.Interface( fn=win_position, title="Win Predict", allow_flagging="never", inputs=[ gr.Dropdown(options, default='squad-fpp', label="matchType"), gr.inputs.Number(default= 0, label="assists"), gr.inputs.Number(default= 8, label="boosts"), gr.inputs.Number(default= 501.5, label="damageDealt"), gr.inputs.Number(default= 3, label="DBNOs"), gr.inputs.Number(default= 1, label="headshotKills"), gr.inputs.Number(default= 9, label="heals"), gr.inputs.Number(default= 3, label="killPlace"), gr.inputs.Number(default= 1551, label="killPoints"), gr.inputs.Number(default= 4, label="kills"), gr.inputs.Number(default= 2, label="killStreaks"), gr.inputs.Number(default= 115.9, label="longestKill"), gr.inputs.Number(default= 1810, label="matchDuration"), gr.inputs.Number(default= 30, label="maxPlace"), gr.inputs.Number(default= 30, label="numGroups"), gr.inputs.Number(default= -1, label="rankPoints"), gr.inputs.Number(default= 1, label="revives"), gr.inputs.Number(default= 7958.0, label="rideDistance"), gr.inputs.Number(default= 0, label="roadKills"), gr.inputs.Number(default= 0.0, label="swimDistance"), gr.inputs.Number(default= 0, label="teamKills"), gr.inputs.Number(default= 0, label="vehicleDestroys"), gr.inputs.Number(default= 2923.0, label="walkDistance"), gr.inputs.Number(default= 8, label="weaponsAcquired"), gr.inputs.Number(default= 1516, label="winPoints") ], outputs="text") iface.launch()