our_knp/mnist-altai-native/progress_probe.py

12 lines
604 B
Python

from pathlib import Path
import json,sys
r=Path(sys.argv[1])
if (r/'SHARDS.json').exists():
meta=json.loads((r/'SHARDS.json').read_text());current=0
for child in sorted(r.glob('shard-*')):
if (child/'progress.json').exists():current+=json.loads((child/'progress.json').read_text()).get('current',0)
s={'current':current,'total':meta['total'],'failed':False}
else:s=json.loads((r/'progress.json').read_text())
s['done']=(r/'VERIFIED.json').exists()
if (r/'FAILED.json').exists():s.update(failed=True,error=json.loads((r/'FAILED.json').read_text())['error'])
print(json.dumps(s,separators=(',',':')))