Spaces:
Sleeping
Sleeping
minerhotkeyfix
Browse files
app.py
CHANGED
|
@@ -32,19 +32,19 @@ wandb_api = wandb.Api()
|
|
| 32 |
def update_leader_info(leader_info, competition, best_model):
|
| 33 |
if leader_info.get(competition) is None:
|
| 34 |
leader_info[competition] = {
|
| 35 |
-
"
|
| 36 |
"Date": time.strftime("%Y-%m-%d"),
|
| 37 |
"Days on Top": 1
|
| 38 |
}
|
| 39 |
else:
|
| 40 |
-
if leader_info[competition]["
|
| 41 |
# count the number of days on top
|
| 42 |
start_date = datetime.datetime.strptime(leader_info[competition]["Date"], "%Y-%m-%d")
|
| 43 |
current_date = datetime.datetime.now()
|
| 44 |
days_on_top = (current_date - start_date).days
|
| 45 |
leader_info[competition]["Days on Top"] = days_on_top + 1
|
| 46 |
else:
|
| 47 |
-
leader_info[competition]["
|
| 48 |
leader_info[competition]["Date"] = time.strftime("%Y-%m-%d")
|
| 49 |
leader_info[competition]["Days on Top"] = 1
|
| 50 |
return leader_info[competition]
|
|
@@ -84,7 +84,7 @@ def main():
|
|
| 84 |
best_hotkey = winning_hotkeys.idxmax()
|
| 85 |
|
| 86 |
# Filter models for the best hotkey
|
| 87 |
-
best_model_filtered = model_evaluations[competition][model_evaluations[competition]["
|
| 88 |
|
| 89 |
# Check if the filtered DataFrame is not empty
|
| 90 |
if not best_model_filtered.empty:
|
|
@@ -95,7 +95,7 @@ def main():
|
|
| 95 |
|
| 96 |
else:
|
| 97 |
st.session_state.leader_info[competition] = {
|
| 98 |
-
"
|
| 99 |
"Date": "N/A",
|
| 100 |
"UID": "N/A",
|
| 101 |
"Days on Top": "N/A"
|
|
@@ -131,7 +131,7 @@ def main():
|
|
| 131 |
|
| 132 |
# Create a header for the table
|
| 133 |
cols = st.columns([1, 3, 2, 2, 1, 2])
|
| 134 |
-
headers = ["Index", "Competition Name", "Date", "
|
| 135 |
for col, header in zip(cols, headers):
|
| 136 |
col.write(header)
|
| 137 |
|
|
@@ -145,7 +145,7 @@ def main():
|
|
| 145 |
if cols[1].button(competition):
|
| 146 |
st.session_state.selected_competition = competition
|
| 147 |
cols[2].write(leader_info.get("Date", "N/A"))
|
| 148 |
-
cols[3].write(leader_info.get("
|
| 149 |
cols[4].write(leader_info.get("Days on Top", "N/A"))
|
| 150 |
if st.session_state.selected_competition:
|
| 151 |
competition_name = st.session_state.selected_competition
|
|
|
|
| 32 |
def update_leader_info(leader_info, competition, best_model):
|
| 33 |
if leader_info.get(competition) is None:
|
| 34 |
leader_info[competition] = {
|
| 35 |
+
"Miner hotkey": best_model["Miner hotkey"],
|
| 36 |
"Date": time.strftime("%Y-%m-%d"),
|
| 37 |
"Days on Top": 1
|
| 38 |
}
|
| 39 |
else:
|
| 40 |
+
if leader_info[competition]["Miner hotkey"] == best_model["Miner hotkey"]:
|
| 41 |
# count the number of days on top
|
| 42 |
start_date = datetime.datetime.strptime(leader_info[competition]["Date"], "%Y-%m-%d")
|
| 43 |
current_date = datetime.datetime.now()
|
| 44 |
days_on_top = (current_date - start_date).days
|
| 45 |
leader_info[competition]["Days on Top"] = days_on_top + 1
|
| 46 |
else:
|
| 47 |
+
leader_info[competition]["Miner hotkey"] = best_model["Miner hotkey"]
|
| 48 |
leader_info[competition]["Date"] = time.strftime("%Y-%m-%d")
|
| 49 |
leader_info[competition]["Days on Top"] = 1
|
| 50 |
return leader_info[competition]
|
|
|
|
| 84 |
best_hotkey = winning_hotkeys.idxmax()
|
| 85 |
|
| 86 |
# Filter models for the best hotkey
|
| 87 |
+
best_model_filtered = model_evaluations[competition][model_evaluations[competition]["Miner hotkey"] == best_hotkey]
|
| 88 |
|
| 89 |
# Check if the filtered DataFrame is not empty
|
| 90 |
if not best_model_filtered.empty:
|
|
|
|
| 95 |
|
| 96 |
else:
|
| 97 |
st.session_state.leader_info[competition] = {
|
| 98 |
+
"Miner hotkey": "N/A",
|
| 99 |
"Date": "N/A",
|
| 100 |
"UID": "N/A",
|
| 101 |
"Days on Top": "N/A"
|
|
|
|
| 131 |
|
| 132 |
# Create a header for the table
|
| 133 |
cols = st.columns([1, 3, 2, 2, 1, 2])
|
| 134 |
+
headers = ["Index", "Competition Name", "Date", "Miner hotkey", "Days on Top"]
|
| 135 |
for col, header in zip(cols, headers):
|
| 136 |
col.write(header)
|
| 137 |
|
|
|
|
| 145 |
if cols[1].button(competition):
|
| 146 |
st.session_state.selected_competition = competition
|
| 147 |
cols[2].write(leader_info.get("Date", "N/A"))
|
| 148 |
+
cols[3].write(leader_info.get("Miner hotkey", "N/A"))
|
| 149 |
cols[4].write(leader_info.get("Days on Top", "N/A"))
|
| 150 |
if st.session_state.selected_competition:
|
| 151 |
competition_name = st.session_state.selected_competition
|