Spaces:
Runtime error
Runtime error
Merge pull request #5 from macrocosm-os/features/api-model-data
Browse files
api.py
CHANGED
@@ -126,6 +126,26 @@ def validator():
|
|
126 |
utils.make_validator_dataframe(validator_df, model_data).to_dict(orient='records')
|
127 |
)
|
128 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
129 |
|
130 |
if __name__ == '__main__':
|
131 |
|
|
|
126 |
utils.make_validator_dataframe(validator_df, model_data).to_dict(orient='records')
|
127 |
)
|
128 |
|
129 |
+
@app.route('/model-data', methods=['GET'])
|
130 |
+
def model_data():
|
131 |
+
"""
|
132 |
+
Get the model data
|
133 |
+
Returns:
|
134 |
+
- model_data: List of dicts (from list of ModelData)
|
135 |
+
- winner_data: dict containing top earning miners
|
136 |
+
"""
|
137 |
+
model_data = state_vars["model_data"]
|
138 |
+
winner_data = {
|
139 |
+
f"{c.namespace}/{c.name} ({c.commit[0:8]}) 路 (蟿{round(c.emission, 2):,})": c.incentive
|
140 |
+
for c in model_data
|
141 |
+
if c.incentive
|
142 |
+
}
|
143 |
+
|
144 |
+
return jsonify({
|
145 |
+
'model_data': [md.to_dict() for md in model_data],
|
146 |
+
'winner_data': winner_data
|
147 |
+
})
|
148 |
+
|
149 |
|
150 |
if __name__ == '__main__':
|
151 |
|
utils.py
CHANGED
@@ -14,7 +14,7 @@ import numpy as np
|
|
14 |
import bittensor as bt
|
15 |
|
16 |
from dotenv import load_dotenv
|
17 |
-
from dataclasses import dataclass
|
18 |
from typing import Dict, List, Any, Optional, Tuple
|
19 |
from bittensor.extrinsics.serving import get_metadata
|
20 |
|
@@ -28,7 +28,7 @@ load_dotenv()
|
|
28 |
WANDB_TOKEN = os.environ.get("WANDB_API_KEY", None)
|
29 |
SUBTENSOR_ENDPOINT = os.environ.get("SUBTENSOR_ENDPOINT", None)
|
30 |
VALIDATOR_WANDB_PROJECT = "opentensor-dev/pretraining-subnet"
|
31 |
-
BENCHMARK_WANDB_PROJECT = "pretraining-benchmark-data"
|
32 |
BENCHMARK_FLAG = os.environ.get("BENCHMARK_FLAG", None)
|
33 |
|
34 |
@dataclass
|
@@ -66,7 +66,9 @@ class ModelData:
|
|
66 |
incentive=incentive,
|
67 |
emission=emission,
|
68 |
)
|
69 |
-
|
|
|
|
|
70 |
|
71 |
def run_with_retries(func, *args, **kwargs):
|
72 |
for i in range(0, RETRIES):
|
|
|
14 |
import bittensor as bt
|
15 |
|
16 |
from dotenv import load_dotenv
|
17 |
+
from dataclasses import dataclass, asdict
|
18 |
from typing import Dict, List, Any, Optional, Tuple
|
19 |
from bittensor.extrinsics.serving import get_metadata
|
20 |
|
|
|
28 |
WANDB_TOKEN = os.environ.get("WANDB_API_KEY", None)
|
29 |
SUBTENSOR_ENDPOINT = os.environ.get("SUBTENSOR_ENDPOINT", None)
|
30 |
VALIDATOR_WANDB_PROJECT = "opentensor-dev/pretraining-subnet"
|
31 |
+
BENCHMARK_WANDB_PROJECT = "steffenc/pretraining-benchmark-data"
|
32 |
BENCHMARK_FLAG = os.environ.get("BENCHMARK_FLAG", None)
|
33 |
|
34 |
@dataclass
|
|
|
66 |
incentive=incentive,
|
67 |
emission=emission,
|
68 |
)
|
69 |
+
|
70 |
+
def to_dict(self):
|
71 |
+
return asdict(self)
|
72 |
|
73 |
def run_with_retries(func, *args, **kwargs):
|
74 |
for i in range(0, RETRIES):
|