AlexNijjar
commited on
Commit
β’
ecf13ce
1
Parent(s):
92f1024
Add vtrust and updated
Browse files
app.py
CHANGED
@@ -61,6 +61,8 @@ class State:
|
|
61 |
|
62 |
data: dict[int, State] = {}
|
63 |
validator_identities: dict[int, str] = {}
|
|
|
|
|
64 |
|
65 |
|
66 |
def is_valid_run(run: Run):
|
@@ -83,7 +85,10 @@ def is_valid_run(run: Run):
|
|
83 |
|
84 |
|
85 |
def fetch_wandb_data():
|
86 |
-
|
|
|
|
|
|
|
87 |
global data
|
88 |
wandb_runs = wandb_api.runs(
|
89 |
WANDB_RUN_PATH,
|
@@ -160,6 +165,15 @@ def fetch_identities():
|
|
160 |
validator_identities[uid] = identity.value["name"]
|
161 |
|
162 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
def get_validator_name(validator_uid: int) -> str:
|
164 |
if validator_uid in validator_identities:
|
165 |
return validator_identities[validator_uid]
|
@@ -180,6 +194,7 @@ def refresh():
|
|
180 |
metagraph.sync(subtensor=subtensor)
|
181 |
fetch_wandb_data()
|
182 |
fetch_identities()
|
|
|
183 |
demo.clear()
|
184 |
now = datetime.now(tz=ZoneInfo("America/New_York"))
|
185 |
|
@@ -207,13 +222,15 @@ def refresh():
|
|
207 |
state.invalid,
|
208 |
f"<span style='color: {'orange' if state.average_benchmark_time > AVERAGE_BENCHMARK_TIME_WARNING_THRESHOLD else 'springgreen'}'>{average_time_text[0]}</span>",
|
209 |
f"<span style='color: {'orange' if eta > ETA_WARNING_THRESHOLD else 'springgreen'}'>{eta_time}</span>",
|
210 |
-
f"<span style='color: {'orange' if eta > ETA_WARNING_THRESHOLD else 'springgreen'}'>{time_left if eta > 0 and state.status == Status.IN_PROGRESS else state.status.get_alt_time_text()}</span>"
|
|
|
|
|
211 |
))
|
212 |
|
213 |
gr.components.Dataframe(
|
214 |
elements,
|
215 |
-
headers=["UID", "Name", "Version", "Status", "Winner", "Tested", "Submissions", "Invalid", "Avg. Benchmark Time", "ETA (Eastern Time)", "ETA Remaining"],
|
216 |
-
datatype=["number", "markdown", "markdown", "markdown", "markdown", "number", "number", "number", "markdown", "markdown", "markdown"],
|
217 |
elem_id="state-table",
|
218 |
)
|
219 |
|
|
|
61 |
|
62 |
data: dict[int, State] = {}
|
63 |
validator_identities: dict[int, str] = {}
|
64 |
+
validator_vtrust: dict[int, float] = {}
|
65 |
+
validator_updated: dict[int, int] = {}
|
66 |
|
67 |
|
68 |
def is_valid_run(run: Run):
|
|
|
85 |
|
86 |
|
87 |
def fetch_wandb_data():
|
88 |
+
now = datetime.now(tz=ZoneInfo("America/New_York"))
|
89 |
+
noon = now.replace(hour=12, minute=0, second=0, microsecond=0)
|
90 |
+
if now.hour < 12:
|
91 |
+
noon -= timedelta(days=1)
|
92 |
global data
|
93 |
wandb_runs = wandb_api.runs(
|
94 |
WANDB_RUN_PATH,
|
|
|
165 |
validator_identities[uid] = identity.value["name"]
|
166 |
|
167 |
|
168 |
+
def fetch_metagraph_data():
|
169 |
+
validator_vtrust.clear()
|
170 |
+
validator_updated.clear()
|
171 |
+
block = subtensor.get_current_block()
|
172 |
+
for uid in data.keys():
|
173 |
+
validator_vtrust[uid] = metagraph.validator_trust[uid]
|
174 |
+
validator_updated[uid] = block - metagraph.last_update[uid]
|
175 |
+
|
176 |
+
|
177 |
def get_validator_name(validator_uid: int) -> str:
|
178 |
if validator_uid in validator_identities:
|
179 |
return validator_identities[validator_uid]
|
|
|
194 |
metagraph.sync(subtensor=subtensor)
|
195 |
fetch_wandb_data()
|
196 |
fetch_identities()
|
197 |
+
fetch_metagraph_data()
|
198 |
demo.clear()
|
199 |
now = datetime.now(tz=ZoneInfo("America/New_York"))
|
200 |
|
|
|
222 |
state.invalid,
|
223 |
f"<span style='color: {'orange' if state.average_benchmark_time > AVERAGE_BENCHMARK_TIME_WARNING_THRESHOLD else 'springgreen'}'>{average_time_text[0]}</span>",
|
224 |
f"<span style='color: {'orange' if eta > ETA_WARNING_THRESHOLD else 'springgreen'}'>{eta_time}</span>",
|
225 |
+
f"<span style='color: {'orange' if eta > ETA_WARNING_THRESHOLD else 'springgreen'}'>{time_left if eta > 0 and state.status == Status.IN_PROGRESS else state.status.get_alt_time_text()}</span>",
|
226 |
+
f"<span style='color: {'springgreen' if validator_vtrust[uid] > 0.75 else 'red'}'>{validator_vtrust[uid]:.4f}</span>",
|
227 |
+
f"<span style='color: {'springgreen' if validator_updated[uid] < 1000 else 'red'}'>{validator_updated[uid]}</span>",
|
228 |
))
|
229 |
|
230 |
gr.components.Dataframe(
|
231 |
elements,
|
232 |
+
headers=["UID", "Name", "Version", "Status", "Winner UID", "Tested", "Submissions", "Invalid", "Avg. Benchmark Time", "ETA (Eastern Time)", "ETA Remaining", "VTrust", "Updated"],
|
233 |
+
datatype=["number", "markdown", "markdown", "markdown", "markdown", "number", "number", "number", "markdown", "markdown", "markdown", "markdown", "markdown"],
|
234 |
elem_id="state-table",
|
235 |
)
|
236 |
|