in front/admin_ui/app.py [0:0]
def get_dataset_status(token, dataset):
headers = {"Authorization": f"Bearer {token}"}
response = requests.get(
f"{DV_ENDPOINT}/admin/dataset-status?dataset={dataset}",
headers=headers,
timeout=60,
)
if response.status_code == 200:
dataset_status = response.json()
cached_responses_df = pd.DataFrame(
[
{
"kind": cached_response["kind"],
"dataset": cached_response["dataset"],
"config": cached_response["config"],
"split": cached_response["split"],
"http_status": cached_response["http_status"],
"error_code": cached_response["error_code"],
"job_runner_version": cached_response[
"job_runner_version"
],
"dataset_git_revision": cached_response[
"dataset_git_revision"
],
"progress": cached_response["progress"],
"updated_at": cached_response["updated_at"],
"failed_runs": cached_response["failed_runs"],
"details": json.dumps(cached_response["details"]),
}
for content in dataset_status.values()
for cached_response in content["cached_responses"]
]
)
jobs_df = pd.DataFrame(
[
{
"type": job["type"],
"dataset": job["dataset"],
"revision": job["revision"],
"config": job["config"],
"split": job["split"],
"namespace": job["namespace"],
"priority": job["priority"],
"status": job["status"],
"difficulty": job["difficulty"],
"created_at": job["created_at"],
"started_at": job["started_at"],
"last_heartbeat": job["last_heartbeat"],
}
for content in dataset_status.values()
for job in content["jobs"]
]
)
return {
cached_responses_table: gr.DataFrame(
value=cached_responses_df
),
jobs_table: gr.DataFrame(value=jobs_df),
}
else:
return {
cached_responses_table: gr.DataFrame(
value=pd.DataFrame(
[
{
"error": f"❌ Failed to get status for {dataset} (error {response.status_code})"
}
]
)
),
jobs_table: gr.DataFrame(
value=pd.DataFrame([{"content": str(response.content)}])
),
}