Фиксируем состояние
This commit is contained in:
@@ -66,8 +66,8 @@ class SummaryComposer:
|
||||
"",
|
||||
f"Passed: {passed}/{len(results)}",
|
||||
"",
|
||||
"| File | Case | Mode | Query | Actual sub-intent | RAG layers | Pass |",
|
||||
"|------|------|------|-------|-------------------|------------|------|",
|
||||
"| File | Case | Mode | Query | Actual sub-intent | RAG layers | Tokens | Pass |",
|
||||
"|------|------|------|-------|-------------------|------------|--------|------|",
|
||||
]
|
||||
lines.extend(self._rows(results))
|
||||
failures = [item for item in results if not item.passed]
|
||||
@@ -84,7 +84,7 @@ class SummaryComposer:
|
||||
rows.append(
|
||||
f"| {item.case.source_file.name} | {item.case.case_id} | {item.case.mode} | "
|
||||
f"{self._cell(item.case.query)} | {item.actual.get('sub_intent') or '—'} | "
|
||||
f"{self._layer_text(item.details)} | {'✓' if item.passed else '✗'} |"
|
||||
f"{self._layer_text(item.details)} | {self._token_text(item.details)} | {'✓' if item.passed else '✗'} |"
|
||||
)
|
||||
return rows
|
||||
|
||||
@@ -104,6 +104,16 @@ class SummaryComposer:
|
||||
return compact
|
||||
return compact[: limit - 1].rstrip() + "…"
|
||||
|
||||
def _token_text(self, details: dict) -> str:
|
||||
token_usage = dict(details.get("token_usage") or {})
|
||||
direct = token_usage.get("tokens_in_estimate")
|
||||
if direct is not None:
|
||||
return str(direct)
|
||||
prompt = dict(details.get("diagnostics", {}).get("prompt") or {})
|
||||
stats = dict(prompt.get("prompt_stats") or {})
|
||||
value = stats.get("tokens_in_estimate")
|
||||
return str(value) if value is not None else "—"
|
||||
|
||||
def _llm_section(self, results: list[V3CaseResult]) -> list[str]:
|
||||
llm_results = [item for item in results if str(item.actual.get("llm_answer") or "").strip()]
|
||||
if not llm_results:
|
||||
|
||||
Reference in New Issue
Block a user