Narration colors by stage semantics: start/in-progress events yellow, completion events green (dataset ready / generation complete / scoring complete / checkpoint restored)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
89f950d8a0
commit
9818515247
@ -198,13 +198,26 @@ def _print_run_plan(console, args, model_spec):
|
|||||||
justify='center')
|
justify='center')
|
||||||
|
|
||||||
|
|
||||||
|
def _phase_color(message: str) -> str:
|
||||||
|
"""Start/finish color code: events that START or are IN progress are
|
||||||
|
yellow; events that COMPLETE are green. One glance = what stage,
|
||||||
|
did it finish."""
|
||||||
|
m = message.lower()
|
||||||
|
if any(k in m for k in ('complete', 'ready', 'downloaded', 'parsed',
|
||||||
|
'restored', 'ok (')):
|
||||||
|
return 'green'
|
||||||
|
return 'yellow'
|
||||||
|
|
||||||
|
|
||||||
def _print_phase(console, index, total, name, message):
|
def _print_phase(console, index, total, name, message):
|
||||||
# single-benchmark runs: the [1/1] tag is noise, drop it.
|
# single-benchmark runs: the [1/1] tag is noise, drop it
|
||||||
# narration lines stay UNCOLORED everywhere (matches reporter.log and
|
|
||||||
# the runner's plain prints): color is reserved for ✓/✗/errors only
|
|
||||||
prefix = f'[{index}/{total}] ' if total > 1 else ''
|
prefix = f'[{index}/{total}] ' if total > 1 else ''
|
||||||
text = f'{prefix}{name}: {message}'
|
text = f'{prefix}{name}: {message}'
|
||||||
print(text, flush=True)
|
color = _phase_color(message)
|
||||||
|
if console is not None:
|
||||||
|
console.print(f'[{color}]{text}[/{color}]', highlight=False)
|
||||||
|
else:
|
||||||
|
print(text, flush=True)
|
||||||
|
|
||||||
|
|
||||||
def _print_benchmark_result(console, index, total, name, status, elapsed):
|
def _print_benchmark_result(console, index, total, name, status, elapsed):
|
||||||
@ -508,7 +521,8 @@ def _cmd_eval_run(args) -> int:
|
|||||||
_reporter=progress_reporter,
|
_reporter=progress_reporter,
|
||||||
_console=console):
|
_console=console):
|
||||||
if _reporter is not None:
|
if _reporter is not None:
|
||||||
_reporter.log(f'{_name}: {msg}')
|
_col = _phase_color(msg)
|
||||||
|
_reporter.log(f'[{_col}]{_name}: {msg}[/{_col}]')
|
||||||
if 'scoring' in msg:
|
if 'scoring' in msg:
|
||||||
_reporter.set_phase('scoring')
|
_reporter.set_phase('scoring')
|
||||||
elif 'generating model responses' in msg:
|
elif 'generating model responses' in msg:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user