fix:批量修复了一些问题
This commit is contained in:
@@ -97,9 +97,12 @@ class MultiPredictResult:
|
||||
reasoning: str | None
|
||||
agent_outputs: list[dict]
|
||||
agent_weights: dict | None
|
||||
status: str = "success"
|
||||
context: str
|
||||
latency_ms: int | None
|
||||
raw: dict | None
|
||||
latency_ms: int | None = None
|
||||
prompt_tokens: int | None = None
|
||||
completion_tokens: int | None = None
|
||||
raw: dict | None = None
|
||||
|
||||
|
||||
async def _agent_provider(agent_id: str, *, tier: str) -> LLMProvider:
|
||||
@@ -158,7 +161,10 @@ async def run_specialists(
|
||||
reports: list[AgentReport] = []
|
||||
for spec, r in zip(SPECIALIST_SPECS, results):
|
||||
if isinstance(r, Exception):
|
||||
logger.warning("agent %s raised: %s", spec.name, r)
|
||||
logger.warning(
|
||||
"专家调用失败 match=%s agent=%s error=%s",
|
||||
header.match_id, spec.name, str(r)[:120],
|
||||
)
|
||||
reports.append(AgentReport(agent=spec.name, status="error", analysis=str(r)[:200]))
|
||||
else:
|
||||
reports.append(r)
|
||||
@@ -256,8 +262,8 @@ async def predict_match_multi(
|
||||
else:
|
||||
# 所有专家无数据/均失败:跳过终裁,标记 degraded
|
||||
logger.warning(
|
||||
"match %s: 所有 %d 位专家均无有效数据,跳过终裁,标记 degraded",
|
||||
match_id, len(reports),
|
||||
"预测降级 match=%s mode=%s status=degraded experts=%d/%d 均无有效数据",
|
||||
match_id, "multi", ok_reports, len(reports),
|
||||
)
|
||||
# 无有效专家时不调用 aggregator provider,避免多余开销
|
||||
# model 使用 settings 默认值占位(无实际 LLM 调用)
|
||||
@@ -337,6 +343,13 @@ async def predict_match_multi(
|
||||
},
|
||||
)
|
||||
|
||||
logger.info(
|
||||
"预测完成 match=%s mode=%s status=%s pred=%s:%s (%s) latency=%sms, experts=%d/%d, prediction_id=%s",
|
||||
match_id, "multi", pred_status,
|
||||
pred.pred_home_goals, pred.pred_away_goals, pred.pred_1x2,
|
||||
latency_ms, ok_reports, len(reports), pred.id,
|
||||
)
|
||||
|
||||
return MultiPredictResult(
|
||||
prediction_id=pred.id,
|
||||
provider=pred.provider,
|
||||
@@ -350,9 +363,12 @@ async def predict_match_multi(
|
||||
pred_1x2=pred.pred_1x2,
|
||||
subjective_confidence=pred.subjective_confidence,
|
||||
reasoning=pred.reasoning,
|
||||
status=pred_status,
|
||||
agent_outputs=pred.agent_outputs,
|
||||
agent_weights=agent_weights,
|
||||
context=_reports_to_json(reports),
|
||||
latency_ms=latency_ms,
|
||||
prompt_tokens=pred.prompt_tokens,
|
||||
completion_tokens=pred.completion_tokens,
|
||||
raw=final,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user