| 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() |