feat(api): add load-aware client fallback

This commit is contained in:
2026-05-12 16:59:51 +08:00
parent c5cede2359
commit c2696e7bbe
7 changed files with 558 additions and 5 deletions
+22
View File
@@ -112,8 +112,30 @@ func attemptMetrics(candidate store.RuntimeModelCandidate, attemptNo int, simula
"platformModelId": candidate.PlatformModelID,
"clientId": candidate.ClientID,
"queueKey": candidate.QueueKey,
"loadRatio": candidate.LoadRatio,
"loadAvoided": candidate.LoadAvoided,
"simulated": simulated,
}
if candidate.LoadLimited {
metrics["loadMetrics"] = map[string]any{
"rpm": map[string]any{
"current": candidate.LoadMetrics.RPMCurrent,
"limit": candidate.LoadMetrics.RPMLimit,
"ratio": candidate.LoadMetrics.RPMRatio,
},
"tpm": map[string]any{
"current": candidate.LoadMetrics.TPMCurrent,
"limit": candidate.LoadMetrics.TPMLimit,
"ratio": candidate.LoadMetrics.TPMRatio,
},
"concurrent": map[string]any{
"current": candidate.LoadMetrics.ConcurrentCurrent,
"limit": candidate.LoadMetrics.ConcurrentLimit,
"ratio": candidate.LoadMetrics.ConcurrentRatio,
},
"queued": candidate.LoadMetrics.QueuedCount,
}
}
if attemptNo > 0 {
metrics["attempt"] = attemptNo
}