ListModels 列出所有模型及其状态
()
| 277 | |
| 278 | // ListModels 列出所有模型及其状态 |
| 279 | func (m *ModelFallbackManager) ListModels() []map[string]any { |
| 280 | models := make([]map[string]any, 0, len(m.fallbacks)) |
| 281 | |
| 282 | for i, fb := range m.fallbacks { |
| 283 | modelKey := fmt.Sprintf("%s/%s", fb.Config.Provider, fb.Config.Model) |
| 284 | models = append(models, map[string]any{ |
| 285 | "provider": fb.Config.Provider, |
| 286 | "model": fb.Config.Model, |
| 287 | "enabled": fb.Enabled, |
| 288 | "priority": fb.Priority, |
| 289 | "max_retries": fb.MaxRetries, |
| 290 | "is_current": i == m.currentIndex, |
| 291 | "usage_count": m.stats.ModelUsageCount[modelKey], |
| 292 | }) |
| 293 | } |
| 294 | |
| 295 | return models |
| 296 | } |
| 297 | |
| 298 | // ResetStats 重置统计信息 |
| 299 | func (m *ModelFallbackManager) ResetStats() { |