Spaces:
Runtime error
Runtime error
import utils | |
import time | |
import datetime | |
import pandas as pd | |
import bittensor as bt | |
from typing import Dict, List, Any, Optional, Tuple | |
from flask import Flask, request, jsonify | |
app = Flask(__name__) | |
# Global variables (saves time on loading data) | |
state_vars = utils.test_load_state_vars() | |
metagraph = state_vars["metagraph"] | |
model_data = state_vars["model_data"] | |
vali_runs = state_vars["vali_runs"] | |
scores = state_vars["scores"] | |
validator_df = state_vars["validator_df"] | |
benchmarks = state_vars.get("benchmarks", None) | |
benchmark_timestamp = state_vars.get("benchmark_timestamp", None) | |
def home(): | |
return "Welcome to the Bittensor Pretraining Leaderboard API!" | |
def reload(): | |
""" | |
Reload the state variables | |
""" | |
global metagraph, model_data, vali_runs, scores, validator_df, benchmarks, benchmark_timestamp | |
state_vars = utils.load_state_vars() | |
metagraph = state_vars["metagraph"] | |
model_data = state_vars["model_data"] | |
vali_runs = state_vars["vali_runs"] | |
scores = state_vars["scores"] | |
validator_df = state_vars["validator_df"] | |
benchmarks = state_vars.get("benchmarks", None) | |
benchmark_timestamp = state_vars.get("benchmark_timestamp", None) | |
return jsonify({"message": "State variables reloaded"}) | |
def benchmark(): | |
""" | |
Get the benchmarks and the timestamp | |
Returns: | |
- benchmarks: List of dicts (from pandas DataFrame) | |
- benchmark_timestamp: String | |
""" | |
return jsonify( | |
{ | |
"benchmarks": benchmarks.to_dict(orient='records'), | |
"benchmark_timestamp": benchmark_timestamp.strftime('%Y-%m-%d %H:%M:%S') | |
} | |
) | |
def metagraph(): | |
""" | |
Get the metagraph data | |
Returns: | |
- metagraph_data: List of dicts (from pandas DataFrame) | |
""" | |
return jsonify( | |
utils.make_metagraph_dataframe(metagraph).to_dict(orient='records') | |
) | |
def leaderboard(): | |
""" | |
Get the leaderboard data | |
Returns: | |
- leaderboard_data: List of dicts (from pandas DataFrame) | |
""" | |
show_stale = request.args.get('show_stale') | |
return jsonify( | |
utils.leaderboard_data(model_data, scores, show_stale=show_stale) | |
) | |
def loss(): | |
""" | |
Get the losses over time | |
Returns: | |
- losses_over_time: List of dicts (from pandas DataFrame) | |
""" | |
return jsonify( | |
utils.get_losses_over_time(vali_runs).to_dict(orient='records') | |
) | |
def validator(): | |
""" | |
Get the validator data | |
Returns: | |
- validator_data: List of dicts (from pandas DataFrame) | |
""" | |
return jsonify( | |
utils.make_validator_dataframe(validator_df, model_data).to_dict(orient='records') | |
) | |
if __name__ == '__main__': | |
app.run(port=5000, debug=True) | |